Преглед изворни кода

Removed playlist item when dashboard is deleted

utkarshcmu пре 9 година
родитељ
комит
c737704eeb
2 измењених фајлова са 13 додато и 0 уклоњено
  1. 12 0
      pkg/api/playlist.go
  2. 1 0
      pkg/services/sqlstore/dashboard.go

+ 12 - 0
pkg/api/playlist.go

@@ -26,6 +26,18 @@ func ValidateOrgPlaylist(c *middleware.Context) {
 		c.JsonApiErr(403, "You are not allowed to edit/view playlist", nil)
 		return
 	}
+
+	items, itemsErr := LoadPlaylistItemDTOs(id)
+
+	if itemsErr != nil {
+		c.JsonApiErr(404, "Playlist items not found", err)
+		return
+	}
+
+	if len(items) == 0 {
+		c.JsonApiErr(404, "Playlist is empty", itemsErr)
+		return
+	}
 }
 
 func SearchPlaylists(c *middleware.Context) Response {

+ 1 - 0
pkg/services/sqlstore/dashboard.go

@@ -233,6 +233,7 @@ func DeleteDashboard(cmd *m.DeleteDashboardCommand) error {
 			"DELETE FROM dashboard_tag WHERE dashboard_id = ? ",
 			"DELETE FROM star WHERE dashboard_id = ? ",
 			"DELETE FROM dashboard WHERE id = ?",
+			"DELETE FROM playlist_item WHERE type = 'dashboard_by_id' AND value = ?",
 		}
 
 		for _, sql := range deletes {