From cebf38bf3056b4bd37beeb1ae74105b3c06941f6 Mon Sep 17 00:00:00 2001 From: RohitGarudadri Date: Wed, 1 Jan 2020 16:41:06 -0500 Subject: [PATCH 1/3] Added check to prevent creating application after the deadline has passed --- .github/CHANGELOG.md | 1 + constants/general.constant.js | 7 ++++--- services/hacker.service.js | 8 ++++++-- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/.github/CHANGELOG.md b/.github/CHANGELOG.md index a31bc3a3..f73728b4 100644 --- a/.github/CHANGELOG.md +++ b/.github/CHANGELOG.md @@ -11,6 +11,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Add email blast marketing email - Add 3 days left marketing email +- Add check to ensure application creation deadline has not passed yet ### Fixed diff --git a/constants/general.constant.js b/constants/general.constant.js index ab21eb18..be90826c 100644 --- a/constants/general.constant.js +++ b/constants/general.constant.js @@ -25,6 +25,8 @@ const HACKER_STATUSES = [ HACKER_STATUS_CHECKED_IN, HACKER_STATUS_DECLINED ]; +// This date is Jan 3, 2020 11:59:59PM EST +const CREATE_APPLICATION_DEADLINE = 1578070799000; const SAMPLE_DIET_RESTRICTIONS = [ "None", @@ -111,9 +113,7 @@ const MAX_TEAM_SIZE = 4; const WEEK_OF = "Week Of"; const EMAIL_SUBJECTS = {}; -EMAIL_SUBJECTS[ - HACKER_STATUS_NONE -] = `Get started on your application!`; +EMAIL_SUBJECTS[HACKER_STATUS_NONE] = `Get started on your application!`; EMAIL_SUBJECTS[ HACKER_STATUS_APPLIED ] = `Thanks for applying to ${HACKATHON_NAME}!`; @@ -160,6 +160,7 @@ module.exports = { HACKER_STATUS_WITHDRAWN: HACKER_STATUS_WITHDRAWN, HACKER_STATUS_CHECKED_IN: HACKER_STATUS_CHECKED_IN, HACKER_STATUSES: HACKER_STATUSES, + CREATE_APPLICATION_DEADLINE: CREATE_APPLICATION_DEADLINE, REQUEST_TYPES: REQUEST_TYPES, JOB_INTERESTS: JOB_INTERESTS, SHIRT_SIZES: SHIRT_SIZES, diff --git a/services/hacker.service.js b/services/hacker.service.js index 8e0ea501..e73af26e 100644 --- a/services/hacker.service.js +++ b/services/hacker.service.js @@ -17,9 +17,13 @@ const QRCode = require("qrcode"); function createHacker(hackerDetails) { const TAG = `[Hacker Service # createHacker]:`; - const hacker = new Hacker(hackerDetails); + let hacker; - return hacker.save(); + if (Date.now() < Constants.CREATE_APPLICATION_DEADLINE) { + hacker = new Hacker(hackerDetails); + return hacker.save(); + } + throw new Error("Application creation deadline has passed!"); } /** From 60de0535ee1b26338d9f965f4c215aa07056dea5 Mon Sep 17 00:00:00 2001 From: RohitGarudadri Date: Wed, 1 Jan 2020 16:46:13 -0500 Subject: [PATCH 2/3] Renamed constant --- constants/general.constant.js | 4 ++-- services/hacker.service.js | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/constants/general.constant.js b/constants/general.constant.js index be90826c..52c7b56c 100644 --- a/constants/general.constant.js +++ b/constants/general.constant.js @@ -26,7 +26,7 @@ const HACKER_STATUSES = [ HACKER_STATUS_DECLINED ]; // This date is Jan 3, 2020 11:59:59PM EST -const CREATE_APPLICATION_DEADLINE = 1578070799000; +const APPLICATION_CLOSE_TIME = 1578070799000; const SAMPLE_DIET_RESTRICTIONS = [ "None", @@ -160,7 +160,7 @@ module.exports = { HACKER_STATUS_WITHDRAWN: HACKER_STATUS_WITHDRAWN, HACKER_STATUS_CHECKED_IN: HACKER_STATUS_CHECKED_IN, HACKER_STATUSES: HACKER_STATUSES, - CREATE_APPLICATION_DEADLINE: CREATE_APPLICATION_DEADLINE, + APPLICATION_CLOSE_TIME: APPLICATION_CLOSE_TIME, REQUEST_TYPES: REQUEST_TYPES, JOB_INTERESTS: JOB_INTERESTS, SHIRT_SIZES: SHIRT_SIZES, diff --git a/services/hacker.service.js b/services/hacker.service.js index e73af26e..1c7560b2 100644 --- a/services/hacker.service.js +++ b/services/hacker.service.js @@ -19,7 +19,7 @@ function createHacker(hackerDetails) { let hacker; - if (Date.now() < Constants.CREATE_APPLICATION_DEADLINE) { + if (Date.now() < Constants.APPLICATION_CLOSE_TIME) { hacker = new Hacker(hackerDetails); return hacker.save(); } From f950b9deaa9874d81206e9093aa79741530de552 Mon Sep 17 00:00:00 2001 From: RohitGarudadri Date: Wed, 1 Jan 2020 16:48:53 -0500 Subject: [PATCH 3/3] Fixed error message --- services/hacker.service.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/hacker.service.js b/services/hacker.service.js index 1c7560b2..8cc7f262 100644 --- a/services/hacker.service.js +++ b/services/hacker.service.js @@ -23,7 +23,7 @@ function createHacker(hackerDetails) { hacker = new Hacker(hackerDetails); return hacker.save(); } - throw new Error("Application creation deadline has passed!"); + throw new Error("Sorry, the application deadline has passed!"); } /**