diff --git a/backend/controllers/file.ts b/backend/controllers/file.ts index ae7bbec..88c940f 100644 --- a/backend/controllers/file.ts +++ b/backend/controllers/file.ts @@ -4,10 +4,8 @@ import MongoService from "../services/ChunkService/MongoService"; import FileSystemService from "../services/ChunkService/FileSystemService"; import S3Service from "../services/ChunkService/S3Service"; import User, {UserInterface} from "../models/user"; -import tempStorage from "../tempStorage/tempStorage"; import sendShareEmail from "../utils/sendShareEmail"; import { createStreamVideoCookie, removeStreamVideoCookie } from "../cookies/createCookies"; -import { ObjectID } from "mongodb"; const fileService = new FileService() @@ -18,11 +16,6 @@ type userAccessType = { s3Enabled: boolean, } -interface RequestTypeRefresh extends Request { - user?: UserInterface, - encryptedToken?: string -} - interface RequestTypeFullUser extends Request { user?: UserInterface, encryptedToken?: string, @@ -366,6 +359,8 @@ class FileController { } } + // No longer needed, left for reference + // getDownloadTokenVideo = async(req: RequestTypeFullUser, res: Response) => { // if (!req.user) { diff --git a/backend/controllers/folder.ts b/backend/controllers/folder.ts index bed7d5c..4794931 100644 --- a/backend/controllers/folder.ts +++ b/backend/controllers/folder.ts @@ -1,6 +1,5 @@ import FolderService from "../services/FolderService"; import { Request, Response } from "express"; -import {UserInterface} from "../models/user"; import MongoService from "../services/ChunkService/MongoService"; import FileSystemService from "../services/ChunkService/FileSystemService"; import S3Service from "../services/ChunkService/S3Service"; @@ -14,16 +13,6 @@ type userAccessType = { s3Enabled: boolean, } -interface RequestTypeRefresh extends Request { - user?: UserInterface, - encryptedToken?: string -} - -interface RequestTypeFullUser extends Request { - user?: UserInterface, - encryptedToken?: string -} - interface RequestType extends Request { user?: userAccessType, encryptedToken?: string diff --git a/backend/controllers/googleFile.ts b/backend/controllers/googleFile.ts index 32a0398..2a9f09f 100644 --- a/backend/controllers/googleFile.ts +++ b/backend/controllers/googleFile.ts @@ -5,28 +5,11 @@ import { googleQueryType } from "../utils/createQueryGoogle"; const googleFileService = new GoogleFileService(); -type userAccessType = { - _id: string, - emailVerified: boolean, - email: string, - s3Enabled: boolean, -} - -interface RequestTypeRefresh extends Request { - user?: UserInterface, - encryptedToken?: string -} - interface RequestTypeFullUser extends Request { user?: UserInterface, encryptedToken?: string } -interface RequestType extends Request { - user?: userAccessType, - encryptedToken?: string -} - class GoogleFileController { constructor() { diff --git a/backend/controllers/googleFolder.ts b/backend/controllers/googleFolder.ts index 3095b35..92df47a 100644 --- a/backend/controllers/googleFolder.ts +++ b/backend/controllers/googleFolder.ts @@ -5,28 +5,11 @@ import { googleQueryType } from "../utils/createQueryGoogle"; const googleFolderService = new GoogleFolderService(); -type userAccessType = { - _id: string, - emailVerified: boolean, - email: string, - s3Enabled: boolean, -} - -interface RequestTypeRefresh extends Request { - user?: UserInterface, - encryptedToken?: string -} - interface RequestTypeFullUser extends Request { user?: UserInterface, encryptedToken?: string } -interface RequestType extends Request { - user?: userAccessType, - encryptedToken?: string -} - class GoogleFolderController { constructor() { diff --git a/backend/controllers/personalFile.ts b/backend/controllers/personalFile.ts index 51a2836..b90858b 100644 --- a/backend/controllers/personalFile.ts +++ b/backend/controllers/personalFile.ts @@ -9,11 +9,6 @@ type userAccessType = { s3Enabled: boolean, } -interface RequestTypeRefresh extends Request { - user?: UserInterface, - encryptedToken?: string -} - interface RequestTypeFullUser extends Request { user?: UserInterface, encryptedToken?: string diff --git a/backend/controllers/storage.ts b/backend/controllers/storage.ts index f5102b3..4a00138 100644 --- a/backend/controllers/storage.ts +++ b/backend/controllers/storage.ts @@ -10,16 +10,6 @@ type userAccessType = { s3Enabled: boolean, } -interface RequestTypeRefresh extends Request { - user?: UserInterface, - encryptedToken?: string -} - -interface RequestTypeFullUser extends Request { - user?: UserInterface, - encryptedToken?: string -} - interface RequestType extends Request { user?: userAccessType, encryptedToken?: string diff --git a/backend/controllers/user.ts b/backend/controllers/user.ts index 5f6882c..99f102c 100644 --- a/backend/controllers/user.ts +++ b/backend/controllers/user.ts @@ -59,15 +59,8 @@ class UserController { const {user, accessToken, refreshToken} = await UserProvider.login(body, ipAddress); - // await user.save(); - createLoginCookie(res, accessToken, refreshToken); - // user.tokens = []; - // user.tempTokens = [] - // user.privateKey = undefined; - // user.publicKey = undefined; - res.status(200).send({user}); } catch (e) { diff --git a/backend/controllers/userGoogle.ts b/backend/controllers/userGoogle.ts index 21a2602..8f1d397 100644 --- a/backend/controllers/userGoogle.ts +++ b/backend/controllers/userGoogle.ts @@ -5,28 +5,11 @@ import { createLoginCookie } from "../cookies/createCookies"; const UserProviderGoogle = new UserServiceGoogle(); -type userAccessType = { - _id: string, - emailVerified: boolean, - email: string, - s3Enabled: boolean, -} - -interface RequestTypeRefresh extends Request { - user?: UserInterface, - encryptedToken?: string -} - interface RequestTypeFullUser extends Request { user?: UserInterface, encryptedToken?: string } -interface RequestType extends Request { - user?: userAccessType, - encryptedToken?: string -} - class UserGoogleController { constructor() { diff --git a/backend/controllers/userPersonal.ts b/backend/controllers/userPersonal.ts index 2bc403a..328744d 100644 --- a/backend/controllers/userPersonal.ts +++ b/backend/controllers/userPersonal.ts @@ -12,11 +12,6 @@ type userAccessType = { s3Enabled: boolean, } -interface RequestTypeRefresh extends Request { - user?: UserInterface, - encryptedToken?: string -} - interface RequestTypeFullUser extends Request { user?: UserInterface, encryptedToken?: string diff --git a/backend/db/utils/fileUtils/index.ts b/backend/db/utils/fileUtils/index.ts index e553651..4b46270 100644 --- a/backend/db/utils/fileUtils/index.ts +++ b/backend/db/utils/fileUtils/index.ts @@ -78,9 +78,6 @@ class DbUtil { let query: any = {"metadata.owner": new ObjectID(userID)} - // if (s3Enabled) { - // query = {...query, "metadata.personalFile": true} - // } else if (!s3Enabled){ query = {...query, "metadata.personalFile": null} } diff --git a/backend/db/utils/folderUtils/index.ts b/backend/db/utils/folderUtils/index.ts index f6515a8..6dd5919 100644 --- a/backend/db/utils/folderUtils/index.ts +++ b/backend/db/utils/folderUtils/index.ts @@ -27,12 +27,6 @@ class DbUtil { let query: any = {"owner": userID, "parent": parent}; - // if (s3Enabled) { - // query = {...query, "personalFolder": true} - // } else if (!s3Enabled) { - // query = {...query, "personalFolder": null} - // } - if (!s3Enabled) { query = {...query, "personalFolder": null} } @@ -50,12 +44,6 @@ class DbUtil { if (itemType === "nonpersonal") query = {...query, "personalFolder": null} } - // if (storageType === "s3") { - // query = {...query, "personalFolder": true} - // } else { - // query = {...query, "personalFolder": null} - // } - const folderList = await Folder.find(query) .sort(sortBy) as FolderInterface[]; diff --git a/backend/db/utils/googleFileUtils/index.ts b/backend/db/utils/googleFileUtils/index.ts index 7e962c0..8fa15ed 100644 --- a/backend/db/utils/googleFileUtils/index.ts +++ b/backend/db/utils/googleFileUtils/index.ts @@ -1,5 +1,4 @@ import {UserInterface} from "../../../models/user"; -import env from "../../../enviroment/env"; import { google } from "googleapis"; import getGoogleAuth from "../../../db/googleAuth"; import createQueryGoogle, {googleQueryType} from "../../../utils/createQueryGoogle"; diff --git a/backend/db/utils/googleFolderUtils/index.ts b/backend/db/utils/googleFolderUtils/index.ts index 8d47b10..91fea08 100644 --- a/backend/db/utils/googleFolderUtils/index.ts +++ b/backend/db/utils/googleFolderUtils/index.ts @@ -1,8 +1,7 @@ import {UserInterface} from "../../../models/user"; -import env from "../../../enviroment/env"; import { google } from "googleapis"; import getGoogleAuth from "../../../db/googleAuth"; -import createQueryGoogle, {googleQueryType} from "../../../utils/createQueryGoogle"; +import {googleQueryType} from "../../../utils/createQueryGoogle"; import createQueryGoogleFolder from "../../../utils/createQueryGoogleFolder"; const fields = 'id, name, createdTime, parents, mimeType' diff --git a/backend/express-routers/file.ts b/backend/express-routers/file.ts index 60c89f7..694b07c 100644 --- a/backend/express-routers/file.ts +++ b/backend/express-routers/file.ts @@ -49,20 +49,12 @@ router.get("/file-service/quick-list", auth, fileController.getQuickList); router.get("/file-service/list", auth, fileController.getList); -//router.get("/file-service/download/get-token", authFullUser, fileController.getDownloadToken); - -//router.get("/file-service/download/get-token-video", auth, fileController.getDownloadTokenVideo); - router.get("/file-service/download/access-token-stream-video", authFullUser, fileController.getAccessTokenStreamVideo) router.get("/file-service/stream-video/:id", authStreamVideo, fileController.streamVideo); router.delete("/file-service/remove-stream-video-token", authStreamVideo, fileController.removeStreamVideoAccessToken); -//router.get("/file-service/stream-video/:id/:tempToken/:uuid", auth, fileController.streamVideo); - -//router.get("/file-service/stream-video/:id", auth, fileController.streamVideo); - router.get("/file-service/download/:id", authFullUser, fileController.downloadFile); router.get("/file-service/suggested-list", auth, fileController.getSuggestedList); @@ -77,29 +69,18 @@ router.patch("/file-service/move", auth, fileController.moveFile); router.delete("/file-service/remove-link/:id", auth, fileController.removeLink); -//router.delete("/file-service/remove/token-video/:tempToken/:uuid", auth, fileController.removeTempToken); - router.delete("/file-service/remove/token-video/:id", auth, fileController.removeTempToken); router.delete("/file-service/remove", auth, fileController.deleteFile); router.post("/file-service/send-share-email", auth, fileController.sendEmailShare); -// Moving File Accross Databases +export default router; -// router.patch("/file-service/move-db", auth, async(req: RequestType, res) => { +// NO longer needed left for reference -// const user = req.user! -// const fileID = req.body.id; -// const parentFolderID = req.body.parentID; - -// const readStream = chunkService.getFileReadStream(user, fileID); - -// const parentFolder = await Folder.findById(parentFolderID); - -// if (parentFolder?.personalFolder) { - -// } -// }) - -export default router; \ No newline at end of file +//router.delete("/file-service/remove/token-video/:tempToken/:uuid", auth, fileController.removeTempToken); +//router.get("/file-service/stream-video/:id/:tempToken/:uuid", auth, fileController.streamVideo); +//router.get("/file-service/stream-video/:id", auth, fileController.streamVideo); +//router.get("/file-service/download/get-token", authFullUser, fileController.getDownloadToken); +//router.get("/file-service/download/get-token-video", auth, fileController.getDownloadTokenVideo); \ No newline at end of file diff --git a/backend/express-routers/folder.ts b/backend/express-routers/folder.ts index 2e7d15d..23c21c2 100644 --- a/backend/express-routers/folder.ts +++ b/backend/express-routers/folder.ts @@ -44,7 +44,7 @@ router.patch("/folder-service/move", auth, folderController.moveFolder); router.get("/folder-service/subfolder-list-full", auth, folderController.getSubfolderFullList); -// Personal Files +// Personal Folder router.delete("/folder-service-personal/remove", auth, folderController.deletePersonalFolder); diff --git a/backend/express-routers/googleFile.ts b/backend/express-routers/googleFile.ts index ec74f88..ca302c1 100644 --- a/backend/express-routers/googleFile.ts +++ b/backend/express-routers/googleFile.ts @@ -1,5 +1,4 @@ import {Router} from "express"; -import auth from "../middleware/auth"; import GoogleFileController from "../controllers/googleFile"; import authFullUser from "../middleware/authFullUser"; import authStreamVideo from "../middleware/authStreamVideo"; diff --git a/backend/express-routers/googleFolder.ts b/backend/express-routers/googleFolder.ts index 730736d..f6bc6c8 100644 --- a/backend/express-routers/googleFolder.ts +++ b/backend/express-routers/googleFolder.ts @@ -1,5 +1,4 @@ import {Router} from "express"; -import auth from "../middleware/auth"; import GoogleFolderController from "../controllers/googleFolder"; import authFullUser from "../middleware/authFullUser"; diff --git a/backend/express-routers/storage.ts b/backend/express-routers/storage.ts index 641cc40..296f2dc 100644 --- a/backend/express-routers/storage.ts +++ b/backend/express-routers/storage.ts @@ -6,6 +6,8 @@ const storageController = new StorageController(); const router = Router(); +// No longer needed left for reference + // router.get("/storage-service/info", auth, storageController.getStorageInfo); export default router; \ No newline at end of file diff --git a/backend/express-routers/userGoogle.ts b/backend/express-routers/userGoogle.ts index a286bef..b105918 100644 --- a/backend/express-routers/userGoogle.ts +++ b/backend/express-routers/userGoogle.ts @@ -1,5 +1,4 @@ import { Router } from "express"; -import auth from "../middleware/auth"; import UserGoogleController from "../controllers/userGoogle"; import authFullUser from "../middleware/authFullUser"; diff --git a/backend/key/getKey.ts b/backend/key/getKey.ts index ddef6fd..f621bde 100644 --- a/backend/key/getKey.ts +++ b/backend/key/getKey.ts @@ -1,4 +1,3 @@ -const prompt = require('password-prompt') import env from "../enviroment/env"; import crypto from "crypto"; import getWebUIKey from "./getWebUIKey"; diff --git a/backend/middleware/auth.ts b/backend/middleware/auth.ts index 3923a90..3737d2d 100644 --- a/backend/middleware/auth.ts +++ b/backend/middleware/auth.ts @@ -1,5 +1,4 @@ import jwt from "jsonwebtoken"; -import User, {UserInterface} from "../models/user"; import env from "../enviroment/env"; import {Request, Response, NextFunction} from "express"; @@ -27,8 +26,6 @@ const auth = async(req: RequestType, res: Response, next: NextFunction) => { try { - //console.log("\nAUTH RUOTE") - const accessToken = req.cookies["access-token"]; if (!accessToken) throw new Error("No Access Token"); @@ -37,8 +34,6 @@ const auth = async(req: RequestType, res: Response, next: NextFunction) => { const user = decoded.user; - //console.log(user.email); - if (!user) throw new Error("No User"); if (!user.emailVerified && !env.disableEmailVerification) throw new Error("Email Not Verified") @@ -57,151 +52,3 @@ const auth = async(req: RequestType, res: Response, next: NextFunction) => { } export default auth; - - -// import jwt from "jsonwebtoken"; -// import User, {UserInterface} from "../models/user"; -// import env from "../enviroment/env"; -// import {Request, Response, NextFunction} from "express"; - -// interface RequestType extends Request { -// user?: UserInterface, -// token?: string, -// encryptedToken?: string, -// } - -// type jwtType = { -// iv: Buffer, -// _id: string, -// } - -// const auth = async(req: RequestType, res: Response, next: NextFunction) => { - -// try { - -// const token = req.header("Authorization")!.replace("Bearer ", ""); - -// const decoded = jwt.verify(token, env.passwordAccess!) as jwtType; - -// const iv = decoded.iv; - -// const user = await User.findOne({_id: decoded._id}) as UserInterface; -// const encrpytionKey = user.getEncryptionKey(); - -// const encryptedToken = user.encryptToken(token, encrpytionKey, iv); - -// let tokenFound = false; -// for (let i = 0; i < user.tokens.length; i++) { - -// const currentToken = user.tokens[i].token; - -// //console.log("current token", currentToken === encryptedToken) -// if (currentToken === encryptedToken) { -// tokenFound = true; -// break; -// } -// } - -// if (!user || !tokenFound) { - -// throw new Error("User not found") - -// } else if (user.emailVerified && user.botChecked) { - -// // TEMPORARY CHANGE THIS - -// req.token = token; -// req.encryptedToken = encryptedToken -// req.user = user; -// next(); -// } else { -// throw new Error("Email Not Verified, or Bot not checked") -// } - -// } catch (e) { -// console.log(e); -// res.status(401).send({error: "Error Authenticating"}) -// } -// } - -// export default auth; - - - - - - - - - - - - - - - - -// import jwt from "jsonwebtoken"; -// import User, {UserInterface} from "../models/user"; -// import env from "../enviroment/env"; -// import {Request, Response, NextFunction} from "express"; - -// interface RequestType extends Request { -// user?: UserInterface, -// token?: string, -// encryptedToken?: string, -// } - -// type jwtType = { -// iv: Buffer, -// _id: string, -// } - -// const auth = async(req: RequestType, res: Response, next: NextFunction) => { - -// try { - -// const token = req.header("Authorization")!.replace("Bearer ", ""); - -// const decoded = jwt.verify(token, env.passwordAccess!) as jwtType; - -// const iv = decoded.iv; - -// const user = await User.findOne({_id: decoded._id}) as UserInterface; -// const encrpytionKey = user.getEncryptionKey(); - -// const encryptedToken = user.encryptToken(token, encrpytionKey, iv); - -// let tokenFound = false; -// for (let i = 0; i < user.tokens.length; i++) { - -// const currentToken = user.tokens[i].token; - -// //console.log("current token", currentToken === encryptedToken) -// if (currentToken === encryptedToken) { -// tokenFound = true; -// break; -// } -// } - -// if (!user || !tokenFound) { - -// throw new Error("User not found") - -// } else if (user.emailVerified) { - -// req.token = token; -// req.encryptedToken = encryptedToken -// req.user = user; -// next(); -// } else { -// throw new Error("Email Not Verified") -// } - -// } catch (e) { -// console.log(e); -// res.status(401).send({error: "Error Authenticating"}) -// } -// } - -// export default auth; \ No newline at end of file diff --git a/backend/middleware/authFullUser.ts b/backend/middleware/authFullUser.ts index 2ec4fa4..e6c9506 100644 --- a/backend/middleware/authFullUser.ts +++ b/backend/middleware/authFullUser.ts @@ -56,152 +56,4 @@ const authFullUser = async(req: RequestType, res: Response, next: NextFunction) } } -export default authFullUser; - - -// import jwt from "jsonwebtoken"; -// import User, {UserInterface} from "../models/user"; -// import env from "../enviroment/env"; -// import {Request, Response, NextFunction} from "express"; - -// interface RequestType extends Request { -// user?: UserInterface, -// token?: string, -// encryptedToken?: string, -// } - -// type jwtType = { -// iv: Buffer, -// _id: string, -// } - -// const auth = async(req: RequestType, res: Response, next: NextFunction) => { - -// try { - -// const token = req.header("Authorization")!.replace("Bearer ", ""); - -// const decoded = jwt.verify(token, env.passwordAccess!) as jwtType; - -// const iv = decoded.iv; - -// const user = await User.findOne({_id: decoded._id}) as UserInterface; -// const encrpytionKey = user.getEncryptionKey(); - -// const encryptedToken = user.encryptToken(token, encrpytionKey, iv); - -// let tokenFound = false; -// for (let i = 0; i < user.tokens.length; i++) { - -// const currentToken = user.tokens[i].token; - -// //console.log("current token", currentToken === encryptedToken) -// if (currentToken === encryptedToken) { -// tokenFound = true; -// break; -// } -// } - -// if (!user || !tokenFound) { - -// throw new Error("User not found") - -// } else if (user.emailVerified && user.botChecked) { - -// // TEMPORARY CHANGE THIS - -// req.token = token; -// req.encryptedToken = encryptedToken -// req.user = user; -// next(); -// } else { -// throw new Error("Email Not Verified, or Bot not checked") -// } - -// } catch (e) { -// console.log(e); -// res.status(401).send({error: "Error Authenticating"}) -// } -// } - -// export default auth; - - - - - - - - - - - - - - - - -// import jwt from "jsonwebtoken"; -// import User, {UserInterface} from "../models/user"; -// import env from "../enviroment/env"; -// import {Request, Response, NextFunction} from "express"; - -// interface RequestType extends Request { -// user?: UserInterface, -// token?: string, -// encryptedToken?: string, -// } - -// type jwtType = { -// iv: Buffer, -// _id: string, -// } - -// const auth = async(req: RequestType, res: Response, next: NextFunction) => { - -// try { - -// const token = req.header("Authorization")!.replace("Bearer ", ""); - -// const decoded = jwt.verify(token, env.passwordAccess!) as jwtType; - -// const iv = decoded.iv; - -// const user = await User.findOne({_id: decoded._id}) as UserInterface; -// const encrpytionKey = user.getEncryptionKey(); - -// const encryptedToken = user.encryptToken(token, encrpytionKey, iv); - -// let tokenFound = false; -// for (let i = 0; i < user.tokens.length; i++) { - -// const currentToken = user.tokens[i].token; - -// //console.log("current token", currentToken === encryptedToken) -// if (currentToken === encryptedToken) { -// tokenFound = true; -// break; -// } -// } - -// if (!user || !tokenFound) { - -// throw new Error("User not found") - -// } else if (user.emailVerified) { - -// req.token = token; -// req.encryptedToken = encryptedToken -// req.user = user; -// next(); -// } else { -// throw new Error("Email Not Verified") -// } - -// } catch (e) { -// console.log(e); -// res.status(401).send({error: "Error Authenticating"}) -// } -// } - -// export default auth; \ No newline at end of file +export default authFullUser; \ No newline at end of file diff --git a/backend/middleware/authLogout.ts b/backend/middleware/authLogout.ts index 2a1bbe0..37eb311 100644 --- a/backend/middleware/authLogout.ts +++ b/backend/middleware/authLogout.ts @@ -1,5 +1,4 @@ import jwt from "jsonwebtoken"; -import User, {UserInterface} from "../models/user"; import env from "../enviroment/env"; import {Request, Response, NextFunction} from "express"; import { createLogoutCookie } from "../cookies/createCookies"; @@ -50,132 +49,4 @@ const auth = async(req: RequestType, res: Response, next: NextFunction) => { } } -export default auth; - - -// import jwt from "jsonwebtoken"; -// import User, {UserInterface} from "../models/user"; -// import env from "../enviroment/env"; -// import {Request, Response, NextFunction} from "express"; - -// interface RequestType extends Request { -// user?: UserInterface, -// token?: string, -// encryptedToken?: string, -// } - -// type jwtType = { -// iv: Buffer, -// _id: string, -// } - -// const auth = async(req: RequestType, res: Response, next: NextFunction) => { - -// try { - -// const token = req.header("Authorization")!.replace("Bearer ", ""); - -// const decoded = jwt.verify(token, env.passwordAccess!) as jwtType; - -// const iv = decoded.iv; - -// const user = await User.findOne({_id: decoded._id}) as UserInterface; -// const encrpytionKey = user.getEncryptionKey(); - -// const encryptedToken = user.encryptToken(token, encrpytionKey, iv); - -// let tokenFound = false; -// for (let i = 0; i < user.tokens.length; i++) { - -// const currentToken = user.tokens[i].token; - -// if (currentToken === encryptedToken) { -// tokenFound = true; -// break; -// } -// } - -// if (!user || !tokenFound) { - -// throw new Error("User not found") - -// } else { -// req.token = token; -// req.encryptedToken = encryptedToken -// req.user = user; -// next(); -// } - -// } catch (e) { -// console.log(e); -// res.status(401).send({error: "Error Authenticating"}) -// } -// } - -// export default auth; - - - - - - -// import jwt from "jsonwebtoken"; -// import User, {UserInterface} from "../models/user"; -// import env from "../enviroment/env"; -// import {Request, Response, NextFunction} from "express"; - -// interface RequestType extends Request { -// user?: UserInterface, -// token?: string, -// encryptedToken?: string, -// } - -// type jwtType = { -// iv: Buffer, -// _id: string, -// } - -// const auth = async(req: RequestType, res: Response, next: NextFunction) => { - -// try { - -// const token = req.header("Authorization")!.replace("Bearer ", ""); - -// const decoded = jwt.verify(token, env.passwordAccess!) as jwtType; - -// const iv = decoded.iv; - -// const user = await User.findOne({_id: decoded._id}) as UserInterface; -// const encrpytionKey = user.getEncryptionKey(); - -// const encryptedToken = user.encryptToken(token, encrpytionKey, iv); - -// let tokenFound = false; -// for (let i = 0; i < user.tokens.length; i++) { - -// const currentToken = user.tokens[i].token; - -// if (currentToken === encryptedToken) { -// tokenFound = true; -// break; -// } -// } - -// if (!user || !tokenFound) { - -// throw new Error("User not found") - -// } else { -// req.token = token; -// req.encryptedToken = encryptedToken -// req.user = user; -// next(); -// } - -// } catch (e) { -// console.log(e); -// res.status(401).send({error: "Error Authenticating"}) -// } -// } - -// export default auth; \ No newline at end of file +export default auth; \ No newline at end of file diff --git a/backend/middleware/authNoEmailVerificication.ts b/backend/middleware/authNoEmailVerificication.ts index 6bca60a..900a49d 100644 --- a/backend/middleware/authNoEmailVerificication.ts +++ b/backend/middleware/authNoEmailVerificication.ts @@ -54,132 +54,4 @@ const auth = async(req: RequestType, res: Response, next: NextFunction) => { } } -export default auth; - - -// import jwt from "jsonwebtoken"; -// import User, {UserInterface} from "../models/user"; -// import env from "../enviroment/env"; -// import {Request, Response, NextFunction} from "express"; - -// interface RequestType extends Request { -// user?: UserInterface, -// token?: string, -// encryptedToken?: string, -// } - -// type jwtType = { -// iv: Buffer, -// _id: string, -// } - -// const auth = async(req: RequestType, res: Response, next: NextFunction) => { - -// try { - -// const token = req.header("Authorization")!.replace("Bearer ", ""); - -// const decoded = jwt.verify(token, env.passwordAccess!) as jwtType; - -// const iv = decoded.iv; - -// const user = await User.findOne({_id: decoded._id}) as UserInterface; -// const encrpytionKey = user.getEncryptionKey(); - -// const encryptedToken = user.encryptToken(token, encrpytionKey, iv); - -// let tokenFound = false; -// for (let i = 0; i < user.tokens.length; i++) { - -// const currentToken = user.tokens[i].token; - -// if (currentToken === encryptedToken) { -// tokenFound = true; -// break; -// } -// } - -// if (!user || !tokenFound) { - -// throw new Error("User not found") - -// } else { -// req.token = token; -// req.encryptedToken = encryptedToken -// req.user = user; -// next(); -// } - -// } catch (e) { -// console.log(e); -// res.status(401).send({error: "Error Authenticating"}) -// } -// } - -// export default auth; - - - - - - -// import jwt from "jsonwebtoken"; -// import User, {UserInterface} from "../models/user"; -// import env from "../enviroment/env"; -// import {Request, Response, NextFunction} from "express"; - -// interface RequestType extends Request { -// user?: UserInterface, -// token?: string, -// encryptedToken?: string, -// } - -// type jwtType = { -// iv: Buffer, -// _id: string, -// } - -// const auth = async(req: RequestType, res: Response, next: NextFunction) => { - -// try { - -// const token = req.header("Authorization")!.replace("Bearer ", ""); - -// const decoded = jwt.verify(token, env.passwordAccess!) as jwtType; - -// const iv = decoded.iv; - -// const user = await User.findOne({_id: decoded._id}) as UserInterface; -// const encrpytionKey = user.getEncryptionKey(); - -// const encryptedToken = user.encryptToken(token, encrpytionKey, iv); - -// let tokenFound = false; -// for (let i = 0; i < user.tokens.length; i++) { - -// const currentToken = user.tokens[i].token; - -// if (currentToken === encryptedToken) { -// tokenFound = true; -// break; -// } -// } - -// if (!user || !tokenFound) { - -// throw new Error("User not found") - -// } else { -// req.token = token; -// req.encryptedToken = encryptedToken -// req.user = user; -// next(); -// } - -// } catch (e) { -// console.log(e); -// res.status(401).send({error: "Error Authenticating"}) -// } -// } - -// export default auth; \ No newline at end of file +export default auth; \ No newline at end of file diff --git a/backend/middleware/authStreamVideo.ts b/backend/middleware/authStreamVideo.ts index 56e7895..9de4241 100644 --- a/backend/middleware/authStreamVideo.ts +++ b/backend/middleware/authStreamVideo.ts @@ -11,26 +11,12 @@ interface RequestType extends Request { accessTokenStreamVideo?: string } -// type jwtType = { -// iv: Buffer, -// user: userAccessType -// } - type jwtType = { iv: Buffer, _id: string, time: number } -type userAccessType = { - _id: string, - emailVerified: boolean, - email: string, - admin: boolean, - botChecked: boolean, - username: string, -} - const removeOldTokens = async(userID: string, ipAddress: string | undefined, oldTime: number) => { try { diff --git a/backend/models/user.ts b/backend/models/user.ts index a33f57b..fb3c36a 100644 --- a/backend/models/user.ts +++ b/backend/models/user.ts @@ -93,18 +93,6 @@ const userSchema = new mongoose.Schema({ token: { type: String } - // accessToken: { - // type: String - // }, - // refreshToken: { - // type: String - // }, - // tokenType: { - // type: String - // }, - // expiryDate: { - // type: String - // } }, s3Enabled: { type: Boolean @@ -165,10 +153,6 @@ export interface UserInterface extends Document { id?: string, key?: string, iv?: Buffer, - // accessToken?: string, - // refreshToken?: string, - // tokenType?: string, - // expiryDate?: string, token?: string, }, s3Enabled?: boolean, @@ -200,27 +184,22 @@ export interface UserInterface extends Document { lastSubscriptionStatus?: boolean, getEncryptionKey: () => Buffer | undefined; - generateTempAuthToken: () => any; - // generateTempAuthTokenVideo: (cookie: string) => any; + generateTempAuthToken: () => Promise; encryptToken: (tempToken: any, key: any, publicKey: any) => any; decryptToken: (encryptedToken: any, key: any, publicKey: any) => any; - findByCreds: (email: string, password: string) => UserInterface; + findByCreds: (email: string, password: string) => Promise; generateAuthToken: (ipAddress: string | undefined) => Promise<{accessToken: string, refreshToken: string}> generateAuthTokenStreamVideo: (ipAddress: string | undefined) => Promise generateEncryptionKeys: () => Promise; - changeEncryptionKey: (randomKey: Buffer) => void; - generateEmailVerifyToken: () => string; - generatePasswordResetToken: () => string; + changeEncryptionKey: (randomKey: Buffer) => Promise; + generateEmailVerifyToken: () => Promise; + generatePasswordResetToken: () => Promise; encryptDriveIDandKey: (ID:string, key: string) => Promise; - decryptDriveIDandKey: () => {clientID: string, clientKey: string}; - encryptDriveTokenData: (token: Object) => void; - decryptDriveTokenData: () => any; - encryptS3Data: (id: string, key: string, bucket: string) => void; - decryptS3Data: () => { - id: string, - key: string, - bucket: string - } + decryptDriveIDandKey: () => Promise<{clientID: string, clientKey: string}>; + encryptDriveTokenData: (token: Object) => Promise; + decryptDriveTokenData: () => Promise; + encryptS3Data: (id: string, key: string, bucket: string) => Promise; + decryptS3Data: () => Promise<{id: string, key: string, bucket: string}> } const maxAgeAccess = 60 * 1000 * 20 + (1000 * 60); diff --git a/backend/services/ChunkService/FileSystemService.ts b/backend/services/ChunkService/FileSystemService.ts index b930dac..d66d71f 100644 --- a/backend/services/ChunkService/FileSystemService.ts +++ b/backend/services/ChunkService/FileSystemService.ts @@ -14,7 +14,6 @@ import getFileSize from "./utils/getFileSize"; import DbUtilFile from "../../db/utils/fileUtils/index"; import awaitStream from "./utils/awaitStream"; import createThumbnailAny from "./utils/createThumbailAny"; -import createThumbnailFS from "./utils/createThumbnailFS"; import imageChecker from "../../utils/imageChecker"; import Thumbnail, {ThumbnailInterface} from "../../models/thumbnail"; import streamToBuffer from "../../utils/streamToBuffer"; @@ -29,7 +28,6 @@ import addToStoageSize from "./utils/addToStorageSize"; import subtractFromStorageSize from "./utils/subtractFromStorageSize"; import ForbiddenError from "../../utils/ForbiddenError"; import { ObjectID } from "mongodb"; -const StreamSkip = require("stream-skip"); const dbUtilsFile = new DbUtilFile(); diff --git a/backend/services/FileService/index.ts b/backend/services/FileService/index.ts index ab1918f..9a25e3a 100644 --- a/backend/services/FileService/index.ts +++ b/backend/services/FileService/index.ts @@ -161,9 +161,7 @@ class MongoFileService { return tempToken; } - getAccessTokenStreamVideo = async() => { - - } + // No longer needed left for reference // getDownloadTokenVideo = async(user: UserInterface, cookie: string) => { diff --git a/backend/services/FolderService/index.ts b/backend/services/FolderService/index.ts index 871f9bf..2530a2c 100644 --- a/backend/services/FolderService/index.ts +++ b/backend/services/FolderService/index.ts @@ -184,8 +184,6 @@ class FolderService { currentID = currentFolder.parent; } - // console.log("SENDING FOLDER LIST FULL MONGO", folderList) - return folderList; } diff --git a/backend/services/GoogleFileService/index.ts b/backend/services/GoogleFileService/index.ts index daa46dd..59cbd3e 100644 --- a/backend/services/GoogleFileService/index.ts +++ b/backend/services/GoogleFileService/index.ts @@ -2,7 +2,6 @@ import { UserInterface } from "../../models/user"; import getGoogleAuth from "../../db/googleAuth"; import {google} from "googleapis"; import convertDriveListToMongoList from "../../utils/convertDriveListToMongoList"; -import createQueryGoogle from "../../utils/createQueryGoogle"; import FileService from "../FileService"; import sortGoogleMongoList from "../../utils/sortGoogleMongoList"; import convertDriveToMongo from "../../utils/convertDriveToMongo"; diff --git a/backend/services/GoogleFolderService/index.ts b/backend/services/GoogleFolderService/index.ts index 32fec4d..78321cd 100644 --- a/backend/services/GoogleFolderService/index.ts +++ b/backend/services/GoogleFolderService/index.ts @@ -2,11 +2,10 @@ import { UserInterface } from "../../models/user"; import getGoogleAuth from "../../db/googleAuth"; import {google} from "googleapis"; import convertDriveFoldersToMongoFolders from "../../utils/convertDriveFoldersToMongoFolders"; -import createQueryGoogleFolder from "../../utils/createQueryGoogleFolder"; import FolderService from "../FolderService"; import sortGoogleMongoFolderList from "../../utils/sortGoogleMongoFolderList"; import convertDriveFolderToMongoFolder from "../../utils/convertDriveFolderToMongoFolder"; -import createQueryGoogle, {googleQueryType} from "../../utils/createQueryGoogle"; +import {googleQueryType} from "../../utils/createQueryGoogle"; import GoogleDbFolderUtils from "../../db/utils/googleFolderUtils"; const googleDbFolderUtils = new GoogleDbFolderUtils(); diff --git a/backend/services/UserService/index.ts b/backend/services/UserService/index.ts index 2579e68..b8a6cf2 100644 --- a/backend/services/UserService/index.ts +++ b/backend/services/UserService/index.ts @@ -2,7 +2,6 @@ import User, {UserInterface} from "../../models/user"; import bcrypt from "bcrypt"; import NotFoundError from "../../utils/NotFoundError"; import InternalServerError from "../../utils/InternalServerError"; -import NotAuthorizedError from "../../utils/NotAuthorizedError"; import sendEmailVerification from "../../utils/sendVerificationEmail"; import File from "../../models/file"; import env from "../../enviroment/env"; @@ -48,7 +47,6 @@ class UserService { const {accessToken, refreshToken} = await user.generateAuthToken(ipAddress); if (!accessToken || !refreshToken) throw new NotFoundError("Login User Not Found Error"); - //if (!user.emailVerified) throw new NotEmailVertifiedError("Email Address Not Verified") return {user, accessToken, refreshToken} } @@ -78,12 +76,6 @@ class UserService { } await user.save(); - - // user.tokens = user.tokens.filter((token) => { - // return token.token !== userToken; - // }) - - // await user.save(); } logoutAll = async(userID: string) => { @@ -96,11 +88,6 @@ class UserService { user.tempTokens = []; await user.save(); - - // user.tokens = [] - // user.tempTokens = []; - - // await user.save(); } create = async(userData: any, ipAddress: string | undefined) => { @@ -141,25 +128,6 @@ class UserService { user.tokens = []; user.tempTokens = []; user.passwordLastModified = date.getTime(); - - // if (oldRefreshToken) { - // const decoded = jwt.verify(oldRefreshToken, env.passwordRefresh!) as jwtType; - // const encrpytionKey = user.getEncryptionKey(); - // const encryptedToken = user.encryptToken(oldRefreshToken, encrpytionKey, decoded.iv); - - // for (let i = 0; i < user.tokens.length; i++) { - - // const currentEncryptedToken = user.tokens[i].token; - - // if (currentEncryptedToken === encryptedToken) { - - // console.log("Refresh Token Found Logout!"); - // user.tokens.splice(i, 1); - // await user.save(); - // break; - // } - // } - // } await user.save(); await user.changeEncryptionKey(encryptionKey!); @@ -167,27 +135,6 @@ class UserService { const {accessToken, refreshToken} = await user.generateAuthToken(ipAddress); return {accessToken, refreshToken}; - - // const date = new Date(); - - // const isMatch = await bcrypt.compare(oldPassword, user.password); - - // if (!isMatch) throw new NotAuthorizedError("Change Passwords Do Not Match Error"); - - // const encryptionKey = user.getEncryptionKey(); - - // user.password = newPassword; - - // user.tokens = []; - // user.tempTokens = []; - // user.passwordLastModified = date.getTime(); - - // await user.save(); - // await user.changeEncryptionKey(encryptionKey!); - - // const newToken = await user.generateAuthToken(); - - // return newToken; } refreshStorageSize = async(userID: string) => { diff --git a/src/components/PopupWindow/PopupWindow.js b/src/components/PopupWindow/PopupWindow.js index f5361aa..8cde7dd 100644 --- a/src/components/PopupWindow/PopupWindow.js +++ b/src/components/PopupWindow/PopupWindow.js @@ -42,6 +42,7 @@ class PopupWindow extends React.Component { }
+

Location: {this.props.popupFile.metadata.drive ? "Google Drive" : this.props.popupFile.metadata.personalFile ? "Amazon S3" : "myDrive"}

File Size: {bytes(+this.props.popupFile.metadata.size)}

Created: {moment(this.props.popupFile.uploadDate).format("L")}