From bff89236db4aaf75d27c923452b48d6e0241dd9a Mon Sep 17 00:00:00 2001 From: Sebastian Date: Sun, 1 Jan 2023 01:21:37 +0100 Subject: [PATCH] Added option to not add played to database Added Search for inspiration Added song for match point --- src/components/items/InspirationWindow.vue | 201 +++++--- src/components/items/extraButtons.vue | 180 +++---- src/components/items/playersWindow.vue | 535 +++++++++++---------- src/components/items/settingsModal.vue | 21 +- src/components/layout/TheFooter.vue | 31 +- src/components/layout/TheMain.vue | 148 +++--- src/main.js | 33 ++ 7 files changed, 648 insertions(+), 501 deletions(-) diff --git a/src/components/items/InspirationWindow.vue b/src/components/items/InspirationWindow.vue index f52c9f1..ffd1611 100644 --- a/src/components/items/InspirationWindow.vue +++ b/src/components/items/InspirationWindow.vue @@ -1,31 +1,43 @@ diff --git a/src/components/items/extraButtons.vue b/src/components/items/extraButtons.vue index 4f23296..4e54646 100644 --- a/src/components/items/extraButtons.vue +++ b/src/components/items/extraButtons.vue @@ -1,109 +1,111 @@ diff --git a/src/components/items/playersWindow.vue b/src/components/items/playersWindow.vue index 331e825..5dfe650 100644 --- a/src/components/items/playersWindow.vue +++ b/src/components/items/playersWindow.vue @@ -1,46 +1,46 @@ diff --git a/src/components/items/settingsModal.vue b/src/components/items/settingsModal.vue index d9a9005..9b6e3ff 100644 --- a/src/components/items/settingsModal.vue +++ b/src/components/items/settingsModal.vue @@ -32,6 +32,16 @@ /> +
+ + +
{}); */ if (!trackAddedToQue) { - await this.APIaddToQue(); + await this.APIaddPlayed(); } + await this.APIaddToQue(); await this.APIgetPlaylistHistory(); this.$refs.audioPlayer.play(); @@ -139,6 +144,15 @@ export default { this.$refs.audioPlayer.play(); }); }, + playMatchSound() { + this.$refs.audioPlayer.pause(); + this.currentTrackSrcFile = "sounds/sound0.mp3"; + this.$store.dispatch("setSpecialTrackIsPlaying", true); + this.$nextTick(() => { + this.$refs.audioPlayer.currentTime = 0; + this.$refs.audioPlayer.play(); + }); + }, playWinningSound() { this.$refs.audioPlayer.pause(); this.currentTrackSrcFile = "sounds/winning.mp3"; @@ -208,6 +222,21 @@ export default { }); }); }, + APIaddPlayed() { + return new Promise((resolve, reject) => { + this.axios({ + method: "get", + url: `${arne.hostname}/music/addPlayed`, + }) + .then(() => { + resolve(false); + }) + .catch(function(error) { + console.log(error); + reject(); + }); + }); + }, APIaddToQue() { return new Promise((resolve, reject) => { this.axios({ diff --git a/src/components/layout/TheMain.vue b/src/components/layout/TheMain.vue index fa9b7c0..986d16f 100644 --- a/src/components/layout/TheMain.vue +++ b/src/components/layout/TheMain.vue @@ -1,29 +1,30 @@ diff --git a/src/main.js b/src/main.js index 25094a8..5970a49 100644 --- a/src/main.js +++ b/src/main.js @@ -30,6 +30,7 @@ const store = createStore({ /* Options */ stopAfterCurrent: true, hideNextTrack: true, + addPlayed: true, lowPlayed: false, }; }, @@ -67,6 +68,9 @@ const store = createStore({ changePlayerWelcomed(state, payload) { state.listOfPlayers[payload.indexOfPlayer].welcomed = payload.playerWelcomeTrueOrFalse; }, + changePlayerMatchPoint(state, payload) { + state.listOfPlayers[payload.indexOfPlayer].matchPoint = payload.playerMatchPointTrueOrFalse; + }, changePlayerProfile(state, payload) { state.listOfPlayers[payload.indexOfPlayer].profile = payload.profileSrc; }, @@ -76,6 +80,9 @@ const store = createStore({ resetPlayerWelcomed(state, payload) { state.listOfPlayers = payload; }, + resetPlayerMatchPoint(state, payload) { + state.listOfPlayers = payload; + }, updateLocalPlaylist(state, payload) { state.localPlaylist.push(payload); }, @@ -94,6 +101,9 @@ const store = createStore({ updateHideNextTitle(state, payload) { state.hideNextTrack = payload; }, + updateAddPlayed(state, payload) { + state.addPlayed = payload; + }, updateLowPlayed(state, payload) { state.lowPlayed = payload; }, @@ -135,6 +145,7 @@ const store = createStore({ playerName: payload, score: 0, welcomed: false, + matchPoint: false, profile: "characters/noCharacter.png", }; newPlayerList.push(newPlayer); @@ -162,6 +173,17 @@ const store = createStore({ playerWelcomeTrueOrFalse, }); }, + changePlayerMatchPoint(context, payload) { + let copyOfPlayerList = this.state.listOfPlayers; + let indexOfPlayer = copyOfPlayerList.findIndex( + (player) => player.playerName === payload.playerName + ); + let playerMatchPointTrueOrFalse = payload.matchPointSet; + context.commit("changePlayerMatchPoint", { + indexOfPlayer, + playerMatchPointTrueOrFalse, + }); + }, changePlayerProfile(context, payload) { let copyOfPlayerList = this.state.listOfPlayers; let indexOfPlayer = copyOfPlayerList.findIndex( @@ -189,6 +211,14 @@ const store = createStore({ } context.commit("resetPlayerWelcomed", copyOfPlayerList); }, + resetPlayerMatchPoint(context) { + /* The JSON.parse and JSON.stringify parts are used to make a copy that doesn't affect the original */ + let copyOfPlayerList = JSON.parse(JSON.stringify(this.state.listOfPlayers)); + for (let i = 0; i < copyOfPlayerList.length; i++) { + copyOfPlayerList[i].matchPoint = false; + } + context.commit("resetPlayerMatchPoint", copyOfPlayerList); + }, updateLocalPlaylist(context, payload) { context.commit("updateLocalPlaylist", payload); }, @@ -207,6 +237,9 @@ const store = createStore({ updateHideNextTitle(context, payload) { context.commit("updateHideNextTitle", payload); }, + updateAddPlayed(context, payload) { + context.commit("updateAddPlayed", payload); + }, updateLowPlayed(context, payload) { context.commit("updateLowPlayed", payload); },