mirror of
https://github.com/ragestudio/comty.git
synced 2025-06-10 02:54:15 +00:00
implement options for playlist controller
This commit is contained in:
parent
c7a554e455
commit
a66e561a75
@ -34,7 +34,7 @@ export default class PlaylistsModel {
|
|||||||
return data
|
return data
|
||||||
}
|
}
|
||||||
|
|
||||||
static deletePlaylist = async (id) => {
|
static deletePlaylist = async (id, options = {}) => {
|
||||||
if (!id) {
|
if (!id) {
|
||||||
throw new Error("ID is required")
|
throw new Error("ID is required")
|
||||||
}
|
}
|
||||||
@ -43,6 +43,7 @@ export default class PlaylistsModel {
|
|||||||
instance: PlaylistsModel.api_instance,
|
instance: PlaylistsModel.api_instance,
|
||||||
method: "DELETE",
|
method: "DELETE",
|
||||||
url: `/playlists/${id}`,
|
url: `/playlists/${id}`,
|
||||||
|
params: options,
|
||||||
})
|
})
|
||||||
|
|
||||||
return data
|
return data
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
import { Playlist } from "@models"
|
import { Playlist, Track } from "@models"
|
||||||
import { AuthorizationError, PermissionError, NotFoundError } from "@shared-classes/Errors"
|
import { AuthorizationError, PermissionError, NotFoundError } from "@shared-classes/Errors"
|
||||||
|
|
||||||
export default async (req, res) => {
|
export default async (req, res) => {
|
||||||
@ -6,6 +6,8 @@ export default async (req, res) => {
|
|||||||
return new AuthorizationError(req, res)
|
return new AuthorizationError(req, res)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const removeWithTracks = req.query.remove_with_tracks === "true"
|
||||||
|
|
||||||
let playlist = await Playlist.findOne({
|
let playlist = await Playlist.findOne({
|
||||||
_id: req.params.playlist_id,
|
_id: req.params.playlist_id,
|
||||||
}).catch((err) => {
|
}).catch((err) => {
|
||||||
@ -24,6 +26,12 @@ export default async (req, res) => {
|
|||||||
_id: req.params.playlist_id,
|
_id: req.params.playlist_id,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
if (removeWithTracks) {
|
||||||
|
await Track.deleteMany({
|
||||||
|
_id: playlist.tracks,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
return res.json({
|
return res.json({
|
||||||
success: true,
|
success: true,
|
||||||
})
|
})
|
||||||
|
Loading…
x
Reference in New Issue
Block a user