Merge branch 'master' of github.com:KevinMidboe/vinlottis

This commit is contained in:
2020-03-20 13:47:53 +01:00
3 changed files with 41 additions and 58 deletions

View File

@@ -4,18 +4,14 @@
<br /> <br />
<div class="draw-winner-container" v-if="attendees.length > 0"> <div class="draw-winner-container" v-if="attendees.length > 0">
<div v-if="drawingWinner"> <div v-if="drawingWinner">
<span <span>
>Trekker {{ currentWinners }} av {{ numberOfWinners }} vinnere. Trekker {{ currentWinners }} av {{ numberOfWinners }} vinnere.
{{ secondsLeft }} sekunder av {{ drawTime }} igjen</span {{ secondsLeft }} sekunder av {{ drawTime }} igjen
> </span>
<button class="vin-button no-margin" @click="stopDraw"> <button class="vin-button no-margin" @click="stopDraw">Stopp trekning</button>
Stopp trekning
</button>
</div> </div>
<div class="draw-container" v-if="!drawingWinner"> <div class="draw-container" v-if="!drawingWinner">
<button class="vin-button no-margin" @click="drawWinner"> <button class="vin-button no-margin" @click="drawWinner">Trekk vinnere</button>
Trekk vinnere
</button>
<input type="number" v-model="numberOfWinners" /> <input type="number" v-model="numberOfWinners" />
</div> </div>
</div> </div>
@@ -28,24 +24,17 @@
</div> </div>
</div> </div>
</div> </div>
<div <div class="delete-buttons" v-if="attendees.length > 0 || winners.length > 0">
class="delete-buttons"
v-if="attendees.length > 0 || winners.length > 0"
>
<button <button
class="vin-button" class="vin-button"
v-if="winners.length > 0" v-if="winners.length > 0"
@click="deleteAllWinners" @click="deleteAllWinners"
> >Slett virtuelle vinnere</button>
Slett virtuelle vinnere
</button>
<button <button
class="vin-button" class="vin-button"
v-if="attendees.length > 0" v-if="attendees.length > 0"
@click="deleteAllAttendees" @click="deleteAllAttendees"
> >Slett virtuelle deltakere</button>
Slett virtuelle deltakere
</button>
</div> </div>
<div class="attendees" v-if="attendees.length > 0"> <div class="attendees" v-if="attendees.length > 0">
<h2>Deltakere ({{ attendees.length }})</h2> <h2>Deltakere ({{ attendees.length }})</h2>
@@ -56,15 +45,9 @@
</div> </div>
<div class="ballots-container"> <div class="ballots-container">
<div class="red-ballot ballot-element small">{{ attendee.red }}</div> <div class="red-ballot ballot-element small">{{ attendee.red }}</div>
<div class="blue-ballot ballot-element small"> <div class="blue-ballot ballot-element small">{{ attendee.blue }}</div>
{{ attendee.blue }} <div class="green-ballot ballot-element small">{{ attendee.green }}</div>
</div> <div class="yellow-ballot ballot-element small">{{ attendee.yellow }}</div>
<div class="green-ballot ballot-element small">
{{ attendee.green }}
</div>
<div class="yellow-ballot ballot-element small">
{{ attendee.yellow }}
</div>
</div> </div>
</div> </div>
</div> </div>
@@ -77,12 +60,7 @@
<br /> <br />
<div class="label-div"> <div class="label-div">
<label for="phoneNumber">Telefonnummer</label> <label for="phoneNumber">Telefonnummer</label>
<input <input id="phoneNumber" type="text" placeholder="Telefonnummer" v-model="phoneNumber" />
id="phoneNumber"
type="text"
placeholder="Telefonnummer"
v-model="phoneNumber"
/>
</div> </div>
<br /> <br />
<br /> <br />
@@ -186,7 +164,7 @@ export default {
}, },
methods: { methods: {
setWithRandomColors(colors) { setWithRandomColors(colors) {
Object.keys(colors).forEach(color => this[color] = colors[color]) Object.keys(colors).forEach(color => (this[color] = colors[color]));
}, },
sendAttendee: async function() { sendAttendee: async function() {
let response = await addAttendee({ let response = await addAttendee({
@@ -406,7 +384,6 @@ button {
& .ballots-container { & .ballots-container {
display: flex; display: flex;
justify-content: center; justify-content: center;
align-items: center;
} }
& .name-and-phone { & .name-and-phone {

View File

@@ -1,17 +1,13 @@
<template> <template>
<div class="attendees" v-if="attendees.length > 0"> <div class="attendees" v-if="attendees.length > 0">
<h2>Deltakere ({{ attendees.length }})</h2> <h2>Deltakere ({{ attendees.length }})</h2>
<div class="attendees-container" ref="attendees">
<div class="attendee" v-for="(attendee, index) in attendees" :key="index"> <div class="attendee" v-for="(attendee, index) in attendees" :key="index">
<span class="attendee-name">{{ attendee.name }}</span> <span class="attendee-name">{{ attendee.name }}</span>
<div class="red-ballot ballot-element small">{{ attendee.red }}</div> <div class="red-ballot ballot-element small">{{ attendee.red }}</div>
<div class="blue-ballot ballot-element small"> <div class="blue-ballot ballot-element small">{{ attendee.blue }}</div>
{{ attendee.blue }} <div class="green-ballot ballot-element small">{{ attendee.green }}</div>
</div> <div class="yellow-ballot ballot-element small">{{ attendee.yellow }}</div>
<div class="green-ballot ballot-element small">
{{ attendee.green }}
</div>
<div class="yellow-ballot ballot-element small">
{{ attendee.yellow }}
</div> </div>
</div> </div>
</div> </div>
@@ -23,6 +19,16 @@ export default {
attendees: { attendees: {
type: Array type: Array
} }
},
watch: {
attendees: {
deep: true,
handler() {
setTimeout(() => {
this.$refs.attendees.scrollTop = this.$refs.attendees.scrollHeight;
}, 50);
}
}
} }
}; };
</script> </script>
@@ -53,6 +59,11 @@ export default {
align-items: center; align-items: center;
width: 65%; width: 65%;
height: 100%; height: 100%;
}
.attendees-container {
width: 100%;
height: 100%;
overflow-y: scroll; overflow-y: scroll;
} }

View File

@@ -14,14 +14,9 @@
</div> </div>
</div> </div>
<div class="input"> <div class="input">
<input <input @keyup.enter="sendMessage" type="text" v-model="message" placeholder="Melding.." />
@keyup.enter="sendMessage" <button @click="sendMessage">Send</button>
type="text" <button @click="removeUsername">Logg ut</button>
v-model="message"
placeholder="Melding.."
/>
<button @click="sendMessage">Send</button
><button @click="removeUsername">Logg ut</button>
</div> </div>
</div> </div>
<div v-if="!usernameSet" class="username-dialog"> <div v-if="!usernameSet" class="username-dialog">
@@ -88,7 +83,7 @@ export default {
if (date.getDate() == new Date().getDate()) { if (date.getDate() == new Date().getDate()) {
return timeString; return timeString;
} }
return `${date.toLocaleDateString()} ${timeString}` return `${date.toLocaleDateString()} ${timeString}`;
}, },
sendMessage: function() { sendMessage: function() {
this.$emit("message", this.message); this.$emit("message", this.message);
@@ -147,7 +142,7 @@ input {
.chat-container, .chat-container,
.chat-inner-container { .chat-inner-container {
height: 100%; height: 95%;
} }
.history { .history {