From 14b385cf1c811aec0f44abfbc47f03571ffafbec Mon Sep 17 00:00:00 2001 From: 8cy <50817549+8cy@users.noreply.github.com> Date: Sun, 10 May 2020 03:20:30 -0700 Subject: yes --- TODO | 26 ++++++++ package.json | 1 + public/css/main.css | 5 ++ server.js | 112 ++++++++++++++++--------------- views/error.ejs | 2 +- views/index.ejs | 188 +++++++++++++++++++++++++++++++++++----------------- views/login.ejs | 2 +- views/profile.ejs | 17 ++++- views/signup.ejs | 23 ++++++- 9 files changed, 252 insertions(+), 124 deletions(-) create mode 100644 TODO diff --git a/TODO b/TODO new file mode 100644 index 0000000..026527a --- /dev/null +++ b/TODO @@ -0,0 +1,26 @@ +Final: + Header: + [x] Navigation bar with active links + + Body: + [x] Paragraphs + [x] Headings + [x] Lists + [x] Images + [x] Videos + + Footer: + [x] “created by: “ + [ ] List of sources (maybe just W3Schools) + + Additionally: + [x] Divs + [x] Different fonts and colors (styling through CSS) + [x] Background color + + [x] JavaScript inserted in your HTML + + 3 other new things: + [x] 1: MongoDB + [x] 2: Node.js + [x] 2: JSX \ No newline at end of file diff --git a/package.json b/package.json index 090cbb9..88ce0bd 100644 --- a/package.json +++ b/package.json @@ -32,6 +32,7 @@ "ejs": "^3.1.2", "express": "^4.17.1", "express-session": "^1.17.1", + "formidable": "^1.2.2", "mongoose": "^5.9.12" } } diff --git a/public/css/main.css b/public/css/main.css index 0ff094b..a288d02 100644 --- a/public/css/main.css +++ b/public/css/main.css @@ -198,4 +198,9 @@ a { a:hover { /*color: #EA80FC !important;*/ transition: 0.5s; +} + +#example-video { + box-shadow: 0 19px 38px rgba(0, 0, 0, 0.30), + 0 15px 12px rgba(0, 0, 0, 0.22); } \ No newline at end of file diff --git a/server.js b/server.js index fb68113..848afa0 100644 --- a/server.js +++ b/server.js @@ -2,6 +2,8 @@ const express = require('express'); const path = require('path'); const bcrypt = require('bcrypt'); const session = require('express-session'); +const formidable = require('formidable'); +const fs = require('fs'); //const ejs = require('ejs'); const mongoose = require('mongoose'); const EntryItem = require('./models/entryItem'); @@ -44,79 +46,48 @@ app.get('/', async (req, res) => { //return next(err); } else { const entryItems = EntryItem; - // const entryItems = await EntryItem.find({user: user.name}); - //console.log(await entryItems.find({"type": "purchase"})); - // (await entryItems.find({ username: user.name, "type": "purchase" })).forEach(entryItem => { - // working - // }); - // let carF; - // let sellerF; - // let priceF; - // let dateF; const loop = await EntryItem.find({ "type": "purchase", user: user.username }); - //console.log(user.username) - //console.log(loop) - // (await loop).forEach(entryItem => { - // carF = entryItem.cars; - // sellerF = entryItem.seller; - // priceF = entryItem.price; - // dateF = entryItem.date; - // }); - // let carX; - // let sellerX; - // let priceX; - // let dateX; + const loopCount = await EntryItem.find({ + "type": "purchase", + "user": user.username + }).countDocuments(); + const loop2 = await EntryItem.find({ "type": "sale", "user": user.username }); - // (await loop2).forEach(entryItem => { - // carX = entryItem.cars; - // sellerX = entryItem.seller; - // priceX = entryItem.price; - // dateX = entryItem.date; - // }); - // let carY; - // let sellerY; - // let priceY; - // let dateY; + const loop2Count = await EntryItem.find({ + "type": "sale", + "user": user.username + }).countDocuments(); + const loop3 = await EntryItem.find({ "type": "trade", "user": user.username }); - // (await loop3).forEach(entryItem => { - // carY = entryItem.cars; - // sellerY = entryItem.seller; - // priceY = entryItem.price; - // dateY = entryItem.date; - // }); + const loop3Count = await EntryItem.find({ + "type": "trade", + "user": user.username + }).countDocuments(); + let EntryCount = await EntryItem.countDocuments(); + let UserCount = await User.countDocuments(); return res.render('index', { req: req, User: User, name: user.username, entryItems: entryItems, user: user, - loop: loop, - // carF: carF, - // sellerF: sellerF, - // priceF: priceF, - // dateF: dateF, - + loopCount: loopCount, loop2: loop2, - // carX: carX, - // sellerX: sellerX, - // priceX: priceX, - // dateX: dateX, - + loop2Count: loop2Count, loop3: loop3, - // carY: carY, - // sellerY: sellerY, - // priceY: priceY, - // dateY: dateY, + loop3Count: loop3Count, + EntryCount: EntryCount, + UserCount: UserCount }); // (await loop1).forEach(entryItem => { // }) @@ -181,7 +152,7 @@ app.post('/submitEntry', async (req, res) => { }); } - return res.redirect('/'); + return res.redirect(req.get('referer')); } }); @@ -238,7 +209,7 @@ app.post('/signup', async (req, res) => { return res.render('error'); } else { req.session.userId = user._id; - return res.redirect('/login'); + return res.redirect('/'); } }); } @@ -258,7 +229,7 @@ app.post('/logout', (req, res, next) => { app.get('/logout', (req, res, next) => { if (req.session) { - req.session.destroy((err) => { + req.session.userId.destroy((err) => { if (err) { return res.render('error'); } else { @@ -309,5 +280,36 @@ app.get('/terms', (req, res) => { res.render('terms'); }); +// app.post('/submitPFP', (req, res) => { +// let form = new formidable.IncomingForm(); +// form.parse(req, (err, fields, files) => { +// let oldPath = files.filetoupload.path; +// let newPath = __dirname + files.filetoupload.name; +// fs.rename(oldPath, newPath, (err) => { +// if (err) throw err; +// res.write('File uploaded and moved!'); +// res.end(); +// }) +// }) +// }); + +app.get('/marketplace', (req, res) => { + res.redirect('/') +}) + +app.post('/closeExampleVideo', async (req, res) => { + req.session.exampleVideo = false; + return res.redirect('/'); +}); + +app.post('/openExampleVideo', async (req, res) => { + req.session.exampleVideo = true; + return res.redirect('/'); +}); + +app.get('*', (req, res) => { + res.redirect('/') +}) + app.listen(80); console.log(`Listening on port 80.`); // honestly have no idea why it says port as undefined fix this when u feel like it ) \ No newline at end of file diff --git a/views/error.ejs b/views/error.ejs index b38f681..05344c0 100644 --- a/views/error.ejs +++ b/views/error.ejs @@ -110,7 +110,7 @@ -