diff options
author | Mageas <web.mageas@protonmail.com> | 2021-09-09 09:56:46 +0200 |
---|---|---|
committer | Jesús <heckyel@hyperbola.info> | 2021-09-10 17:58:21 -0500 |
commit | 66f396ce32bf2b5c869e63ceb649bbcf510d7034 (patch) | |
tree | c1ba1c006d3e4497041e8e4d8f72559d3d57c8ec | |
parent | 88803ced44ff7347df83c3d342e17916e242ca67 (diff) | |
download | yt-local-66f396ce32bf2b5c869e63ceb649bbcf510d7034.tar.lz yt-local-66f396ce32bf2b5c869e63ceb649bbcf510d7034.tar.xz yt-local-66f396ce32bf2b5c869e63ceb649bbcf510d7034.zip |
Add a button to remove playlist
Signed-off-by: Jesús <heckyel@hyperbola.info>
-rw-r--r-- | youtube/local_playlist.py | 6 | ||||
-rw-r--r-- | youtube/templates/local_playlist.html | 8 |
2 files changed, 14 insertions, 0 deletions
diff --git a/youtube/local_playlist.py b/youtube/local_playlist.py index 40ff035..aa3ac27 100644 --- a/youtube/local_playlist.py +++ b/youtube/local_playlist.py @@ -153,6 +153,12 @@ def path_edit_playlist(playlist_name): number_of_videos_remaining = remove_from_playlist(playlist_name, videos_to_remove) redirect_page_number = min(int(request.values.get('page', 1)), math.ceil(number_of_videos_remaining/50)) return flask.redirect(util.URL_ORIGIN + request.path + '?page=' + str(redirect_page_number)) + elif request.values['action'] == 'remove_playlist': + try: + os.remove(os.path.join(playlists_directory, playlist_name + ".txt")) + except OSError: + pass + return flask.redirect(util.URL_ORIGIN + '/playlists') elif request.values['action'] == 'export': videos = read_playlist(playlist_name) fmt = request.values['export_format'] diff --git a/youtube/templates/local_playlist.html b/youtube/templates/local_playlist.html index 64abcf4..d08aa48 100644 --- a/youtube/templates/local_playlist.html +++ b/youtube/templates/local_playlist.html @@ -22,7 +22,9 @@ </div> </div> + <form id="playlist-remove" action="/youtube.com/edit_playlist" method="post" target="_self"></form> <div class="playlist-metadata" id="video-remove-container"> + <button id="removePlayList" type="submit" name="action" value="remove_playlist" form="playlist-remove" formaction="">Remove playlist</button> <input type="hidden" name="playlist_page" value="{{ playlist_name }}" form="playlist-edit"> <button class="play-action" type="submit" id="playlist-remove-button" name="action" value="remove" form="playlist-edit" formaction="">Remove from playlist</button> </div> @@ -31,6 +33,12 @@ {{ common_elements.item(video_info) }} {% endfor %} </div> + <script> + const deletePlayList = document.getElementById('removePlayList'); + deletePlayList.addEventListener('click', (event) => { + return confirm('You are about to permanently delete {{ playlist_name }}\n\nOnce a playlist is permanently deleted, it cannot be recovered.') + }); + </script> <footer class="pagination-container"> <nav class="pagination-list"> {{ common_elements.page_buttons(num_pages, '/https://www.youtube.com/playlists/' + playlist_name, parameters_dictionary) }} |