add playlist deletion from web ui
This commit is contained in:
@@ -160,11 +160,13 @@
|
|||||||
<span class="text-light">no playlists yet</span>
|
<span class="text-light">no playlists yet</span>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
<table id="recent-playlists">
|
<table id="recent-playlists">
|
||||||
{{ range $playlist := .Playlists }}
|
{{ range $i, $playlist := .Playlists }}
|
||||||
<tr>
|
<tr>
|
||||||
|
<form id="recent-playlists-{{ $i }}" action="{{ printf "/admin/delete_playlist_do?id=%d" $playlist.ID | path }}" method="post"></form>
|
||||||
<td class="text-right">{{ $playlist.Name }}</td>
|
<td class="text-right">{{ $playlist.Name }}</td>
|
||||||
<td><span class="text-light">({{ $playlist.TrackCount }} tracks)</span></td>
|
<td><span class="text-light">({{ $playlist.TrackCount }} tracks)</span></td>
|
||||||
<td class="no-small"><span class="text-light" title="{{ $playlist.CreatedAt }}">{{ $playlist.CreatedAt | dateHuman }}</span></td>
|
<td class="no-small"><span class="text-light" title="{{ $playlist.CreatedAt }}">{{ $playlist.CreatedAt | dateHuman }}</span></td>
|
||||||
|
<td><input form="recent-playlists-{{ $i }}" type="submit" value="delete"></td>
|
||||||
</tr>
|
</tr>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
</table>
|
</table>
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
"mime/multipart"
|
"mime/multipart"
|
||||||
"net/http"
|
"net/http"
|
||||||
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/jinzhu/gorm"
|
"github.com/jinzhu/gorm"
|
||||||
@@ -117,3 +118,20 @@ func (c *Controller) ServeUploadPlaylistDo(r *http.Request) *Response {
|
|||||||
flashW: errors,
|
flashW: errors,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (c *Controller) ServeDeletePlaylistDo(r *http.Request) *Response {
|
||||||
|
user := r.Context().Value(CtxUser).(*db.User)
|
||||||
|
id, err := strconv.Atoi(r.URL.Query().Get("id"))
|
||||||
|
if err != nil {
|
||||||
|
return &Response{
|
||||||
|
err: "please provide a valid id",
|
||||||
|
code: 400,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
c.DB.
|
||||||
|
Where("user_id=? AND id=?", user.ID, id).
|
||||||
|
Delete(db.Playlist{})
|
||||||
|
return &Response{
|
||||||
|
redirect: "/admin/home",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -121,6 +121,7 @@ func setupAdmin(r *mux.Router, ctrl *ctrladmin.Controller) {
|
|||||||
routUser.Handle("/link_lastfm_do", ctrl.H(ctrl.ServeLinkLastFMDo))
|
routUser.Handle("/link_lastfm_do", ctrl.H(ctrl.ServeLinkLastFMDo))
|
||||||
routUser.Handle("/unlink_lastfm_do", ctrl.H(ctrl.ServeUnlinkLastFMDo))
|
routUser.Handle("/unlink_lastfm_do", ctrl.H(ctrl.ServeUnlinkLastFMDo))
|
||||||
routUser.Handle("/upload_playlist_do", ctrl.H(ctrl.ServeUploadPlaylistDo))
|
routUser.Handle("/upload_playlist_do", ctrl.H(ctrl.ServeUploadPlaylistDo))
|
||||||
|
routUser.Handle("/delete_playlist_do", ctrl.H(ctrl.ServeDeletePlaylistDo))
|
||||||
routUser.Handle("/create_transcode_pref_do", ctrl.H(ctrl.ServeCreateTranscodePrefDo))
|
routUser.Handle("/create_transcode_pref_do", ctrl.H(ctrl.ServeCreateTranscodePrefDo))
|
||||||
routUser.Handle("/delete_transcode_pref_do", ctrl.H(ctrl.ServeDeleteTranscodePrefDo))
|
routUser.Handle("/delete_transcode_pref_do", ctrl.H(ctrl.ServeDeleteTranscodePrefDo))
|
||||||
// ** begin admin routes (if session is valid, and is admin)
|
// ** begin admin routes (if session is valid, and is admin)
|
||||||
|
|||||||
Reference in New Issue
Block a user