diff --git a/package-lock.json b/package-lock.json index ee8a43b8f5571ee129407564515c01a959ee935f..cb959ebd88fee3935a9aa05f9aec5849b9dc0b65 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1253,11 +1253,11 @@ "dev": true }, "axios": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.19.2.tgz", - "integrity": "sha512-fjgm5MvRHLhx+osE2xoekY70AhARk3a6hkN+3Io1jc00jtquGvxYlKlsFUhmUET0V5te6CcZI7lcv2Ym61mjHA==", + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", + "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", "requires": { - "follow-redirects": "1.5.10" + "follow-redirects": "^1.10.0" } }, "babel-jest": { @@ -2640,27 +2640,9 @@ } }, "follow-redirects": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz", - "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==", - "requires": { - "debug": "=3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.1.tgz", + "integrity": "sha512-SSG5xmZh1mkPGyKzjZP8zLjltIfpW32Y5QpdNJyjcfGxK3qo3NDDkZOZSFiGn1A6SclQxY9GzEwAHQ3dmYRWpg==" }, "for-in": { "version": "1.0.2", diff --git a/package.json b/package.json index 1461ed00f8f099a61d494df8fc45d8c0fe7e0706..c0674e34a95be2e5f1f03a367249d8aad06741dd 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,7 @@ "dependencies": { "@types/express-session": "^1.17.3", "@types/simple-oauth2": "^2.5.4", - "axios": "^0.19.2", + "axios": "^0.21.1", "body-parser": "^1.19.0", "dotenv": "^8.2.0", "express": "^4.17.1", diff --git a/src/index.ts b/src/index.ts index 270ff0cf3c76793de01f8a7a868428cba2af0117..6d24c07a1577ed37cb7fe5ffd1a93382e3045799 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,10 +1,12 @@ -import bodyParser from "body-parser"; +import "./utils/env"; + import express, { Application, NextFunction, Request, Response } from "express"; + +import bodyParser from "body-parser"; import expressSession from "express-session"; import mongoose from "mongoose"; import morgan from "morgan"; -import { setRouters } from "./routes/setRouters"; -import "./utils/env"; +import setRouters from "./routes/setRouters"; mongoose .connect("mongodb://localhost:27017/bodysch", { diff --git a/src/middlewares/auth/complete.ts b/src/middlewares/auth/complete.ts index fdb8098956fd47b77d5b76c75033513aeb7c785e..a8b1364c423717a4f0148dc2095ed0e662aea0f0 100644 --- a/src/middlewares/auth/complete.ts +++ b/src/middlewares/auth/complete.ts @@ -1,9 +1,9 @@ -import axios from "axios"; import { NextFunction, Request, Response } from "express"; -import Profile from "../../models/ProfileSchema"; import { oauth2, scope } from "../../utils/auth"; -import { authschResponse } from "../../utils/types/authschResponse"; +import Profile from "../../models/ProfileSchema"; +import { authschResponse } from "../../utils/types/authschResponse"; +import axios from "axios"; /** * Called after authentication. diff --git a/src/middlewares/auth/isAdmin.ts b/src/middlewares/auth/isAdmin.ts index 403ca9fffd45f9f2ff10fb7987bdc94740acb817..b1b58d957254e7487947c74ac6dad9ea42a155cf 100644 --- a/src/middlewares/auth/isAdmin.ts +++ b/src/middlewares/auth/isAdmin.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import { Role } from "../../models/ProfileSchema"; /** diff --git a/src/middlewares/auth/login.ts b/src/middlewares/auth/login.ts index 15fad1eb38a0b1a28059aed696d8cebea8d9feb9..a9158a25e7ef485e07655b8efdee276de527fa0a 100644 --- a/src/middlewares/auth/login.ts +++ b/src/middlewares/auth/login.ts @@ -8,7 +8,10 @@ const authorizationUri = oauth2().authorizationCode.authorizeURL({ /** * Redirects to the authorization URL */ -const login = () => (req: Request, res: Response) => +const login = () => (req: Request, res: Response) => { + console.log(authorizationUri); + console.log(process.env.AUTH_ID); res.redirect(authorizationUri); +}; export default login; diff --git a/src/middlewares/auth/refreshToken.ts b/src/middlewares/auth/refreshToken.ts index 97c8a6619eb616017cc21236c23ab48696791cf7..bc7303be1cd5e25317dc21cc71a1cd023781a7d7 100644 --- a/src/middlewares/auth/refreshToken.ts +++ b/src/middlewares/auth/refreshToken.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import { oauth2 } from "../../utils/auth"; /** diff --git a/src/middlewares/files/card/getUserCard.ts b/src/middlewares/files/card/getUserCard.ts index 05bff3eb0f68d46b9d386f83b15ba8bac0edc7a9..e1e35121f6bfeced11f4abab806d3003bb73b5b3 100644 --- a/src/middlewares/files/card/getUserCard.ts +++ b/src/middlewares/files/card/getUserCard.ts @@ -1,7 +1,8 @@ import { NextFunction, Request, Response } from "express"; -import fs from "fs"; + import Card from "../../../models/CardSchema"; import File from "../../../models/FileSchema"; +import fs from "fs"; /** * Generate Entry card svg from Users data and card diff --git a/src/middlewares/files/card/responseCardImage.ts b/src/middlewares/files/card/responseCardImage.ts index 88bb1149ac775aa4319ad54c06891b1432391446..a5a52bb27733615d26df3f6e048d6b9f580b06c6 100644 --- a/src/middlewares/files/card/responseCardImage.ts +++ b/src/middlewares/files/card/responseCardImage.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import File from "../../../models/FileSchema"; /** diff --git a/src/middlewares/files/card/uploadCardImage.ts b/src/middlewares/files/card/uploadCardImage.ts index 6283f8a76519d4b4d699f45b8b06ff8dc2ff2039..10fe5b55c96f9dff0c592368db1f352a0fe5d1d2 100644 --- a/src/middlewares/files/card/uploadCardImage.ts +++ b/src/middlewares/files/card/uploadCardImage.ts @@ -1,7 +1,8 @@ import { NextFunction, Request, Response } from "express"; -import fs from "fs"; + import CardImage from "../../../models/CardImageSchema"; import File from "../../../models/FileSchema"; +import fs from "fs"; /** * Upload a new Card background Image diff --git a/src/middlewares/files/createFile.ts b/src/middlewares/files/createFile.ts index d780aa7de8c2951edd96f6214f398f29e7ee20c7..7f46cc1400bdf6bbcd8ac1310ce6a992cb6db479 100644 --- a/src/middlewares/files/createFile.ts +++ b/src/middlewares/files/createFile.ts @@ -1,7 +1,8 @@ import { NextFunction, Request, Response } from "express"; -import fs from "fs"; -import File from "../../models/FileSchema"; + import { ErrorHandler } from "../utils/ErrorHandler"; +import File from "../../models/FileSchema"; +import fs from "fs"; /** * Upload a new profile picture diff --git a/src/middlewares/files/deleteFile.ts b/src/middlewares/files/deleteFile.ts index 97f423103554a32cadaaa1756d91c60d48ff3bef..e196514516dec059472de4458cad01def506f318 100644 --- a/src/middlewares/files/deleteFile.ts +++ b/src/middlewares/files/deleteFile.ts @@ -1,6 +1,7 @@ import { NextFunction, Request, Response } from "express"; -import fs from "fs"; + import File from "../../models/FileSchema"; +import fs from "fs"; /** * Deletes the file if exists. Careful, doesn't remove reference! diff --git a/src/middlewares/files/imageFilter.ts b/src/middlewares/files/imageFilter.ts index 6fa72dd6746de9fab1b00ad0c4e69e5103355d06..4e5d888508eab5cdd67d1cf5d7f52a5bc745389b 100644 --- a/src/middlewares/files/imageFilter.ts +++ b/src/middlewares/files/imageFilter.ts @@ -1,5 +1,5 @@ -import { FileFilterCallback } from "multer"; import { ErrorHandler } from "../utils/ErrorHandler"; +import { FileFilterCallback } from "multer"; /** * multer imageFilter that only lets png or jpeg to be uploaded diff --git a/src/middlewares/files/sendFile.ts b/src/middlewares/files/sendFile.ts index 9ca90e361d183b8e4bab9dc1aebd0ef4fd6c15ac..4103093f4b45dbd7dfc611331112c29b3bcb1d28 100644 --- a/src/middlewares/files/sendFile.ts +++ b/src/middlewares/files/sendFile.ts @@ -1,6 +1,7 @@ import { NextFunction, Request, Response } from "express"; -import File from "../../models/FileSchema"; + import { ErrorHandler } from "../utils/ErrorHandler"; +import File from "../../models/FileSchema"; /** * Return the file with id = res.data.value diff --git a/src/middlewares/files/updateTermCardBg.ts b/src/middlewares/files/updateTermCardBg.ts index 882046d5f38453f0e6c9df0f877d4cb6c8085557..0872f1e035c6644f929c7fdc45f30adabf7dc4a9 100644 --- a/src/middlewares/files/updateTermCardBg.ts +++ b/src/middlewares/files/updateTermCardBg.ts @@ -1,7 +1,8 @@ import { NextFunction, Request, Response } from "express"; -import fs from "fs"; + import File from "../../models/FileSchema"; import Term from "../../models/TermSchema"; +import fs from "fs"; /** * Upload a new profile picture diff --git a/src/middlewares/news/addNews.ts b/src/middlewares/news/addNews.ts index b2095a86d6310e23eeb5a49ef5889692e654e478..f41e11ddcc6200168c1024fb4c27cc0f18d9a257 100644 --- a/src/middlewares/news/addNews.ts +++ b/src/middlewares/news/addNews.ts @@ -1,5 +1,6 @@ -import { NextFunction, Request, Response } from "express"; import News, { INews } from "../../models/NewsSchema"; +import { NextFunction, Request, Response } from "express"; + import { validateFields } from "../utils/validateFields"; /** diff --git a/src/middlewares/news/deleteNews.ts b/src/middlewares/news/deleteNews.ts index 6ac7e62198f990a96e75168a7e39f7b663c7431a..e9925c9a1047c7b4249d2331fdd3c5c25760f4ef 100644 --- a/src/middlewares/news/deleteNews.ts +++ b/src/middlewares/news/deleteNews.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import News from "../../models/NewsSchema"; const deleteNews = () => async ( diff --git a/src/middlewares/news/getNewsList.ts b/src/middlewares/news/getNewsList.ts index fc9a7ff3400181cfce6ad6ad25ce71c9604c7f14..9e1f1f88fc8a89df4cc440dea389e4231263df5f 100644 --- a/src/middlewares/news/getNewsList.ts +++ b/src/middlewares/news/getNewsList.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import News from "../../models/NewsSchema"; /** diff --git a/src/middlewares/news/getOneNews.ts b/src/middlewares/news/getOneNews.ts index 36c0e4c97edf7598a525e6a335dfab09d46db4af..7de7cbfc82825ca9f39c07b443a0009ba73f509c 100644 --- a/src/middlewares/news/getOneNews.ts +++ b/src/middlewares/news/getOneNews.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import News from "../../models/NewsSchema"; /** diff --git a/src/middlewares/news/updateNews.ts b/src/middlewares/news/updateNews.ts index 1191321f3d0616c57956a0be0dce0d535cc35b25..156491e87c7deeea0ff9b364f9ee18e3bf3343f8 100644 --- a/src/middlewares/news/updateNews.ts +++ b/src/middlewares/news/updateNews.ts @@ -1,5 +1,5 @@ -import { NextFunction, Request, Response } from "express"; import News, { INews } from "../../models/NewsSchema"; +import { NextFunction, Request, Response } from "express"; /** * Update a News Object diff --git a/src/middlewares/term/addMember.ts b/src/middlewares/term/addMember.ts index 65a824534f28644c748957f43db17f03443d8639..e5f86027a59cc14d75632227aa8420021b3b7bff 100644 --- a/src/middlewares/term/addMember.ts +++ b/src/middlewares/term/addMember.ts @@ -1,7 +1,8 @@ import { NextFunction, Request, Response } from "express"; -import Counter from "../../models/CounterSchema"; import Term, { CardState, IMember, MemberState } from "../../models/TermSchema"; +import Counter from "../../models/CounterSchema"; + /** * Add a new Term */ diff --git a/src/middlewares/term/addTerm.ts b/src/middlewares/term/addTerm.ts index 550ca56365276e186a06acefa0e689fc93bfa66a..26676ad09d2d3761fd4c135467a70f94786d624c 100644 --- a/src/middlewares/term/addTerm.ts +++ b/src/middlewares/term/addTerm.ts @@ -1,5 +1,6 @@ import { NextFunction, Request, Response } from "express"; import Term, { ITerm } from "../../models/TermSchema"; + import { validateFields } from "../utils/validateFields"; /** diff --git a/src/middlewares/term/deleteTerm.ts b/src/middlewares/term/deleteTerm.ts index 6cd779f1db507459c21a642cc7cf4fa734f89443..95e4a942e2a432da84e903140e57c801e74c3c5b 100644 --- a/src/middlewares/term/deleteTerm.ts +++ b/src/middlewares/term/deleteTerm.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import File from "../../models/FileSchema"; import Term from "../../models/TermSchema"; diff --git a/src/middlewares/term/filterMembersByState.ts b/src/middlewares/term/filterMembersByState.ts index 2755309d2aed40f95c7ed5d5310abc8b88175550..ec2d580d658bc2e11243ef492123b60706abd611 100644 --- a/src/middlewares/term/filterMembersByState.ts +++ b/src/middlewares/term/filterMembersByState.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import { MemberState } from "../../models/TermSchema"; const convertState = (state: string) => { diff --git a/src/middlewares/term/getTerm.ts b/src/middlewares/term/getTerm.ts index 48881be142c31131fdc86bd8e4547b67841d5a11..31ce1163c2b9d6125fbf6641aa076d96d21e87ee 100644 --- a/src/middlewares/term/getTerm.ts +++ b/src/middlewares/term/getTerm.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import Term from "../../models/TermSchema"; /** diff --git a/src/middlewares/term/getTermMembers.ts b/src/middlewares/term/getTermMembers.ts index bad9dfb3eddbc28f073e57de682c3cfc70ee3950..79ffe98c6c88a69005b29c5f9998d86e499d7874 100644 --- a/src/middlewares/term/getTermMembers.ts +++ b/src/middlewares/term/getTermMembers.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import Term from "../../models/TermSchema"; const getTermMembers = () => async ( diff --git a/src/middlewares/term/getTermsList.ts b/src/middlewares/term/getTermsList.ts index c2bcb2ebd4ca6a4bd4e0be79b46680eeafcb6579..430e87d961ff3c91fb4e3fe7854422070d5d578d 100644 --- a/src/middlewares/term/getTermsList.ts +++ b/src/middlewares/term/getTermsList.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import Term from "../../models/TermSchema"; /** diff --git a/src/middlewares/term/getUserTermMemberships.ts b/src/middlewares/term/getUserTermMemberships.ts index 57f0693e4be2054075af1937093b7a4a599a1929..49868f370ba4255d39518111752576f068382b18 100644 --- a/src/middlewares/term/getUserTermMemberships.ts +++ b/src/middlewares/term/getUserTermMemberships.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import Term from "../../models/TermSchema"; const getUserTermMemberships = () => async ( diff --git a/src/middlewares/user/acceptPicture.ts b/src/middlewares/user/acceptPicture.ts index 44d6242329abb9c6c1a386029d147427118ed537..15d8bf056ee94b61ef739aa858b0cccf2f98f87b 100644 --- a/src/middlewares/user/acceptPicture.ts +++ b/src/middlewares/user/acceptPicture.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import Profile from "../../models/ProfileSchema"; /** diff --git a/src/middlewares/user/deleteUser.ts b/src/middlewares/user/deleteUser.ts index 6cecb1dadc217c3eb0175891d02409c9060371bd..460cb038dac13c0506d6144bafc1cd70f1ec13d1 100644 --- a/src/middlewares/user/deleteUser.ts +++ b/src/middlewares/user/deleteUser.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import Profile from "../../models/ProfileSchema"; /** diff --git a/src/middlewares/user/getUser.ts b/src/middlewares/user/getUser.ts index 164483d5946382c7aa48b158ab56289bf17c1f6c..de494e0ff334b080424174e1fbba8748eb942b75 100644 --- a/src/middlewares/user/getUser.ts +++ b/src/middlewares/user/getUser.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import Profile from "../../models/ProfileSchema"; /** diff --git a/src/middlewares/user/getUsersList.ts b/src/middlewares/user/getUsersList.ts index 57dd0f06c25b2385aa6bb3dd5320c6fa40f10d9e..2761145cbd56b63636562249d24c3f06e5bd725c 100644 --- a/src/middlewares/user/getUsersList.ts +++ b/src/middlewares/user/getUsersList.ts @@ -1,7 +1,8 @@ import { NextFunction, Request, Response } from "express"; -import { FilterQuery } from "mongoose"; import Profile, { IProfile } from "../../models/ProfileSchema"; +import { FilterQuery } from "mongoose"; + /** * -> All Profiles to res.data.profiles */ diff --git a/src/middlewares/user/notice/addNoticeToUser.ts b/src/middlewares/user/notice/addNoticeToUser.ts index 77776b1e727b60008ccd7eb175d0ade1ae30f277..0d46e29eda04863fd899f64f24805eccf865dd2d 100644 --- a/src/middlewares/user/notice/addNoticeToUser.ts +++ b/src/middlewares/user/notice/addNoticeToUser.ts @@ -1,6 +1,7 @@ import { NextFunction, Request, Response } from "express"; -import { Types } from "mongoose"; import Profile, { INotice } from "../../../models/ProfileSchema"; + +import { Types } from "mongoose"; import { validateFields } from "../../utils/validateFields"; const addNoticeToUser = ( diff --git a/src/middlewares/user/notice/deleteNotice.ts b/src/middlewares/user/notice/deleteNotice.ts index 3a2e31633b33686672d1d7bd3d54bbc59b46c2b3..a820add2e0bd123d2567f8b7644c7288f4ee66d1 100644 --- a/src/middlewares/user/notice/deleteNotice.ts +++ b/src/middlewares/user/notice/deleteNotice.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import Profile from "../../../models/ProfileSchema"; const deleteNotice = () => async ( diff --git a/src/middlewares/user/notice/getUserNoticeNum.ts b/src/middlewares/user/notice/getUserNoticeNum.ts index 7209076b666af114078a610896e3ed5a8ca9c17d..516168180b4088ef8ea392ccd9b23e4163b5f8c6 100644 --- a/src/middlewares/user/notice/getUserNoticeNum.ts +++ b/src/middlewares/user/notice/getUserNoticeNum.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import Profile from "../../../models/ProfileSchema"; const getUserNoticeNum = () => async ( diff --git a/src/middlewares/user/notice/getUserNotices.ts b/src/middlewares/user/notice/getUserNotices.ts index a3b6d4577c1f657791e4f75da5e89d4d2e136674..5907fe27a6b0a67ec3c379beca06929a528f9121 100644 --- a/src/middlewares/user/notice/getUserNotices.ts +++ b/src/middlewares/user/notice/getUserNotices.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import Profile from "../../../models/ProfileSchema"; const getUserNotices = () => async ( diff --git a/src/middlewares/user/notice/markNoticeAsSeen.ts b/src/middlewares/user/notice/markNoticeAsSeen.ts index bd6c1f8c24e1cecda4d428f82a840d3f1e8f04ed..fd322d0700bbd27e1f4c29ac7c22daa1941f89a6 100644 --- a/src/middlewares/user/notice/markNoticeAsSeen.ts +++ b/src/middlewares/user/notice/markNoticeAsSeen.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import Profile from "../../../models/ProfileSchema"; const markNoticeAsSeen = () => async ( diff --git a/src/middlewares/user/registerOwnUser.ts b/src/middlewares/user/registerOwnUser.ts index 16cabc355e165950f3b882d84ac8fd06fd73e9cc..0cb88f89ba780977d42d8f652b39fd951679d27e 100644 --- a/src/middlewares/user/registerOwnUser.ts +++ b/src/middlewares/user/registerOwnUser.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import Profile from "../../models/ProfileSchema"; import { validateFields } from "../utils/validateFields"; diff --git a/src/middlewares/user/rejectPicture.ts b/src/middlewares/user/rejectPicture.ts index b788dff984f2893d254a0fa71693648f6fda679a..22202962f8d18c39f99963c06452c2d2c81e617c 100644 --- a/src/middlewares/user/rejectPicture.ts +++ b/src/middlewares/user/rejectPicture.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import Profile from "../../models/ProfileSchema"; /** diff --git a/src/middlewares/user/warning/addWarning.ts b/src/middlewares/user/warning/addWarning.ts index 0cfdd33dc1751a298e8543471e36540dca6742f0..a9b9858995a8963cbf931daf6129318593ccbf62 100644 --- a/src/middlewares/user/warning/addWarning.ts +++ b/src/middlewares/user/warning/addWarning.ts @@ -1,6 +1,7 @@ import { NextFunction, Request, Response } from "express"; -import { Types } from "mongoose"; import Profile, { IWarning } from "../../../models/ProfileSchema"; + +import { Types } from "mongoose"; import { validateFields } from "../../utils/validateFields"; const addWarning = ( diff --git a/src/middlewares/user/warning/deleteWarning.ts b/src/middlewares/user/warning/deleteWarning.ts index e51b071c4e915e5b8b03ef11c62d833ddaf1e8d1..49d613be180ce61b21359803aa522f279b89c54f 100644 --- a/src/middlewares/user/warning/deleteWarning.ts +++ b/src/middlewares/user/warning/deleteWarning.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import Profile from "../../../models/ProfileSchema"; const deleteWarning = () => async ( diff --git a/src/middlewares/user/warning/getUserWarningsList.ts b/src/middlewares/user/warning/getUserWarningsList.ts index 8ad404286e368629eadc9bc8043f300483ab8d20..80945dc68920ecc13b49a70d1a08fcccacbbf4a2 100644 --- a/src/middlewares/user/warning/getUserWarningsList.ts +++ b/src/middlewares/user/warning/getUserWarningsList.ts @@ -1,4 +1,5 @@ import { NextFunction, Request, Response } from "express"; + import Profile from "../../../models/ProfileSchema"; const getUserWarnings = () => async ( diff --git a/src/middlewares/utils/validateFields.ts b/src/middlewares/utils/validateFields.ts index 0b0d9214f621c080e26348da18953fb115e8fd24..977002720f8565354f0aa0a74c6c586e29bd6078 100644 --- a/src/middlewares/utils/validateFields.ts +++ b/src/middlewares/utils/validateFields.ts @@ -1,5 +1,5 @@ -import { Request } from "express"; import { ErrorHandler } from "./ErrorHandler"; +import { Request } from "express"; interface IValidateFields { fields: { diff --git a/src/models/CounterSchema.ts b/src/models/CounterSchema.ts index 0a2d4d7ae2829e7906247071467e834a86cac55f..40a889642ab571cd7e74c6c4535c2ce1409bfcc7 100644 --- a/src/models/CounterSchema.ts +++ b/src/models/CounterSchema.ts @@ -1,4 +1,4 @@ -import { Document, model, Schema } from "mongoose"; +import { Document, Schema, model } from "mongoose"; export interface ICounter extends Document { _id: string; diff --git a/src/models/FileSchema.ts b/src/models/FileSchema.ts index 020c7b14d5f3dda87ba64095662c19657de8dd37..268514c62f9c86758e653e11a99cf5573d7562d3 100644 --- a/src/models/FileSchema.ts +++ b/src/models/FileSchema.ts @@ -1,4 +1,4 @@ -import { Document, model, Schema } from "mongoose"; +import { Document, Schema, model } from "mongoose"; export interface IFile extends Document { path: string; diff --git a/src/models/NewsSchema.ts b/src/models/NewsSchema.ts index adec5e6fc4e894211bb9b4a913cf5fc5ca5da802..72d32c23ea500a05c3402f1dc2426a2b7c9a6419 100644 --- a/src/models/NewsSchema.ts +++ b/src/models/NewsSchema.ts @@ -1,4 +1,4 @@ -import { Document, model, Schema } from "mongoose"; +import { Document, Schema, model } from "mongoose"; export interface INews extends Document { title: string; diff --git a/src/models/ProfileSchema.ts b/src/models/ProfileSchema.ts index 8aa926f3cadd69cf89ddf0c7e5288e131386e30a..011a4a4d7b203dcbac12c70f2c4a7bc8c976ae61 100644 --- a/src/models/ProfileSchema.ts +++ b/src/models/ProfileSchema.ts @@ -1,4 +1,4 @@ -import { Document, model, Schema } from "mongoose"; +import { Document, Schema, model } from "mongoose"; export enum Role { Admin = "ADMIN", diff --git a/src/models/TermSchema.ts b/src/models/TermSchema.ts index 3b1367cb48f03e650970e48432aa68ace567fb44..a71858c11aab39933ac98eb2ee9679d5547c33e0 100644 --- a/src/models/TermSchema.ts +++ b/src/models/TermSchema.ts @@ -1,4 +1,4 @@ -import { Document, model, Schema } from "mongoose"; +import { Document, Schema, model } from "mongoose"; export enum MemberState { Accepted = "ACCEPTED", diff --git a/src/models/user.interface.ts b/src/models/user.interface.ts index 51a8e7b121a1c3000d7706bb3168b9aaafd79461..2981e326b9dde5134f7c6c93f1ef60dd0e14cf50 100644 --- a/src/models/user.interface.ts +++ b/src/models/user.interface.ts @@ -1,5 +1,5 @@ -import { Token } from "simple-oauth2"; import { Role } from "./ProfileSchema"; +import { Token } from "simple-oauth2"; export interface User { email: string; diff --git a/src/routes/files.ts b/src/routes/files.ts index f548cc2be3fd7e6370deed5263f7a37bf0e16634..e9d0591a822fc5304df0e8d12223624c90caffec 100644 --- a/src/routes/files.ts +++ b/src/routes/files.ts @@ -1,19 +1,19 @@ import { Application } from "express"; -import multer from "multer"; -import isAdmin from "../middlewares/auth/isAdmin"; -import isRegistered from "../middlewares/auth/isRegistered"; -import example from "../middlewares/example"; import createFile from "../middlewares/files/createFile"; +import createdResponse from "../middlewares/utils/createdResponse"; +import example from "../middlewares/example"; +import getFieldValue from "../middlewares/utils/getFieldValue"; +import getTerm from "../middlewares/term/getTerm"; +import getUser from "../middlewares/user/getUser"; import { imageFilter } from "../middlewares/files/imageFilter"; import { imageStorage } from "../middlewares/files/imageStorage"; +import isAdmin from "../middlewares/auth/isAdmin"; +import isRegistered from "../middlewares/auth/isRegistered"; +import multer from "multer"; import sendFile from "../middlewares/files/sendFile"; +import setOwnUserId from "../middlewares/user/setOwnUserId"; import updateProfilePicture from "../middlewares/files/updateProfilePicture"; import updateTermCardBg from "../middlewares/files/updateTermCardBg"; -import getTerm from "../middlewares/term/getTerm"; -import getUser from "../middlewares/user/getUser"; -import setOwnUserId from "../middlewares/user/setOwnUserId"; -import createdResponse from "../middlewares/utils/createdResponse"; -import getFieldValue from "../middlewares/utils/getFieldValue"; const profilePictureUpload = multer({ storage: imageStorage("uploads/profile_pictures/"), @@ -25,19 +25,62 @@ const CardImageUpload = multer({ fileFilter: imageFilter, }); -// GetOwnPicture -// GetOwnAcceptedPicture -// GetUserPicture (userId) -// GetUserAcceptedPicture (userId) -// UploadOwnPicture -// Get Staff Member Picture (userId) -// Get User Accepted Picture (id) -// Get Card SVG (userId, termId) -// UpdateTermCardImage (termId) -// Get Term Card Image (termId) -// Future: OwnTermCardPreview(termId) +// TODO in Future: OwnTermCardPreview(termId) const filesRoute = (prefix: string, app: Application): void => { + /** + * Get Own New Profile picture + * Role: Normal + */ + app.get( + `${prefix}/me/picture/new`, + isRegistered(), + setOwnUserId(), + getUser("_id newPicture"), + getFieldValue("profile", "newPicture"), + sendFile() + ); + /** + * Get Own Accepted Profile picture + * Role: Normal + */ + app.get(`${prefix}/me/picture/accepted`, example()); + /** + * Get a Users New Profile picture + * Role: Admin + */ + app.get(`${prefix}/user/:userId/picture/new`, example()); + /** + * Get a Users Accepted Profile picture + * Role: Admin + */ + app.get(`${prefix}/user/:userId/picture/accepted`, example()); + /** + * Upload Own New Profile picture + * Role: Normal + */ + app.post(`${prefix}/me/picture/new`, example()); + /** + * Get Staff members picture + * Role: Normal + */ + app.get(`${prefix}/staff/:userId/picture`, example()); + /** + * Get Card SVG of User + * Role: Admin + */ + app.get(`${prefix}/term/:termId/user/:userId/card`, example()); + /** + * Get Term Card Image + * Role: Admin + */ + app.get(`${prefix}/term/:termId/card`, example()); + /** + * Upload Term Card Image + * Role: Admin + */ + app.post(`${prefix}/term/:termId/card`, example()); + // Get a users profile picture app.get( `${prefix}/user/:userId/picture`, diff --git a/src/routes/news.ts b/src/routes/news.ts index 2ff0944c7f4c845b3b8c941228651a9c997a74a4..77fb7aa80f776b0a3e10baceb3cbc0fd3f9f75e3 100644 --- a/src/routes/news.ts +++ b/src/routes/news.ts @@ -1,15 +1,15 @@ import { Application } from "express"; -import isAdmin from "../middlewares/auth/isAdmin"; -import isRegistered from "../middlewares/auth/isRegistered"; import addNews from "../middlewares/news/addNews"; +import createdResponse from "../middlewares/utils/createdResponse"; import deleteNews from "../middlewares/news/deleteNews"; import getNewsList from "../middlewares/news/getNewsList"; import getOneNews from "../middlewares/news/getOneNews"; +import isAdmin from "../middlewares/auth/isAdmin"; +import isRegistered from "../middlewares/auth/isRegistered"; +import noContentResponse from "../middlewares/utils/noContentResponse"; import responseNews from "../middlewares/news/responseNews"; import responseOneNews from "../middlewares/news/responseOneNews"; import updateNews from "../middlewares/news/updateNews"; -import createdResponse from "../middlewares/utils/createdResponse"; -import noContentResponse from "../middlewares/utils/noContentResponse"; const newsRoute = (prefix: string, app: Application): void => { /** diff --git a/src/routes/setErrorHandler.ts b/src/routes/setErrorHandler.ts index e3c43f96eae182cd101f3bbffce3c00cb9ee2589..00f4f36551ae47a4455ed6a0baf03a96228facec 100644 --- a/src/routes/setErrorHandler.ts +++ b/src/routes/setErrorHandler.ts @@ -1,7 +1,8 @@ import { Application, NextFunction, Request, Response } from "express"; +import { ErrorHandler, handleError } from "../middlewares/utils/ErrorHandler"; + import { Error as MongooseError } from "mongoose"; import multer from "multer"; -import { ErrorHandler, handleError } from "../middlewares/utils/ErrorHandler"; const setErrorHandler = (app: Application): void => { app.use((err: any, req: Request, res: Response, next: NextFunction) => { diff --git a/src/routes/setRouters.ts b/src/routes/setRouters.ts index 50d46c612a9af1a7497f99ce9503eb5adc9271db..e70329384931388ef7ece8534e0574a58bcd2e32 100644 --- a/src/routes/setRouters.ts +++ b/src/routes/setRouters.ts @@ -6,12 +6,12 @@ import setErrorHandler from "./setErrorHandler"; import termsRoute from "./terms"; import userMembershipRoute from "./users/membership"; import userNotificeRoute from "./users/notice"; -import usersRoute from "./users/user"; import userWarningsRoute from "./users/warning"; +import usersRoute from "./users/user"; const prefix = "/api/v1"; -export const setRouters = (app: Application): void => { +const setRouters = (app: Application): void => { authRoute(prefix, app); filesRoute(`${prefix}/files`, app); @@ -27,3 +27,5 @@ export const setRouters = (app: Application): void => { setErrorHandler(app); }; + +export default setRouters; diff --git a/src/routes/terms.ts b/src/routes/terms.ts index 3c3d4385e9344e22ad82998446ca757616b6447b..8a22bf5ae4430688d1c3f82179b2abcfd9361f84 100644 --- a/src/routes/terms.ts +++ b/src/routes/terms.ts @@ -1,25 +1,25 @@ import { Application } from "express"; -import isAdmin from "../middlewares/auth/isAdmin"; -import isRegistered from "../middlewares/auth/isRegistered"; -import deleteFile from "../middlewares/files/deleteFile"; import addMember from "../middlewares/term/addMember"; import addTerm from "../middlewares/term/addTerm"; +import createdEmptyResponse from "../middlewares/utils/createdEmptyResponse"; +import createdResponse from "../middlewares/utils/createdResponse"; +import deleteFile from "../middlewares/files/deleteFile"; import deleteTerm from "../middlewares/term/deleteTerm"; +import getFieldValue from "../middlewares/utils/getFieldValue"; import getTerm from "../middlewares/term/getTerm"; import getTermMembers from "../middlewares/term/getTermMembers"; import getTermsList from "../middlewares/term/getTermsList"; +import getUser from "../middlewares/user/getUser"; +import isAdmin from "../middlewares/auth/isAdmin"; import isNotMember from "../middlewares/term/isNotMember"; +import isRegistered from "../middlewares/auth/isRegistered"; +import noContentResponse from "../middlewares/utils/noContentResponse"; import responseMembersList from "../middlewares/term/responseMembersList"; import responseTerm from "../middlewares/term/responseTerm"; import responseTermsList from "../middlewares/term/responseTermsList"; +import setOwnUserId from "../middlewares/user/setOwnUserId"; import updateTerm from "../middlewares/term/updateTerm"; import updateTermMember from "../middlewares/term/updateTermMember"; -import getUser from "../middlewares/user/getUser"; -import setOwnUserId from "../middlewares/user/setOwnUserId"; -import createdEmptyResponse from "../middlewares/utils/createdEmptyResponse"; -import createdResponse from "../middlewares/utils/createdResponse"; -import getFieldValue from "../middlewares/utils/getFieldValue"; -import noContentResponse from "../middlewares/utils/noContentResponse"; const termsRoute = (prefix: string, app: Application): void => { /** diff --git a/src/routes/users/membership.ts b/src/routes/users/membership.ts index df9242fdc76e6b6a3aeaf3551317fbf59dbf5b3a..0a57b9d1c1acd5c8713e4d95888ddfa61f95de41 100644 --- a/src/routes/users/membership.ts +++ b/src/routes/users/membership.ts @@ -1,7 +1,7 @@ import { Application } from "express"; +import getUserTermMemberships from "../../middlewares/term/getUserTermMemberships"; import isAdmin from "../../middlewares/auth/isAdmin"; import isRegistered from "../../middlewares/auth/isRegistered"; -import getUserTermMemberships from "../../middlewares/term/getUserTermMemberships"; import responseTermsList from "../../middlewares/term/responseTermsList"; import setOwnUserId from "../../middlewares/user/setOwnUserId"; diff --git a/src/routes/users/notice.ts b/src/routes/users/notice.ts index 607a777059aa6e4f3b4136d6b6d400c392d5fcbb..a3401a4b30323e3a4b45711663b8d4a7e32162a1 100644 --- a/src/routes/users/notice.ts +++ b/src/routes/users/notice.ts @@ -1,15 +1,15 @@ import { Application } from "express"; -import isRegistered from "../../middlewares/auth/isRegistered"; -import example from "../../middlewares/example"; import addNoticeToUser from "../../middlewares/user/notice/addNoticeToUser"; import deleteNotice from "../../middlewares/user/notice/deleteNotice"; +import example from "../../middlewares/example"; import getUserNoticeNum from "../../middlewares/user/notice/getUserNoticeNum"; import getUserNotices from "../../middlewares/user/notice/getUserNotices"; +import isRegistered from "../../middlewares/auth/isRegistered"; import markNoticeAsSeen from "../../middlewares/user/notice/markNoticeAsSeen"; +import noContentResponse from "../../middlewares/utils/noContentResponse"; import responseNoticesList from "../../middlewares/user/notice/responseNoticesList"; import responseNoticesNum from "../../middlewares/user/notice/responseNoticesNum"; import setOwnUserId from "../../middlewares/user/setOwnUserId"; -import noContentResponse from "../../middlewares/utils/noContentResponse"; const userNotificeRoute = (prefix: string, app: Application): void => { /** diff --git a/src/routes/users/user.ts b/src/routes/users/user.ts index 402a84a9d550ded5ba7c27fc72ac4153ff44cf54..b54277fd44de97a5f29e70b91c1e211697989eff 100644 --- a/src/routes/users/user.ts +++ b/src/routes/users/user.ts @@ -1,24 +1,24 @@ import { Application } from "express"; -import isAdmin from "../../middlewares/auth/isAdmin"; -import isLoggedIn from "../../middlewares/auth/isLoggedIn"; -import isNotRegistered from "../../middlewares/auth/isNotRegistered"; -import isRegistered from "../../middlewares/auth/isRegistered"; -import deleteFile from "../../middlewares/files/deleteFile"; -import getUserTermMemberships from "../../middlewares/term/getUserTermMemberships"; -import responseTermsList from "../../middlewares/term/responseTermsList"; import acceptPicture from "../../middlewares/user/acceptPicture"; +import createdResponse from "../../middlewares/utils/createdResponse"; +import deleteFile from "../../middlewares/files/deleteFile"; import deleteUser from "../../middlewares/user/deleteUser"; +import getFieldValue from "../../middlewares/utils/getFieldValue"; import getUser from "../../middlewares/user/getUser"; +import getUserTermMemberships from "../../middlewares/term/getUserTermMemberships"; import getUsersList from "../../middlewares/user/getUsersList"; +import isAdmin from "../../middlewares/auth/isAdmin"; +import isLoggedIn from "../../middlewares/auth/isLoggedIn"; +import isNotRegistered from "../../middlewares/auth/isNotRegistered"; +import isRegistered from "../../middlewares/auth/isRegistered"; +import noContentResponse from "../../middlewares/utils/noContentResponse"; import registerOwnUser from "../../middlewares/user/registerOwnUser"; import rejectPicture from "../../middlewares/user/rejectPicture"; +import responseTermsList from "../../middlewares/term/responseTermsList"; import responseUser from "../../middlewares/user/responseUser"; import responseUsersList from "../../middlewares/user/responseUsersList"; import setOwnUserId from "../../middlewares/user/setOwnUserId"; import updateUser from "../../middlewares/user/updateUser"; -import createdResponse from "../../middlewares/utils/createdResponse"; -import getFieldValue from "../../middlewares/utils/getFieldValue"; -import noContentResponse from "../../middlewares/utils/noContentResponse"; const usersRoute = (prefix: string, app: Application): void => { /** diff --git a/src/routes/users/warning.ts b/src/routes/users/warning.ts index 934d315af11dbdd1f064b2834f8f19cd0d1db0fc..3f4cb21c8ba006bdc218175a897cd927b19d63cb 100644 --- a/src/routes/users/warning.ts +++ b/src/routes/users/warning.ts @@ -1,13 +1,13 @@ import { Application } from "express"; -import isAdmin from "../../middlewares/auth/isAdmin"; -import isRegistered from "../../middlewares/auth/isRegistered"; -import setOwnUserId from "../../middlewares/user/setOwnUserId"; import addWarning from "../../middlewares/user/warning/addWarning"; import deleteWarning from "../../middlewares/user/warning/deleteWarning"; import getUserWarningsList from "../../middlewares/user/warning/getUserWarningsList"; +import isAdmin from "../../middlewares/auth/isAdmin"; +import isRegistered from "../../middlewares/auth/isRegistered"; +import noContentResponse from "../../middlewares/utils/noContentResponse"; import responseWarningsList from "../../middlewares/user/warning/responseWarningsList"; +import setOwnUserId from "../../middlewares/user/setOwnUserId"; import updateWarning from "../../middlewares/user/warning/updateWarning"; -import noContentResponse from "../../middlewares/utils/noContentResponse"; const userWarningsRoute = (prefix: string, app: Application): void => { /**