Parcourir la source

Merge remote-tracking branch 'origin/staging' into staging

# Conflicts:
#	frontend/components/Modals/EditStation.vue
KrisVos130 il y a 8 ans
Parent
commit
cf189f4007

+ 5 - 0
frontend/components/Admin/QueueSongs.vue

@@ -64,6 +64,11 @@
 				return this.$eval('songs | filterBy searchQuery');
 			}
 		},
+		watch: {
+			'modals.editSong': function (value) {
+				if (!value) this.$broadcast('stopVideo');
+			}
+		},
 		methods: {
 			toggleModal: function () {
 				this.modals.editSong = !this.modals.editSong;

+ 5 - 0
frontend/components/Admin/Songs.vue

@@ -68,6 +68,11 @@
 				return this.$eval('songs | filterBy searchQuery');
 			}
 		},
+		watch: {
+			'modals.editSong': function (value) {
+				if (!value) this.$broadcast('stopVideo');
+			}
+		},
 		methods: {
 			toggleModal: function () {
 				this.modals.editSong = !this.modals.editSong;

+ 1 - 0
frontend/components/Admin/Stations.vue

@@ -141,6 +141,7 @@
 					privacy: station.privacy,
 					displayName: station.displayName
 				});
+				this.modals.editStation = !this.modals.editStation;
 			},
 			addGenre: function () {
 				let genre = $('#new-genre').val().toLowerCase().trim();

+ 4 - 0
frontend/components/Modals/EditSong.vue

@@ -265,6 +265,7 @@
 		events: {
 			closeModal: function () {
 				this.$parent.modals.editSong = false;
+				this.video.player.stopVideo();
 			},
 			editSong: function (song, index, type) {
 				let _this = this;
@@ -282,6 +283,9 @@
 					if (res.status === 'success') _this.reports = res.data;
 				});
 				this.$parent.toggleModal();
+			},
+			stopVideo: function () {
+				this.video.player.stopVideo();
 			}
 		}
 	}

+ 1 - 1
frontend/components/Station/CommunityHeader.vue

@@ -4,7 +4,7 @@
 			<a class='nav-item logo' href='#' v-link='{ path: "/" }' @click='this.$dispatch("leaveStation", title)'>
 				Musare
 			</a>
-			<a class='nav-item' href='#' v-if='isOwner()' @click='$parent.modals.editStation = !$parent.modals.editStation'>
+			<a class='nav-item' href='#' v-if='isOwner()' @click='$parent.editStation()'>
 				<span class='icon'>
 					<i class='material-icons'>settings</i>
 				</span>

+ 1 - 1
frontend/components/Station/OfficialHeader.vue

@@ -4,7 +4,7 @@
 			<a class='nav-item logo' href='#' v-link='{ path: "/" }' @click='this.$dispatch("leaveStation", title)'>
 				Musare
 			</a>
-			<a class='nav-item' href='#' v-if='isOwner()' @click='$parent.modals.editStation = !$parent.modals.editStation'>
+			<a class='nav-item' href='#' v-if='isOwner()' @click='$parent.editStation()'>
 				<span class='icon'>
 					<i class='material-icons'>settings</i>
 				</span>

+ 13 - 1
frontend/components/Station/Station.vue

@@ -5,7 +5,7 @@
 	<song-queue v-if='modals.addSongToQueue'></song-queue>
 	<edit-playlist v-if='modals.editPlaylist'></edit-playlist>
 	<create-playlist v-if='modals.createPlaylist'></create-playlist>
-	<edit-station v-if='modals.editStation'></edit-station>
+	<edit-station v-show='modals.editStation'></edit-station>
 	<report v-if='modals.report'></report>
 
 	<songs-list-sidebar v-if='sidebars.songslist'></songs-list-sidebar>
@@ -134,6 +134,18 @@
 				this.playlistBeingEdited = id;
 				this.modals.editPlaylist = !this.modals.editPlaylist;
 			},
+			editStation: function () {
+				let _this = this;
+				this.$broadcast('editStation', {
+					_id: _this.$route.params.id,
+					type: _this.type,
+					partyMode: _this.station.partyMode,
+					description: _this.station.description,
+					privacy: _this.station.privacy,
+					displayName: _this.station.displayName
+				});
+				this.modals.editStation = !this.modals.editStation;
+			},
 			toggleSidebar: function (type) {
 				Object.keys(this.sidebars).forEach(sidebar => {
 					if (sidebar !== type) this.sidebars[sidebar] = false;