restore progress after reloading the page (F5)
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
Artem Anufrij 2023-09-19 17:40:18 +02:00
parent fa75ba4ad7
commit 37919998dd
3 changed files with 26 additions and 15 deletions

View File

@ -216,8 +216,13 @@ export default {
this.$store.dispatch("albums/shareDisable", this.selectedAlbum);
},
loadUserProgress() {
if (this.selectedTrack.parent._id != this.selectedAlbum._id)
this.$store.dispatch("user/getProgress", this.selectedAlbum);
if (this.selectedTrack.parent._id != this.selectedAlbum._id) {
this.$store
.dispatch("user/getProgress", this.selectedAlbum)
.then(() => {
this.gotoTrack();
});
}
}
},
computed: {
@ -310,7 +315,6 @@ export default {
window.addEventListener("keydown", this.keydownListener);
}
this.loadUserProgress();
this.gotoTrack();
} else {
if (this.$refs.dialogWindow.visible) {
this.$refs.dialogWindow.close();

View File

@ -154,8 +154,13 @@ export default {
this.$store.dispatch("artists/uploadNewCover", this.selectedArtist);
},
loadUserProgress() {
if (!this.isPlaying || this.selectedTrack.parent.parent._id != this.selectedArtist._id)
this.$store.dispatch("user/getProgress", this.selectedArtist);
if (!this.isPlaying || this.selectedTrack.parent.parent && this.selectedTrack.parent.parent._id != this.selectedArtist._id) {
this.$store.dispatch("user/getProgress", this.selectedArtist).then(() => {
this.gotoTrack();
});
} else {
this.gotoTrack();
}
}
},
computed: {
@ -231,7 +236,6 @@ export default {
window.addEventListener("keydown", this.keydownListener);
}
this.loadUserProgress();
this.gotoTrack();
} else {
if (this.$refs.dialogWindow.visible) {
this.$refs.dialogWindow.close();

View File

@ -88,15 +88,18 @@ export default {
.post(context.rootGetters.server + "/api/user/progress", item, context.rootGetters.headers);
},
getProgress(context, parent) {
if (context.state._id == -1) {
return;
}
axios
.get(context.rootGetters.server + "/api/user/progress/" + parent._id, context.rootGetters.headers)
.then((res) => {
parent.progress = res.data;
});
return new Promise((resolve) => {
if (context.state._id == -1) {
resolve();
} else {
axios
.get(context.rootGetters.server + "/api/user/progress/" + parent._id, context.rootGetters.headers)
.then((res) => {
parent.progress = res.data;
resolve();
});
}
});
},
resetProgress(context, parentId) {
if (context.state._id == -1) {