diff --git a/.gitignore b/.gitignore
index 1017d8ff..0d0b4aab 100755
--- a/.gitignore
+++ b/.gitignore
@@ -68,3 +68,4 @@ assets/.DS_Store
#secrets
secret.yaml
+package-lock.json
diff --git a/assets/email/statusEmail/Checked-in.hbs b/assets/email/statusEmail/Checked-in.hbs
index 4c0bf4c3..6f029786 100644
--- a/assets/email/statusEmail/Checked-in.hbs
+++ b/assets/email/statusEmail/Checked-in.hbs
@@ -390,11 +390,8 @@
This email is to confirm your check-in at McHacks!
Don't forget to join the McHacks participants Facebook
- group and Slack
+ href="https://discord.com/invite/fqbjr43cKf"
+ style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#F2463A;text-decoration:none;">Discord
for announcements, to chat with other hackers, ask questions, and form
teams!
diff --git a/constants/role.constant.js b/constants/role.constant.js
index dfee5c3e..562a85e8 100644
--- a/constants/role.constant.js
+++ b/constants/role.constant.js
@@ -37,6 +37,7 @@ const hackerRole = {
Constants.Routes.hackerRoutes.patchSelfById,
Constants.Routes.hackerRoutes.patchSelfConfirmationById,
Constants.Routes.hackerRoutes.getSelf,
+ Constants.Routes.hackerRoutes.postDiscord,
Constants.Routes.travelRoutes.getSelf,
Constants.Routes.travelRoutes.getSelfById,
diff --git a/constants/routes.constant.js b/constants/routes.constant.js
index 79d4c460..e880674d 100644
--- a/constants/routes.constant.js
+++ b/constants/routes.constant.js
@@ -6,7 +6,7 @@
* ===***===***===***===***===***===***===***===***===
*
* If you are adding a route to this list, update this number
- * next avaiable createFromTime value: 166
+ * next avaiable createFromTime value: 168
*
* If you are deleting a route from this list, please add the ID to the list of 'reserved' IDs,
* so that we don't accidentally assign someone to a given ID.
@@ -203,6 +203,12 @@ const hackerRoutes = {
uri: "/api/hacker/email/dayOf/" + Constants.ROLE_CATEGORIES.SELF,
_id: mongoose.Types.ObjectId.createFromTime(134)
}
+ // },
+ // postDiscord: {
+ // requestType: Constants.REQUEST_TYPES.POST,
+ // uri: "/api/hacker/discord",
+ // _id: mongoose.Types.ObjectId.createFromTime(167)
+ // }
};
const travelRoutes = {
@@ -363,6 +369,11 @@ const staffRoutes = {
requestType: Constants.REQUEST_TYPES.GET,
uri: "/api/account/invite",
_id: mongoose.Types.ObjectId.createFromTime(162)
+ },
+ postDiscord: {
+ requestType: Constants.REQUEST_TYPES.POST,
+ uri: "/api/hacker/discord",
+ _id: mongoose.Types.ObjectId.createFromTime(167)
}
};
diff --git a/middlewares/hacker.middleware.js b/middlewares/hacker.middleware.js
index fa75accb..26935ade 100644
--- a/middlewares/hacker.middleware.js
+++ b/middlewares/hacker.middleware.js
@@ -874,6 +874,11 @@ async function getStats(req, res, next) {
next();
}
+function addIdToCheckStatus(req, res, next) {
+ req.params.id = req.body.hacker.id;
+ return next();
+}
+
module.exports = {
parsePatch: parsePatch,
parseHacker: parseHacker,
@@ -929,5 +934,6 @@ module.exports = {
findByEmail: Middleware.Util.asyncMiddleware(findByEmail),
obtainEmailByHackerId: Middleware.Util.asyncMiddleware(
obtainEmailByHackerId
- )
+ ),
+ addIdToCheckStatus: addIdToCheckStatus
};
diff --git a/package-lock.json b/package-lock.json
index 6dc97087..26be99d7 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,11 +1,11 @@
{
"name": "hackerAPI",
- "version": "3.1.3",
+ "version": "3.1.6",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
- "version": "3.1.3",
+ "version": "3.1.6",
"dependencies": {
"@google-cloud/storage": "^5.8.5",
"@sendgrid/mail": "^6.5.5",
diff --git a/routes/api/hacker.js b/routes/api/hacker.js
index d3da1d65..77cb1d43 100644
--- a/routes/api/hacker.js
+++ b/routes/api/hacker.js
@@ -905,6 +905,23 @@ module.exports = {
Controllers.Hacker.sentDayOfEmail
);
+ hackerRouter.route("/discord").post(
+ Middleware.Auth.ensureAuthenticated(),
+ Middleware.Auth.ensureAuthorized(),
+
+ // Middleware.parseBody.middleware,
+ Middleware.Hacker.findByEmail,
+ Middleware.Hacker.addIdToCheckStatus,
+ Middleware.Hacker.checkStatus([
+ CONSTANTS.HACKER_STATUS_ACCEPTED,
+ CONSTANTS.HACKER_STATUS_CONFIRMED
+ ]),
+ Middleware.Hacker.parseCheckIn,
+ Middleware.Hacker.updateHacker,
+ Middleware.Hacker.sendStatusUpdateEmail,
+ Controllers.Hacker.updatedHacker
+ );
+
apiRouter.use("/hacker", hackerRouter);
}
};