From 68e0a9e33a8f08bbc3be12334a1d607b9806ac95 Mon Sep 17 00:00:00 2001 From: C4 Patino Date: Tue, 23 Aug 2022 09:31:58 -0400 Subject: [PATCH] Changed server imports to relative imports --- package-lock.json | 65 +++++++++---------- server/bin/www | 4 +- server/db/models/User.js | 2 +- server/middleware/basicAuth.js | 8 +-- server/middleware/tokenAuth.js | 6 +- server/routes/mail.js | 2 +- server/routes/mail/Get.js | 18 +++-- server/routes/mail/Read.js | 4 +- server/routes/mail/Send.js | 6 +- server/routes/question.js | 2 +- server/routes/question/CreateAnswer.js | 12 ++-- server/routes/question/CreateAnswerComment.js | 12 ++-- server/routes/question/CreateComment.js | 10 +-- server/routes/question/CreateQuestion.js | 8 +-- server/routes/question/DeleteAnswerComment.js | 6 +- server/routes/question/DeleteComment.js | 6 +- server/routes/question/EditAnswer.js | 11 ++-- server/routes/question/EditAnswerAccepted.js | 12 ++-- .../routes/question/EditAnswerCommentVote.js | 8 +-- server/routes/question/EditAnswerVote.js | 10 +-- server/routes/question/EditCommentVote.js | 8 +-- server/routes/question/EditQuestion.js | 34 ++++------ server/routes/question/EditQuestionBody.js | 10 +-- server/routes/question/EditQuestionBounty.js | 10 +-- .../question/EditQuestionStatusClosed.js | 10 +-- .../question/EditQuestionStatusProtected.js | 10 +-- .../question/EditQuestionStatusReopened.js | 10 +-- server/routes/question/EditQuestionVote.js | 12 ++-- .../routes/question/GetAnswerCommentVote.js | 13 ++-- server/routes/question/GetAnswerComments.js | 8 +-- server/routes/question/GetAnswerVote.js | 16 ++--- server/routes/question/GetAnswers.js | 8 +-- server/routes/question/GetCommentVote.js | 15 +++-- server/routes/question/GetComments.js | 8 +-- server/routes/question/GetQuestion.js | 4 +- server/routes/question/GetQuestionVote.js | 16 ++--- server/routes/question/Search.js | 4 +- server/routes/user.js | 4 +- server/routes/user/Answers.js | 10 +-- server/routes/user/Edit.js | 18 ++--- server/routes/user/GetBadges.js | 2 +- server/routes/user/GetUser.js | 10 +-- server/routes/user/Login.js | 6 +- server/routes/user/Logout.js | 2 +- server/routes/user/Questions.js | 6 +- server/routes/user/Register.js | 8 +-- server/routes/user/Remember.js | 2 +- server/routes/user/RequestReset.js | 2 +- server/routes/user/ResetPassword.js | 14 ++-- server/utils/fetchMail.js | 9 +-- server/utils/getData.js | 51 ++++----------- server/utils/question/getAnswer.js | 4 +- server/utils/question/getQuestion.js | 9 +-- server/utils/question/refreshQuestion.js | 9 +-- 54 files changed, 259 insertions(+), 315 deletions(-) diff --git a/package-lock.json b/package-lock.json index f03b82c..e4343a9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,6 @@ } }, "client": { - "name": "qoverflow", "version": "1.0.0", "dependencies": { "@emotion/react": "^11.9.3", @@ -6167,6 +6166,10 @@ "node": ">=8" } }, + "node_modules/client": { + "resolved": "client", + "link": true + }, "node_modules/cliui": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", @@ -16432,10 +16435,6 @@ "teleport": ">=0.2.0" } }, - "node_modules/qoverflow": { - "resolved": "client", - "link": true - }, "node_modules/qs": { "version": "6.10.3", "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", @@ -24920,6 +24919,34 @@ } } }, + "client": { + "version": "file:client", + "requires": { + "@emotion/react": "^11.9.3", + "@emotion/styled": "^11.9.3", + "@mui/icons-material": "^5.8.4", + "@mui/material": "^5.9.1", + "dompurify": "^2.3.10", + "dotenv": "^16.0.1", + "formik": "^2.2.9", + "gh-pages": "^4.0.0", + "javascript-time-ago": "^2.5.6", + "js-cookie": "^3.0.1", + "marked": "^4.0.18", + "react": "^18.2.0", + "react-copy-to-clipboard": "^5.1.0", + "react-gravatar": "^2.6.3", + "react-helmet": "^6.1.0", + "react-markdown": "^8.0.3", + "react-router-dom": "^6.3.0", + "react-scripts": "^5.0.1", + "react-time-ago": "^7.2.1", + "superagent": "^8.0.0", + "superagent-throttle": "^1.0.1", + "universal-cookie": "^4.0.4", + "yup": "^0.32.11" + } + }, "cliui": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", @@ -32163,34 +32190,6 @@ "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", "integrity": "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==" }, - "qoverflow": { - "version": "file:client", - "requires": { - "@emotion/react": "^11.9.3", - "@emotion/styled": "^11.9.3", - "@mui/icons-material": "^5.8.4", - "@mui/material": "^5.9.1", - "dompurify": "^2.3.10", - "dotenv": "^16.0.1", - "formik": "^2.2.9", - "gh-pages": "^4.0.0", - "javascript-time-ago": "^2.5.6", - "js-cookie": "^3.0.1", - "marked": "^4.0.18", - "react": "^18.2.0", - "react-copy-to-clipboard": "^5.1.0", - "react-gravatar": "^2.6.3", - "react-helmet": "^6.1.0", - "react-markdown": "^8.0.3", - "react-router-dom": "^6.3.0", - "react-scripts": "^5.0.1", - "react-time-ago": "^7.2.1", - "superagent": "^8.0.0", - "superagent-throttle": "^1.0.1", - "universal-cookie": "^4.0.4", - "yup": "^0.32.11" - } - }, "qs": { "version": "6.10.3", "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", diff --git a/server/bin/www b/server/bin/www index 88f0fe5..0d0febd 100644 --- a/server/bin/www +++ b/server/bin/www @@ -4,13 +4,13 @@ * Module dependencies. */ -const app = require('server/app'); +const app = require('../app'); const debug = require('debug')('server:server'); const http = require('http'); const mongoose = require('mongoose'); const cron = require('node-cron'); -const { refreshQuestions, refreshUsers } = require('server/utils/cronRefresh'); +const { refreshQuestions, refreshUsers } = require('../utils/cronRefresh'); require('dotenv').config(); diff --git a/server/db/models/User.js b/server/db/models/User.js index 3eb6861..feeb306 100644 --- a/server/db/models/User.js +++ b/server/db/models/User.js @@ -1,5 +1,5 @@ const mongoose = require('mongoose'); -const calculateUserBadges = require('server/utils/badges/userBadges'); +const calculateUserBadges = require('../../utils/badges/userBadges'); const User = mongoose.Schema( { diff --git a/server/middleware/basicAuth.js b/server/middleware/basicAuth.js index 68b9e3f..757a9f0 100644 --- a/server/middleware/basicAuth.js +++ b/server/middleware/basicAuth.js @@ -1,7 +1,7 @@ -const deriveKeyFromPassword = require('server/utils/auth'); -const createRequest = require('server/utils/api'); -const config = require('server/config.json'); -const User = require('server/db/models/User'); +const deriveKeyFromPassword = require('../utils/auth'); +const createRequest = require('../utils/api'); +const config = require('../config.json'); +const User = require('../db/models/User'); async function basicAuth(req, res, next) { const authHeader = req.get('Authorization'); diff --git a/server/middleware/tokenAuth.js b/server/middleware/tokenAuth.js index 2a3acd6..50f4cec 100644 --- a/server/middleware/tokenAuth.js +++ b/server/middleware/tokenAuth.js @@ -1,6 +1,6 @@ -const Token = require('server/db/models/Token'); -const User = require('server/db/models/User'); -const config = require('server/config.json'); +const Token = require('../db/models/Token'); +const User = require('../db/models/User'); +const config = require('../config.json'); async function tokenAuth(req, res, next) { const authHeader = req.get('Authorization'); diff --git a/server/routes/mail.js b/server/routes/mail.js index faa87ef..7febd7a 100644 --- a/server/routes/mail.js +++ b/server/routes/mail.js @@ -1,7 +1,7 @@ const express = require('express'); const router = express.Router(); -const tokenAuth = require('server/middleware/tokenAuth'); +const tokenAuth = require('../middleware/tokenAuth'); const GetMail = require('./mail/Get'); const SendMail = require('./mail/Send'); diff --git a/server/routes/mail/Get.js b/server/routes/mail/Get.js index 861c56f..9718cd8 100644 --- a/server/routes/mail/Get.js +++ b/server/routes/mail/Get.js @@ -1,21 +1,19 @@ -const config = require('server/config.json'); -const Mail = require('server/db/models/Mail'); -const { getAllMail } = require('server/utils/getData'); +const config = require('../../config.json'); +const Mail = require('../../db/models/Mail'); +const { getAllMail } = require('../../utils/getData'); async function Get(req, res) { const { lastMailFetch, username } = req.user; // Fetch mail if expired if (Number(lastMailFetch) + config.mailExpires < Date.now()) { - - await getAllMail({ username }) + await getAllMail({ username }); } - const messages = await Mail.find({ receiver: username }).sort({ - createdAt: 'desc', - }); + const messages = await Mail.find({ receiver: username }).sort({ + createdAt: 'desc', + }); - return res.send({ messages }); - + return res.send({ messages }); } module.exports = Get; diff --git a/server/routes/mail/Read.js b/server/routes/mail/Read.js index c2003a3..6dc271b 100644 --- a/server/routes/mail/Read.js +++ b/server/routes/mail/Read.js @@ -1,5 +1,5 @@ -const Mail = require('server/db/models/Mail'); -const config = require('server/config.json'); +const Mail = require('../../db/models/Mail'); +const config = require('../../config.json'); async function Read(req, res) { const { mail_id } = req.params; diff --git a/server/routes/mail/Send.js b/server/routes/mail/Send.js index e2b4a63..692390d 100644 --- a/server/routes/mail/Send.js +++ b/server/routes/mail/Send.js @@ -1,7 +1,7 @@ -const Mail = require('server/db/models/Mail'); +const Mail = require('../../db/models/Mail'); const User = require('../../db/models/User'); -const config = require('server/config.json'); -const createRequest = require('server/utils/api'); +const config = require('../../config.json'); +const createRequest = require('../../utils/api'); async function Send(req, res) { const { username } = req.user; diff --git a/server/routes/question.js b/server/routes/question.js index 81b2cf7..5eb715d 100644 --- a/server/routes/question.js +++ b/server/routes/question.js @@ -1,7 +1,7 @@ const express = require('express'); const router = express.Router(); -const tokenAuth = require('server/middleware/tokenAuth'); +const tokenAuth = require('../middleware/tokenAuth'); const CreateAnswer = require('./question/CreateAnswer'); const CreateAnswerComment = require('./question/CreateAnswerComment'); diff --git a/server/routes/question/CreateAnswer.js b/server/routes/question/CreateAnswer.js index 0c44c4b..255b6ad 100644 --- a/server/routes/question/CreateAnswer.js +++ b/server/routes/question/CreateAnswer.js @@ -1,9 +1,9 @@ -const config = require('server/config.json'); -const Answer = require('server/db/models/Answer'); -const User = require('server/db/models/User'); -const { getQuestion } = require('server/utils/question'); -const getUserLevel = require('server/utils/getUserLevel'); -const createRequest = require('server/utils/api'); +const config = require('../../config.json'); +const Answer = require('../../db/models/Answer'); +const User = require('../../db/models/User'); +const { getQuestion } = require('../../utils/question'); +const getUserLevel = require('../../utils/getUserLevel'); +const createRequest = require('../../utils/api'); async function CreateAnswer(req, res) { const { user } = req; diff --git a/server/routes/question/CreateAnswerComment.js b/server/routes/question/CreateAnswerComment.js index 1dd4a8a..6aed019 100644 --- a/server/routes/question/CreateAnswerComment.js +++ b/server/routes/question/CreateAnswerComment.js @@ -1,9 +1,9 @@ -const config = require('server/config.json'); -const Answer = require('server/db/models/Answer'); -const Comment = require('server/db/models/Comment'); -const { getQuestion } = require('server/utils/question'); -const createRequest = require('server/utils/api'); -const getUserLevel = require('server/utils/getUserLevel'); +const config = require('../../config.json'); +const Answer = require('../../db/models/Answer'); +const Comment = require('../../db/models/Comment'); +const { getQuestion } = require('../../utils/question'); +const createRequest = require('../../utils/api'); +const getUserLevel = require('../../utils/getUserLevel'); async function CreateAnswerComment(req, res) { const user = req.user; diff --git a/server/routes/question/CreateComment.js b/server/routes/question/CreateComment.js index b2cf8bb..6a1937a 100644 --- a/server/routes/question/CreateComment.js +++ b/server/routes/question/CreateComment.js @@ -1,8 +1,8 @@ -const config = require('server/config.json'); -const Comment = require('server/db/models/Comment'); -const { getQuestion, refreshQuestion } = require('server/utils/question'); -const createRequest = require('server/utils/api'); -const getUserLevel = require('server/utils/getUserLevel'); +const config = require('../../config.json'); +const Comment = require('../../db/models/Comment'); +const { getQuestion, refreshQuestion } = require('../../utils/question'); +const createRequest = require('../../utils/api'); +const getUserLevel = require('../../utils/getUserLevel'); async function CreateComment(req, res) { const { user } = req; diff --git a/server/routes/question/CreateQuestion.js b/server/routes/question/CreateQuestion.js index decd845..54b82e6 100644 --- a/server/routes/question/CreateQuestion.js +++ b/server/routes/question/CreateQuestion.js @@ -1,7 +1,7 @@ -const config = require('server/config.json'); -const Question = require('server/db/models/Question'); -const User = require('server/db/models/User'); -const createRequest = require('server/utils/api'); +const config = require('../../config.json'); +const Question = require('../../db/models/Question'); +const User = require('../../db/models/User'); +const createRequest = require('../../utils/api'); async function CreateQuestion(req, res) { const user = req.user; diff --git a/server/routes/question/DeleteAnswerComment.js b/server/routes/question/DeleteAnswerComment.js index 7c8e9c4..7627f5e 100644 --- a/server/routes/question/DeleteAnswerComment.js +++ b/server/routes/question/DeleteAnswerComment.js @@ -1,6 +1,6 @@ -const Comment = require('server/db/models/Comment'); -const config = require('server/config.json'); -const createRequest = require('server/utils/api'); +const Comment = require('../../db/models/Comment'); +const config = require('../../config.json'); +const createRequest = require('../../utils/api'); async function DeleteAnswerComment(req, res) { const { user } = req; diff --git a/server/routes/question/DeleteComment.js b/server/routes/question/DeleteComment.js index 0f805cb..47730fc 100644 --- a/server/routes/question/DeleteComment.js +++ b/server/routes/question/DeleteComment.js @@ -1,6 +1,6 @@ -const Comment = require('server/db/models/Comment'); -const config = require('server/config.json'); -const createRequest = require('server/utils/api'); +const Comment = require('../../db/models/Comment'); +const config = require('../../config.json'); +const createRequest = require('../../utils/api'); async function DeleteComment(req, res) { const { user } = req; diff --git a/server/routes/question/EditAnswer.js b/server/routes/question/EditAnswer.js index dfb0575..48356e4 100644 --- a/server/routes/question/EditAnswer.js +++ b/server/routes/question/EditAnswer.js @@ -1,6 +1,6 @@ -const Answer = require('server/db/models/Answer'); -const config = require('server/config.json'); -const createRequest = require('server/utils/api'); +const Answer = require('../../db/models/Answer'); +const config = require('../../config.json'); +const createRequest = require('../../utils/api'); async function EditAnswer(req, res) { const { user } = req; @@ -10,10 +10,7 @@ async function EditAnswer(req, res) { if (!text) return res.status(400).send(config.errorIncomplete); // Retrieve latest question data - const answerPull = await createRequest( - 'get', - `/questions/${question_id}/answers/${answer_id}` - ); + const answerPull = await createRequest('get', `/questions/${question_id}/answers/${answer_id}`); if (!answerPull.success) return res.status(500).send(config.errorGeneric); diff --git a/server/routes/question/EditAnswerAccepted.js b/server/routes/question/EditAnswerAccepted.js index 70077a1..656bd20 100644 --- a/server/routes/question/EditAnswerAccepted.js +++ b/server/routes/question/EditAnswerAccepted.js @@ -1,9 +1,9 @@ -const config = require('server/config.json'); -const Answer = require('server/db/models/Answer'); -const Question = require('server/db/models/Question'); -const User = require('server/db/models/User'); -const { getQuestion, refreshQuestion } = require('server/utils/question'); -const createRequest = require('server/utils/api'); +const config = require('../../config.json'); +const Answer = require('../../db/models/Answer'); +const Question = require('../../db/models/Question'); +const User = require('../../db/models/User'); +const { getQuestion, refreshQuestion } = require('../../utils/question'); +const createRequest = require('../../utils/api'); async function EditAnswerAccepted(req, res) { const { user } = req; diff --git a/server/routes/question/EditAnswerCommentVote.js b/server/routes/question/EditAnswerCommentVote.js index 21fa1c6..e3174a1 100644 --- a/server/routes/question/EditAnswerCommentVote.js +++ b/server/routes/question/EditAnswerCommentVote.js @@ -1,7 +1,7 @@ -const createRequest = require('server/utils/api'); -const config = require('server/config.json'); -const getUserLevel = require('server/utils/getUserLevel'); -const Vote = require('server/db/models/Vote'); +const createRequest = require('../../utils/api'); +const config = require('../../config.json'); +const getUserLevel = require('../../utils/getUserLevel'); +const Vote = require('../../db/models/Vote'); async function EditAnswerCommentVote(req, res) { const { user } = req; diff --git a/server/routes/question/EditAnswerVote.js b/server/routes/question/EditAnswerVote.js index 11179b5..6c5a5dc 100644 --- a/server/routes/question/EditAnswerVote.js +++ b/server/routes/question/EditAnswerVote.js @@ -1,8 +1,8 @@ -const createRequest = require('server/utils/api'); -const config = require('server/config.json'); -const getUserLevel = require('server/utils/getUserLevel'); -const Vote = require('server/db/models/Vote'); -const Answer = require('server/db/models/Answer'); +const createRequest = require('../../utils/api'); +const config = require('../../config.json'); +const getUserLevel = require('../../utils/getUserLevel'); +const Vote = require('../../db/models/Vote'); +const Answer = require('../../db/models/Answer'); async function EditAnswerVote(req, res) { const { user } = req; diff --git a/server/routes/question/EditCommentVote.js b/server/routes/question/EditCommentVote.js index cd410de..73169ad 100644 --- a/server/routes/question/EditCommentVote.js +++ b/server/routes/question/EditCommentVote.js @@ -1,7 +1,7 @@ -const createRequest = require('server/utils/api'); -const config = require('server/config.json'); -const getUserLevel = require('server/utils/getUserLevel'); -const Vote = require('server/db/models/Vote'); +const createRequest = require('../../utils/api'); +const config = require('../../config.json'); +const getUserLevel = require('../../utils/getUserLevel'); +const Vote = require('../../db/models/Vote'); async function EditAnswerVote(req, res) { const { user } = req; diff --git a/server/routes/question/EditQuestion.js b/server/routes/question/EditQuestion.js index 355de9a..0cb5d7c 100644 --- a/server/routes/question/EditQuestion.js +++ b/server/routes/question/EditQuestion.js @@ -1,26 +1,20 @@ -const config = require('server/config.json'); -const { getQuestion, refreshQuestion } = require('server/utils/question'); -const createRequest = require('server/utils/api'); - +const config = require('../../config.json'); +const { getQuestion, refreshQuestion } = require('../../utils/question'); +const createRequest = require('../../utils/api'); async function EditQuestion(req, res) { const { user } = req; const { text } = req.body; - const {views} = req.body; + const { views } = req.body; const { question_id } = req.params; - - - if(views){ - const { success } = await createRequest( - 'patch', - `/questions/${question_id}`, - { views } - ); + + if (views) { + const { success } = await createRequest('patch', `/questions/${question_id}`, { views }); if (!success) return res.status(500).send(config.errorGeneric); - + await refreshQuestion(question_id); - + return res.sendStatus(200); } if (!text) return res.status(400).send(config.errorIncomplete); @@ -31,16 +25,12 @@ async function EditQuestion(req, res) { if (question.creator !== user.username) return res.status(403).send(config.errorForbidden); // Patch question with BDPA server - const { success } = await createRequest( - 'patch', - `/questions/${question_id}`, - { text } - ); + const { success } = await createRequest('patch', `/questions/${question_id}`, { text }); if (!success) return res.status(500).send(config.errorGeneric); - + await refreshQuestion(question_id); - + return res.sendStatus(200); } diff --git a/server/routes/question/EditQuestionBody.js b/server/routes/question/EditQuestionBody.js index 6410b78..c981bcb 100644 --- a/server/routes/question/EditQuestionBody.js +++ b/server/routes/question/EditQuestionBody.js @@ -1,8 +1,8 @@ -const config = require('server/config.json'); -const Question = require('server/db/models/Question'); -const { getQuestion, refreshQuestion } = require('server/utils/question'); -const createRequest = require('server/utils/api'); -const getUserLevel = require('server/utils/getUserLevel'); +const config = require('../../config.json'); +const Question = require('../../db/models/Question'); +const { getQuestion, refreshQuestion } = require('../../utils/question'); +const createRequest = require('../../utils/api'); +const getUserLevel = require('../../utils/getUserLevel'); async function EditQuestionStatusClosed(req, res) { const { user } = req; diff --git a/server/routes/question/EditQuestionBounty.js b/server/routes/question/EditQuestionBounty.js index b5d6ba2..8d83b7d 100644 --- a/server/routes/question/EditQuestionBounty.js +++ b/server/routes/question/EditQuestionBounty.js @@ -1,8 +1,8 @@ -const Question = require('server/db/models/Question'); -const User = require('server/db/models/User'); -const createRequest = require('server/utils/api'); -const getUserLevel = require('server/utils/getUserLevel'); -const config = require('server/config.json'); +const Question = require('../../db/models/Question'); +const User = require('../../db/models/User'); +const createRequest = require('../../utils/api'); +const getUserLevel = require('../../utils/getUserLevel'); +const config = require('../../config.json'); async function EditQuestionBounty(req, res) { const { user } = req.user; diff --git a/server/routes/question/EditQuestionStatusClosed.js b/server/routes/question/EditQuestionStatusClosed.js index 52deaff..87e436c 100644 --- a/server/routes/question/EditQuestionStatusClosed.js +++ b/server/routes/question/EditQuestionStatusClosed.js @@ -1,8 +1,8 @@ -const config = require('server/config.json'); -const Question = require('server/db/models/Question'); -const { getQuestion, refreshQuestion } = require('server/utils/question'); -const createRequest = require('server/utils/api'); -const getUserLevel = require('server/utils/getUserLevel'); +const config = require('../../config.json'); +const Question = require('../../db/models/Question'); +const { getQuestion, refreshQuestion } = require('../../utils/question'); +const createRequest = require('../../utils/api'); +const getUserLevel = require('../../utils/getUserLevel'); async function EditQuestionStatusClosed(req, res) { const { user } = req; diff --git a/server/routes/question/EditQuestionStatusProtected.js b/server/routes/question/EditQuestionStatusProtected.js index f7589b2..4aab480 100644 --- a/server/routes/question/EditQuestionStatusProtected.js +++ b/server/routes/question/EditQuestionStatusProtected.js @@ -1,8 +1,8 @@ -const config = require('server/config.json'); -const Question = require('server/db/models/Question'); -const { getQuestion, refreshQuestion } = require('server/utils/question'); -const getUserLevel = require('server/utils/getUserLevel'); -const createRequest = require('server/utils/api'); +const config = require('../../config.json'); +const Question = require('../../db/models/Question'); +const { getQuestion, refreshQuestion } = require('../../utils/question'); +const getUserLevel = require('../../utils/getUserLevel'); +const createRequest = require('../../utils/api'); async function EditQuestionStatusProtected(req, res) { const { user } = req; diff --git a/server/routes/question/EditQuestionStatusReopened.js b/server/routes/question/EditQuestionStatusReopened.js index 0d54e9d..d26ebb3 100644 --- a/server/routes/question/EditQuestionStatusReopened.js +++ b/server/routes/question/EditQuestionStatusReopened.js @@ -1,8 +1,8 @@ -const config = require('server/config.json'); -const Question = require('server/db/models/Question'); -const { getQuestion } = require('server/utils/question'); -const getUserLevel = require('server/utils/getUserLevel'); -const createRequest = require('server/utils/api'); +const config = require('../../config.json'); +const Question = require('../../db/models/Question'); +const { getQuestion } = require('../../utils/question'); +const getUserLevel = require('../../utils/getUserLevel'); +const createRequest = require('../../utils/api'); async function EditQuestionStatusReopened(req, res) { const { user } = req; diff --git a/server/routes/question/EditQuestionVote.js b/server/routes/question/EditQuestionVote.js index 2410484..dc6e982 100644 --- a/server/routes/question/EditQuestionVote.js +++ b/server/routes/question/EditQuestionVote.js @@ -1,9 +1,9 @@ -const config = require('server/config.json'); -const User = require('server/db/models/User'); -const Vote = require('server/db/models/Vote'); -const Question = require('server/db/models/Question'); -const createRequest = require('server/utils/api'); -const getUserLevel = require('server/utils/getUserLevel'); +const config = require('../../config.json'); +const User = require('../../db/models/User'); +const Vote = require('../../db/models/Vote'); +const Question = require('../../db/models/Question'); +const createRequest = require('../../utils/api'); +const getUserLevel = require('../../utils/getUserLevel'); async function upvote(res, user) {} diff --git a/server/routes/question/GetAnswerCommentVote.js b/server/routes/question/GetAnswerCommentVote.js index 0d64bab..fb4099f 100644 --- a/server/routes/question/GetAnswerCommentVote.js +++ b/server/routes/question/GetAnswerCommentVote.js @@ -1,7 +1,7 @@ -const config = require('server/config.json'); -const createRequest = require('server/utils/api'); -const getUserLevel = require('server/utils/getUserLevel'); -const Vote = require('server/db/models/Vote'); +const config = require('../../config.json'); +const createRequest = require('../../utils/api'); +const getUserLevel = require('../../utils/getUserLevel'); +const Vote = require('../../db/models/Vote'); async function GetAnswerCommentVote(req, res) { const { user } = req; @@ -19,8 +19,9 @@ async function GetAnswerCommentVote(req, res) { parent_id: comment_id, creator: user.username, }); - } catch { return res.status(400).send(config.errorNotFound); } - + } catch { + return res.status(400).send(config.errorNotFound); + } if (cachedVote) return res.send({ vote: cachedVote.status }); diff --git a/server/routes/question/GetAnswerComments.js b/server/routes/question/GetAnswerComments.js index 3be636b..ecdc1e5 100644 --- a/server/routes/question/GetAnswerComments.js +++ b/server/routes/question/GetAnswerComments.js @@ -1,7 +1,7 @@ -const config = require('server/config.json'); -const Comment = require('server/db/models/Comment'); -const { getAllComments } = require('server/utils/getData'); -const { getAnswer } = require('server/utils/question'); +const config = require('../../config.json'); +const Comment = require('../../db/models/Comment'); +const { getAllComments } = require('../../utils/getData'); +const { getAnswer } = require('../../utils/question'); async function GetAnswerComments(req, res) { const { question_id, answer_id } = req.params; diff --git a/server/routes/question/GetAnswerVote.js b/server/routes/question/GetAnswerVote.js index 4814760..ff95419 100644 --- a/server/routes/question/GetAnswerVote.js +++ b/server/routes/question/GetAnswerVote.js @@ -1,15 +1,14 @@ -const config = require('server/config.json'); -const createRequest = require('server/utils/api'); -const getUserLevel = require('server/utils/getUserLevel'); -const Vote = require('server/db/models/Vote'); +const config = require('../../config.json'); +const createRequest = require('../../utils/api'); +const getUserLevel = require('../../utils/getUserLevel'); +const Vote = require('../../db/models/Vote'); async function GetAnswerVote(req, res) { const { user } = req; const { question_id, answer_id } = req.params; // Verify user has required level - if (getUserLevel(user.points) < 2) - return res.send({ vote: null }); + if (getUserLevel(user.points) < 2) return res.send({ vote: null }); let cachedVote; try { @@ -18,8 +17,9 @@ async function GetAnswerVote(req, res) { parent_id: answer_id, creator: user.username, }); - } catch { return res.status(400).send(config.errorNotFound); } - + } catch { + return res.status(400).send(config.errorNotFound); + } if (cachedVote) return res.send({ vote: cachedVote.status }); diff --git a/server/routes/question/GetAnswers.js b/server/routes/question/GetAnswers.js index 3ce43c2..13f6e62 100644 --- a/server/routes/question/GetAnswers.js +++ b/server/routes/question/GetAnswers.js @@ -1,7 +1,7 @@ -const config = require('server/config.json'); -const Answer = require('server/db/models/Answer'); -const { getAllAnswers } = require('server/utils/getData'); -const { getQuestion } = require('server/utils/question'); +const config = require('../../config.json'); +const Answer = require('../../db/models/Answer'); +const { getAllAnswers } = require('../../utils/getData'); +const { getQuestion } = require('../../utils/question'); async function GetAnswers(req, res) { const { question_id } = req.params; diff --git a/server/routes/question/GetCommentVote.js b/server/routes/question/GetCommentVote.js index 33191cd..1ab7a7b 100644 --- a/server/routes/question/GetCommentVote.js +++ b/server/routes/question/GetCommentVote.js @@ -1,15 +1,14 @@ -const config = require('server/config.json'); -const createRequest = require('server/utils/api'); -const getUserLevel = require('server/utils/getUserLevel'); -const Vote = require('server/db/models/Vote'); +const config = require('../../config.json'); +const createRequest = require('../../utils/api'); +const getUserLevel = require('../../utils/getUserLevel'); +const Vote = require('../../db/models/Vote'); async function GetCommentVote(req, res) { const { user } = req; const { question_id, comment_id } = req.params; // Verify user has level required to vote - if (getUserLevel(user.points) < 2) - return res.send({ vote: null }); + if (getUserLevel(user.points) < 2) return res.send({ vote: null }); let cachedVote; try { @@ -18,7 +17,9 @@ async function GetCommentVote(req, res) { parent_id: comment_id, creator: user.username, }); - } catch { return res.status(400).send(config.errorNotFound); } + } catch { + return res.status(400).send(config.errorNotFound); + } if (cachedVote) return res.send({ vote: cachedVote.status }); diff --git a/server/routes/question/GetComments.js b/server/routes/question/GetComments.js index 435a835..63670a9 100644 --- a/server/routes/question/GetComments.js +++ b/server/routes/question/GetComments.js @@ -1,7 +1,7 @@ -const config = require('server/config.json'); -const Comment = require('server/db/models/Comment'); -const { getAllComments } = require('server/utils/getData'); -const { getQuestion } = require('server/utils/question'); +const config = require('../../config.json'); +const Comment = require('../../db/models/Comment'); +const { getAllComments } = require('../../utils/getData'); +const { getQuestion } = require('../../utils/question'); async function GetComments(req, res) { const { question_id } = req.params; diff --git a/server/routes/question/GetQuestion.js b/server/routes/question/GetQuestion.js index 8919ad1..fd10f45 100644 --- a/server/routes/question/GetQuestion.js +++ b/server/routes/question/GetQuestion.js @@ -1,5 +1,5 @@ -const config = require('server/config.json'); -const { getQuestion } = require('server/utils/question'); +const config = require('../../config.json'); +const { getQuestion } = require('../../utils/question'); async function GetQuestion(req, res) { const { question_id } = req.params; diff --git a/server/routes/question/GetQuestionVote.js b/server/routes/question/GetQuestionVote.js index b3cb843..94a241e 100644 --- a/server/routes/question/GetQuestionVote.js +++ b/server/routes/question/GetQuestionVote.js @@ -1,15 +1,14 @@ -const config = require('server/config.json'); -const createRequest = require('server/utils/api'); -const getUserLevel = require('server/utils/getUserLevel'); -const Vote = require('server/db/models/Vote'); +const config = require('../../config.json'); +const createRequest = require('../../utils/api'); +const getUserLevel = require('../../utils/getUserLevel'); +const Vote = require('../../db/models/Vote'); async function GetQuestionVote(req, res) { const { user } = req; const { question_id } = req.params; // Verify user has level required to vote - if (getUserLevel(user.points) < 2) - return res.send({ vote: null }); + if (getUserLevel(user.points) < 2) return res.send({ vote: null }); let cachedVote; try { @@ -18,8 +17,9 @@ async function GetQuestionVote(req, res) { parent_id: question_id, creator: user.username, }); - } catch { return res.status(400).send(config.errorNotFound); } - + } catch { + return res.status(400).send(config.errorNotFound); + } if (cachedVote) return res.send({ vote: cachedVote.status }); diff --git a/server/routes/question/Search.js b/server/routes/question/Search.js index eb5311a..014bd43 100644 --- a/server/routes/question/Search.js +++ b/server/routes/question/Search.js @@ -1,6 +1,6 @@ -const config = require('server/config.json'); +const config = require('../../config.json'); -const Question = require('server/db/models/Question'); +const Question = require('../../db/models/Question'); async function Search(req, res) { const { creator, title, text, tags, createdAt, sort } = req.query; diff --git a/server/routes/user.js b/server/routes/user.js index eb42caa..ac64cd5 100644 --- a/server/routes/user.js +++ b/server/routes/user.js @@ -1,8 +1,8 @@ const express = require('express'); const router = express.Router(); -const basicAuth = require('server/middleware/basicAuth'); -const tokenAuth = require('server/middleware/tokenAuth'); +const basicAuth = require('../middleware/basicAuth'); +const tokenAuth = require('../middleware/tokenAuth'); const Answers = require('./user/Answers'); const GetBadges = require('./user/GetBadges'); diff --git a/server/routes/user/Answers.js b/server/routes/user/Answers.js index 61ec217..8a42c21 100644 --- a/server/routes/user/Answers.js +++ b/server/routes/user/Answers.js @@ -1,9 +1,11 @@ -const config = require('server/config.json'); -const Answer = require('server/db/models/Answer'); -const { getAllAnswers } = require('server/utils/getData'); +const config = require('../../config.json'); +const Answer = require('../../db/models/Answer'); +const { getAllAnswers } = require('../../utils/getData'); async function Answers(req, res) { - const { user: { lastAnswerFetch, username } } = req; + const { + user: { lastAnswerFetch, username }, + } = req; if (Number(lastAnswerFetch) + config.answerExpires < Date.now()) { const answers = await getAllAnswers({ username }); diff --git a/server/routes/user/Edit.js b/server/routes/user/Edit.js index 8c0b833..aaac23a 100644 --- a/server/routes/user/Edit.js +++ b/server/routes/user/Edit.js @@ -1,7 +1,7 @@ -const createRequest = require('server/utils/api'); -const deriveKeyFromPassword = require('server/utils/auth'); -const User = require('server/db/models/User'); -const config = require('server/config.json'); +const createRequest = require('../../utils/api'); +const deriveKeyFromPassword = require('../../utils/auth'); +const User = require('../../db/models/User'); +const config = require('../../config.json'); async function Edit(req, res) { const { user } = req; @@ -14,17 +14,11 @@ async function Edit(req, res) { userBody = { ...userBody, salt, key }; } - const { success } = await createRequest( - 'patch', - `/users/${user.username}`, - userBody - ); + const { success } = await createRequest('patch', `/users/${user.username}`, userBody); await User.findOneAndDelete({ username: user.username }); - return success - ? res.sendStatus(200) - : res.status(500).send(config.errorGeneric); + return success ? res.sendStatus(200) : res.status(500).send(config.errorGeneric); } module.exports = Edit; diff --git a/server/routes/user/GetBadges.js b/server/routes/user/GetBadges.js index fc83dd4..4d92b39 100644 --- a/server/routes/user/GetBadges.js +++ b/server/routes/user/GetBadges.js @@ -1,4 +1,4 @@ -const Badge = require('server/db/models/Badge'); +const Badge = require('../../db/models/Badge'); async function GetBadges(req, res) { const { user } = req; diff --git a/server/routes/user/GetUser.js b/server/routes/user/GetUser.js index 9e0b720..6368688 100644 --- a/server/routes/user/GetUser.js +++ b/server/routes/user/GetUser.js @@ -1,8 +1,8 @@ -const createRequest = require('server/utils/api'); -const config = require('server/config.json'); -const User = require('server/db/models/User'); -const getUserLevel = require('server/utils/getUserLevel'); -const Badge = require('server/db/models/Badge'); +const createRequest = require('../../utils/api'); +const config = require('../../config.json'); +const User = require('../../db/models/User'); +const getUserLevel = require('../../utils/getUserLevel'); +const Badge = require('../../db/models/Badge'); async function GetUser(req, res) { const { username } = req.params; diff --git a/server/routes/user/Login.js b/server/routes/user/Login.js index 8b40d9f..2c5c06e 100644 --- a/server/routes/user/Login.js +++ b/server/routes/user/Login.js @@ -1,9 +1,9 @@ const mongoose = require('mongoose'); const jwt = require('jsonwebtoken'); -const Token = require('server/db/models/Token'); -const Badge = require('server/db/models/Badge'); -const getUserLevel = require('server/utils/getUserLevel'); +const Token = require('../../db/models/Token'); +const Badge = require('../../db/models/Badge'); +const getUserLevel = require('../../utils/getUserLevel'); async function Login(req, res) { const { user } = req; diff --git a/server/routes/user/Logout.js b/server/routes/user/Logout.js index 1ec5b7e..f4b0f99 100644 --- a/server/routes/user/Logout.js +++ b/server/routes/user/Logout.js @@ -1,4 +1,4 @@ -const Token = require('server/db/models/Token'); +const Token = require('../../db/models/Token'); async function Logout(req, res) { const { user } = req; diff --git a/server/routes/user/Questions.js b/server/routes/user/Questions.js index c20695f..f23a7e1 100644 --- a/server/routes/user/Questions.js +++ b/server/routes/user/Questions.js @@ -1,7 +1,9 @@ -const Question = require('server/db/models/Question'); +const Question = require('../../db/models/Question'); async function Questions(req, res) { - const { user: { username } } = req; + const { + user: { username }, + } = req; const cachedQuestions = await Question.find({ creator: username, diff --git a/server/routes/user/Register.js b/server/routes/user/Register.js index a696efd..fb7bf94 100644 --- a/server/routes/user/Register.js +++ b/server/routes/user/Register.js @@ -1,7 +1,7 @@ -const createRequest = require('server/utils/api'); -const deriveKeyFromPassword = require('server/utils/auth'); -const config = require('server/config.json'); -const User = require('server/db/models/User'); +const createRequest = require('../../utils/api'); +const deriveKeyFromPassword = require('../../utils/auth'); +const config = require('../../config.json'); +const User = require('../../db/models/User'); async function Register(req, res) { const { username, email, password } = req.body; diff --git a/server/routes/user/Remember.js b/server/routes/user/Remember.js index 8507fed..49a4a79 100644 --- a/server/routes/user/Remember.js +++ b/server/routes/user/Remember.js @@ -1,4 +1,4 @@ -const getUserLevel = require('server/utils/getUserLevel'); +const getUserLevel = require('../../utils/getUserLevel'); const Badge = require('../../db/models/Badge'); async function Remember(req, res) { diff --git a/server/routes/user/RequestReset.js b/server/routes/user/RequestReset.js index 70568b4..165880f 100644 --- a/server/routes/user/RequestReset.js +++ b/server/routes/user/RequestReset.js @@ -1,4 +1,4 @@ -const ResetRequest = require('server/db/models/ResetRequest'); +const ResetRequest = require('../../db/models/ResetRequest'); async function RequestReset(req, res) { const { username } = req.body; diff --git a/server/routes/user/ResetPassword.js b/server/routes/user/ResetPassword.js index 15fb10f..db0a3e8 100644 --- a/server/routes/user/ResetPassword.js +++ b/server/routes/user/ResetPassword.js @@ -1,8 +1,8 @@ -const ResetRequest = require('server/db/models/ResetRequest'); -const User = require('server/db/models/User'); -const createRequest = require('server/utils/api'); -const deriveKeyFromPassword = require('server/utils/auth'); -const config = require('server/config.json'); +const ResetRequest = require('../../db/models/ResetRequest'); +const User = require('../../db/models/User'); +const createRequest = require('../../utils/api'); +const deriveKeyFromPassword = require('../../utils/auth'); +const config = require('../../config.json'); async function RequestReset(req, res) { const { password } = req.body; @@ -23,9 +23,7 @@ async function RequestReset(req, res) { await User.findOneAndDelete({ username: request.user }); - return success - ? res.sendStatus(200) - : res.status(500).send(config.errorGeneric); + return success ? res.sendStatus(200) : res.status(500).send(config.errorGeneric); } module.exports = RequestReset; diff --git a/server/utils/fetchMail.js b/server/utils/fetchMail.js index 94ce380..8f5a530 100644 --- a/server/utils/fetchMail.js +++ b/server/utils/fetchMail.js @@ -1,14 +1,9 @@ const createRequest = require('./api'); -const config = require('server/config.json'); +const config = require('../config.json'); const defaultAcc = { success: true, requests: [] }; -async function fetchMail( - url, - recentTimestamp = 0, - acc = defaultAcc, - after = '' -) { +async function fetchMail(url, recentTimestamp = 0, acc = defaultAcc, after = '') { const request = await createRequest('get', url, { after }); if (!request.success) return config.errorGeneric; diff --git a/server/utils/getData.js b/server/utils/getData.js index f8fa6a0..a91b125 100644 --- a/server/utils/getData.js +++ b/server/utils/getData.js @@ -1,9 +1,9 @@ -const Answer = require('server/db/models/Answer'); -const Comment = require('server/db/models/Comment'); -const Mail = require('server/db/models/Mail'); -const Question = require('server/db/models/Question'); -const User = require('server/db/models/User'); -const fetchData = require('server/utils/fetchData'); +const Answer = require('../db/models/Answer'); +const Comment = require('../db/models/Comment'); +const Mail = require('../db/models/Mail'); +const Question = require('../db/models/Question'); +const User = require('../db/models/User'); +const fetchData = require('../utils/fetchData'); async function getAllData(Model, url, id, dataName) { console.log(`[INFO]: Refreshing ${dataName} database.`); @@ -13,26 +13,15 @@ async function getAllData(Model, url, id, dataName) { id: item[id], })); - for (const item of data) - await Model.findByIdAndUpdate(item[id], item, { upsert: true }); + for (const item of data) await Model.findByIdAndUpdate(item[id], item, { upsert: true }); return data; } async function getAllAnswers({ question_id, username }) { if (question_id) - return getAllData( - Answer, - `/questions/${question_id}/answers`, - 'answer_id', - 'answers' - ); + return getAllData(Answer, `/questions/${question_id}/answers`, 'answer_id', 'answers'); else if (username) - return getAllData( - Answer, - `/users/${username}/answers`, - 'answer_id', - 'answers' - ); + return getAllData(Answer, `/users/${username}/answers`, 'answer_id', 'answers'); } async function getAllComments({ answer_id, question_id }) { @@ -43,13 +32,7 @@ async function getAllComments({ answer_id, question_id }) { 'comment_id', 'comments' ); - else - return getAllData( - Comment, - `/questions/${question_id}/comments`, - 'comment_id', - 'comments' - ); + else return getAllData(Comment, `/questions/${question_id}/comments`, 'comment_id', 'comments'); } async function getAllMail({ username }) { @@ -58,19 +41,9 @@ async function getAllMail({ username }) { async function getAllQuestions(username) { if (username) - return getAllData( - Question, - `/users/${username}/questions`, - 'question_id', - 'questions' - ); + return getAllData(Question, `/users/${username}/questions`, 'question_id', 'questions'); else { - return getAllData( - Question, - `/questions/search`, - 'question_id', - 'questions' - ); + return getAllData(Question, `/questions/search`, 'question_id', 'questions'); } } diff --git a/server/utils/question/getAnswer.js b/server/utils/question/getAnswer.js index e7a86cc..bbcee40 100644 --- a/server/utils/question/getAnswer.js +++ b/server/utils/question/getAnswer.js @@ -1,6 +1,6 @@ -const createRequest = require('server/utils/api'); +const createRequest = require('../api'); -const Answer = require('server/db/models/Answer'); +const Answer = require('../../db/models/Answer'); async function getAnswer(question_id, answer_id) { let cachedAnswer; diff --git a/server/utils/question/getQuestion.js b/server/utils/question/getQuestion.js index 3622545..0d3908c 100644 --- a/server/utils/question/getQuestion.js +++ b/server/utils/question/getQuestion.js @@ -1,6 +1,6 @@ -const createRequest = require('server/utils/api'); +const createRequest = require('../api'); -const Question = require('server/db/models/Question'); +const Question = require('../../db/models/Question'); async function getQuestion(question_id) { let cachedQuestion; @@ -12,10 +12,7 @@ async function getQuestion(question_id) { // Retrieve uncached question and patch to cache if (!cachedQuestion) { - const { success, question } = await createRequest( - 'get', - `/questions/${question_id}` - ); + const { success, question } = await createRequest('get', `/questions/${question_id}`); if (!success) return; diff --git a/server/utils/question/refreshQuestion.js b/server/utils/question/refreshQuestion.js index fbf3db9..022f48c 100644 --- a/server/utils/question/refreshQuestion.js +++ b/server/utils/question/refreshQuestion.js @@ -1,11 +1,8 @@ -const Question = require('server/db/models/Question'); -const createRequest = require('server/utils/api'); +const Question = require('../../db/models/Question'); +const createRequest = require('../api'); async function refreshQuestion(question_id) { - const { question, success } = await createRequest( - 'get', - `/questions/${question_id}` - ); + const { question, success } = await createRequest('get', `/questions/${question_id}`); if (!success) return false; // Refresh cache