diff --git a/backend/controllers/user.ts b/backend/controllers/user.ts index 143f0a6..83f66b2 100644 --- a/backend/controllers/user.ts +++ b/backend/controllers/user.ts @@ -266,8 +266,13 @@ class UserController { try { const verifyToken = req.body.emailToken; + const ipAddress = req.clientIp; - await UserProvider.verifyEmail(verifyToken); + const user = await UserProvider.verifyEmail(verifyToken); + + const {accessToken, refreshToken} = await user.generateAuthToken(ipAddress); + + createLoginCookie(res, accessToken, refreshToken); res.send(); diff --git a/backend/express-routers/storage.ts b/backend/express-routers/storage.ts index abbdc6d..641cc40 100644 --- a/backend/express-routers/storage.ts +++ b/backend/express-routers/storage.ts @@ -6,6 +6,6 @@ const storageController = new StorageController(); const router = Router(); -router.get("/storage-service/info", auth, storageController.getStorageInfo); +// router.get("/storage-service/info", auth, storageController.getStorageInfo); export default router; \ No newline at end of file diff --git a/backend/services/UserService/index.ts b/backend/services/UserService/index.ts index 656774f..ed6ca81 100644 --- a/backend/services/UserService/index.ts +++ b/backend/services/UserService/index.ts @@ -143,24 +143,24 @@ class UserService { 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); + // 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++) { + // for (let i = 0; i < user.tokens.length; i++) { - const currentEncryptedToken = user.tokens[i].token; + // const currentEncryptedToken = user.tokens[i].token; - if (currentEncryptedToken === encryptedToken) { + // if (currentEncryptedToken === encryptedToken) { - console.log("Refresh Token Found Logout!"); - user.tokens.splice(i, 1); - await user.save(); - break; - } - } - } + // console.log("Refresh Token Found Logout!"); + // user.tokens.splice(i, 1); + // await user.save(); + // break; + // } + // } + // } await user.save(); await user.changeEncryptionKey(encryptionKey!); @@ -276,6 +276,8 @@ class UserService { if (encryptedToken === user.emailToken) { user.emailVerified = true; await user.save(); + return user; + } else { throw new ForbiddenError('Email Token Verification Failed') } diff --git a/src/actions/storage.js b/src/actions/storage.js index 22f6cb8..61b2b4e 100644 --- a/src/actions/storage.js +++ b/src/actions/storage.js @@ -10,6 +10,8 @@ export const startSetStorage = () => { return (dispatch) => { + return; + if (env.disableStorage === "true") { return; } diff --git a/src/components/LoginPage/LoginPage.js b/src/components/LoginPage/LoginPage.js index a744c45..85bbf80 100755 --- a/src/components/LoginPage/LoginPage.js +++ b/src/components/LoginPage/LoginPage.js @@ -35,6 +35,7 @@ const LoginPage = (props) => {
We've sent a confirmation email to {env.emailAddress ? env.emailAddress.length !== 0 ? env.emailAddress : props.state.email : props.state.email}.
+Refresh this page after confirming email.