From 3c0b8d4c066b7b4bc1e40fb73feb01c1c4d96f3e Mon Sep 17 00:00:00 2001 From: KevinMidboe Date: Thu, 31 Dec 2020 17:13:41 +0100 Subject: [PATCH 01/17] Generate and lottery has distinct routes. No longer use tab view for these pages. --- frontend/router.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/frontend/router.js b/frontend/router.js index e625e41..beaa308 100644 --- a/frontend/router.js +++ b/frontend/router.js @@ -1,9 +1,9 @@ const VinlottisPage = () => import( /* webpackChunkName: "landing-page" */ "@/components/VinlottisPage"); -const LotteryPage = () => import( +const VirtualLotteryPage = () => import( /* webpackChunkName: "landing-page" */ - "@/components/LotteryPage"); + "@/components/VirtualLotteryPage"); const GeneratePage = () => import( /* webpackChunkName: "landing-page" */ "@/components/GeneratePage"); @@ -54,7 +54,7 @@ const routes = [ { path: "/lottery", name: "Lotteri", - component: LotteryPage + component: VirtualLotteryPage }, { path: "/dagens", @@ -82,8 +82,8 @@ const routes = [ component: AdminPage }, { - path: "/lottery/:tab", - component: LotteryPage + path: "/generate/", + component: GeneratePage }, { path: "/winner/:id", -- 2.34.1 From 59328de4968ee59c735e0085b1d6ede54dae3225 Mon Sep 17 00:00:00 2001 From: KevinMidboe Date: Thu, 31 Dec 2020 17:14:57 +0100 Subject: [PATCH 02/17] Updated generate and lottery routes for frontpage. --- frontend/components/VinlottisPage.vue | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/frontend/components/VinlottisPage.vue b/frontend/components/VinlottisPage.vue index df44ad0..bbc0719 100644 --- a/frontend/components/VinlottisPage.vue +++ b/frontend/components/VinlottisPage.vue @@ -17,12 +17,12 @@ /> - +

Trykk her for å delta

- + Se vipps detaljer og QR-kode -- 2.34.1 From 50ea05cad3e100f1a4c435dbed6d7857d9449bd7 Mon Sep 17 00:00:00 2001 From: KevinMidboe Date: Thu, 31 Dec 2020 17:19:56 +0100 Subject: [PATCH 03/17] 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. --- api/virtualLottery.js | 10 ++++- frontend/ui/WinnerDraw.vue | 80 ++++++++++++++++++++------------------ 2 files changed, 51 insertions(+), 39 deletions(-) diff --git a/api/virtualLottery.js b/api/virtualLottery.js index cad4924..706016b 100644 --- a/api/virtualLottery.js +++ b/api/virtualLottery.js @@ -166,8 +166,16 @@ const drawWinner = async (req, res) => { Math.floor(Math.random() * attendeeListDemocratic.length) ]; + let winners = await VirtualWinner.find({ timestamp_sent: undefined }).sort({ + timestamp_drawn: 1 + }); + var io = req.app.get('socketio'); - io.emit("winner", { color: colorToChooseFrom, name: winner.name }); + io.emit("winner", { + color: colorToChooseFrom, + name: winner.name, + winner_count: winners.length + 1 + }); let newWinnerElement = new VirtualWinner({ name: winner.name, diff --git a/frontend/ui/WinnerDraw.vue b/frontend/ui/WinnerDraw.vue index 81c04ec..118d123 100644 --- a/frontend/ui/WinnerDraw.vue +++ b/frontend/ui/WinnerDraw.vue @@ -1,36 +1,18 @@ @@ -184,6 +166,23 @@ export default { confetti(Object.assign({}, confettiDefaultValues, {origin: originPoint }, launchAngle)) } }, + ordinalNumber(number=this.currentWinnerLocal.winnerCount) { + const dictonary = { + 1: "første", + 2: "andre", + 3: "tredje", + 4: "fjerde", + 5: "femte", + 6: "sjette", + 7: "syvende", + 8: "åttende", + 9: "niende", + 10: "tiende", + 11: "ellevte", + 12: "tolvte" + }; + return number in dictonary ? dictonary[number] : number; + } } }; @@ -196,22 +195,27 @@ export default { h2 { text-align: center; + text-transform: uppercase; } .current-drawn-container { - display: flex; - justify-content: center; - align-items: center; + grid-column: 1 / 5; + display: grid; + place-items: center; + position: relative; } .raffle-element { - width: 140px; - height: 140px; - font-size: 1.2rem; + width: 280px; + height: 300px; + font-size: 2rem; display: flex; justify-content: center; align-items: center; - font-size: 0.75rem; text-align: center; + + -webkit-mask-size: cover; + -moz-mask-size: cover; + mask-size: cover; } -- 2.34.1 From d0cf99e8f888da8a950c671d35258145ab868c59 Mon Sep 17 00:00:00 2001 From: KevinMidboe Date: Thu, 31 Dec 2020 17:21:32 +0100 Subject: [PATCH 04/17] Slowed down animation and renamed variables. - Unified html elements for smaller footprint. - winnersNameDrawn is used to have separte messages for before and after the winners name is decided. --- frontend/ui/WinnerDraw.vue | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/frontend/ui/WinnerDraw.vue b/frontend/ui/WinnerDraw.vue index 118d123..abd34d1 100644 --- a/frontend/ui/WinnerDraw.vue +++ b/frontend/ui/WinnerDraw.vue @@ -1,6 +1,6 @@