200 Commits

Author SHA1 Message Date
ba86bf3ada New custom errors to throw. 2021-01-26 23:01:18 +01:00
f4a16bc417 Removed always setting isAdmin true. 2021-01-26 23:01:08 +01:00
4c33708ff4 Made some required wine attributes optional. 2021-01-26 22:59:46 +01:00
87257fd5b2 Moved everything not lottery out.
Moved all logic related to lotteryAttendees, lotteryWinners and
prelotteryWines into each their repository and controller.

Now only holds draw, archive and get archived lotteries.
2021-01-26 22:58:41 +01:00
ac829052b6 Wine models now have extra year field. 2021-01-26 22:55:43 +01:00
1b1a99ccc3 Linting and more clear function names. 2021-01-26 22:43:18 +01:00
5e018f071d Prize distribution for selecting wines.
Moved the same functionality out from lottery.js and simplified a bit.
Now the backend also sends with wines to pick from.
When hitting the controller we check that the user is the next user in
line.
2021-01-26 22:42:33 +01:00
939e7e34df All CRUDS on winners for current lottery. 2021-01-26 22:37:36 +01:00
33070ae31a Keeps more information when adding prelottery wine 2021-01-26 22:35:12 +01:00
6e02c5e393 Reflecting changes, isolated winner from lottery. 2021-01-26 22:32:14 +01:00
b596dc28e8 Prelotterywine has it's own repo and ctrl. 2021-01-26 22:30:19 +01:00
03c0513da3 Rm from lottery.js attendee has own repo and ctrl. 2021-01-26 22:28:27 +01:00
afab4387cc Renamed winner.js to history.js. 2021-01-26 22:18:47 +01:00
1c1f52308f Add winner w/ wine to highscore. 2021-01-26 22:12:42 +01:00
f5d3b16f27 isAdmin default value = false. 2021-01-24 15:36:03 +01:00
b5b61784cc Add winners manually by posting /lottery/winners. 2021-01-24 15:34:58 +01:00
2f3a6aeba7 Catch exceptions when deleting wines from lottery. 2021-01-24 14:03:27 +01:00
84fa1ff925 Linted. 2021-01-24 14:02:53 +01:00
53135acc05 Get/add/update/delete winners from lottery. 2021-01-24 14:01:36 +01:00
fac50805bd Get stores from vinmonopolet.
Update all endpoint names to distinguish between wine and store actions.
Renamed wineController to vinmonopoletController.
2021-01-24 14:01:04 +01:00
6d5f0e824f Lottery wine functions & controller.
Split all wine/prelottrey wines into separate controller.
Now also have endpoints for deleting or updating single wine by id.
2021-01-24 12:12:52 +01:00
4d822ccb64 Isolated lottery attendee functs to it's own file. 2021-01-24 11:10:49 +01:00
7aa5f7e9ce Add, update and delete attendees to lottery. 2021-01-24 11:02:04 +01:00
18d8c2c7ca Lottery, get/delete attendees.
Changed so get attendees no longer is done in two endpoints, now we use
req.isAuthenticated() to check if we want to return full or minimal json
data about each attendee.
2021-01-24 10:14:00 +01:00
edc4d26647 User logout can happen in controller. 2021-01-24 10:08:39 +01:00
e07e6ae09a Winner controller, winners by date, color or name.
Winner controller replaces a lot of what happens in retrieve did for
aggregating when and what had been won. Now this is more clearly defined
in winner.js.
Also leverage mongo's query more than sorting and aggregating data like
previous implementation where a lot happened in js.
2021-01-24 10:05:00 +01:00
e9ece6963e /by-color endpoint for sort all winners by color.
Can also include query parameter includeWines for resolved wine
references.
2021-01-17 17:26:37 +01:00
53780878af Renamed to winners. Winners gets controller setup.
Rewrote everything that happened in history to better take advantage of
monogdb instead of doing everything in js.

Our endpoints become:
 - /winners - getAll w/ includeWines and sort query params.
 - /winners/latest - latest winners grouped w/ includeWines query
 params.
 - /winners/by-date - all winners grouped by date w/ includeWines and
 sort.
 - /winners/by-date/:date - get winners per epoch or string date.
 - /winners/by-name/:name - get winner by name parameter w/ sort for
 wins direction.
2021-01-17 16:55:57 +01:00
5e06a3fc28 ChatHistory behaved like controller already, renamed. 2021-01-16 14:23:02 +01:00
54c6c0eb97 History actions now have a controller setup. 2021-01-16 12:33:56 +01:00
e754f0a909 Wine ctrl for search wineinfo by query, ean or id. 2021-01-15 19:17:12 +01:00
a010641a8e Renamed wineinfo -> vinmonopolet. 2021-01-15 19:16:46 +01:00
89389ddc59 Renamed lottery -> history. 2021-01-15 19:16:15 +01:00
4043954f95 Split request into controller and repo.
Also try returning better error message on exceptions and check for
errors in payload to return well-defined errors.
2021-01-11 20:52:22 +01:00
50ea05cad3 Winner draw writes out winner number.
The websocket message now includes the number of winners and this is
used to spell out the current drawn winner's position.
2020-12-31 17:19:56 +01:00
baa348bc95 Merge pull request #67 from KevinMidboe/refactor/project-structure
Refactor/Project structure
2020-12-10 23:20:38 +01:00
2fa0c1085c Build bundle analyzer and no-auth start commands.
build-report: uses webpack-bundle-analzer for interactive bundle size
explorer.
start-noauth: running locally without endpoint authentication enabled.
2020-12-06 20:44:54 +01:00
539386664c Better username validation for chat registration. 2020-12-06 17:50:29 +01:00
6503b309c5 Chat history pages w/ page & limit params.
Updated api to use page and limit for fetching chat history.
2020-12-04 22:29:50 +01:00
da8251c733 Now saves messages as redis sorted list.
Moved from Redis lists to sorted lists by timestamp for better
pagination. Now we have better interfacing w/ page & limit. History now
also returns the total record count.
2020-12-04 22:26:44 +01:00
e9eada0002 Remove pickup location from confirmation SMS. 2020-12-04 12:55:43 +01:00
ad27ba8b33 Require statements now use path.join correctly. 2020-11-24 23:37:14 +01:00
236c07f3d0 Moved middleware/ & schemas/ into api/. 2020-11-24 23:34:13 +01:00
30fdbb5e2f Pulled feature branch up-to-date w/ master. 2020-11-20 19:15:51 +01:00
ee5f817248 Chathistory only returns funcs and used by router. 2020-11-20 16:29:26 +01:00
627f96b420 Merge pull request #53 from KevinMidboe/refactor/requested-wines-ui
WIP Refactor - Requested wines ui
2020-11-02 15:20:20 +01:00
f01b58c1b6 Removed trailing whitespace. 2020-10-26 13:10:01 +01:00
f1d500936b Better redis logging. 2020-10-22 22:35:00 +02:00
d5f3a7a1f0 Separated router and user authentication. Renamed login.js to user.js and now it only exports functions for the router to use. 2020-10-22 13:29:06 +02:00
82512fa4ba Comments for readability. 2020-10-19 10:01:53 +02:00