Bladeren bron

fix(Register): action now resolves properly (job queue hangup with getting random string)

Signed-off-by: Jonathan <theflametrooper@gmail.com>
Jonathan 4 jaren geleden
bovenliggende
commit
79b6ecaa44
3 gewijzigde bestanden met toevoegingen van 13 en 19 verwijderingen
  1. 8 3
      backend/logic/actions/stations.js
  2. 4 15
      backend/logic/actions/users.js
  3. 1 1
      backend/logic/app.js

+ 8 - 3
backend/logic/actions/stations.js

@@ -57,9 +57,13 @@ CacheModule.runJob("SUB", {
 							key: session.sessionId
 						}).then(session => {
 							if (session)
-								DBModule.runJob("GET_MODEL", {
-									modelName: "user"
-								}).then(userModel =>
+								DBModule.runJob(
+									"GET_MODEL",
+									{
+										modelName: "user"
+									},
+									this
+								).then(userModel =>
 									userModel.findOne({ _id: session.userId }, (err, user) => {
 										if (user.role === "admin")
 											socket.dispatch("event:userCount.updated", stationId, count);
@@ -820,6 +824,7 @@ export default {
 					this.log("ERROR", "STATIONS_JOIN", `Joining station "${stationIdentifier}" failed. "${err}"`);
 					return cb({ status: "failure", message: err });
 				}
+
 				this.log("SUCCESS", "STATIONS_JOIN", `Joined station "${data._id}" successfully.`);
 				return cb({ status: "success", data });
 			}

+ 4 - 15
backend/logic/actions/users.js

@@ -349,13 +349,8 @@ export default {
 	 */
 	async register(session, username, email, password, recaptcha, cb) {
 		email = email.toLowerCase();
-		const verificationToken = await UtilsModule.runJob(
-			"GENERATE_RANDOM_STRING",
-			{
-				length: 64
-			},
-			this
-		);
+		const verificationToken = await UtilsModule.runJob("GENERATE_RANDOM_STRING", { length: 64 }, this);
+
 		const userModel = await DBModule.runJob("GET_MODEL", { modelName: "user" }, this);
 		const verifyEmailSchema = await MailModule.runJob(
 			"GET_SCHEMA",
@@ -391,7 +386,7 @@ export default {
 							})
 							.then(res => next(null, res.data))
 							.catch(err => next(err));
-					else next(null, null, null);
+					else next(null, null);
 				},
 
 				// check if the response from Google recaptcha is successful
@@ -447,13 +442,7 @@ export default {
 
 				// generate the url for gravatar avatar
 				(user, next) => {
-					UtilsModule.runJob(
-						"CREATE_GRAVATAR",
-						{
-							email: user.email.address
-						},
-						this
-					).then(url => {
+					UtilsModule.runJob("CREATE_GRAVATAR", { email: user.email.address }, this).then(url => {
 						user.avatar = {
 							type: "gravatar",
 							url

+ 1 - 1
backend/logic/app.js

@@ -135,7 +135,7 @@ class _AppModule extends CoreClass {
 
 				const { state } = req.query;
 
-				const verificationToken = await UtilsModule.runJob("GENERATE_RANDOM_STRING", { length: 64 });
+				const verificationToken = await UtilsModule.runJob("GENERATE_RANDOM_STRING", { length: 64 }, this);
 
 				return async.waterfall(
 					[