Skip to content

Commit

Permalink
POST on same page when removing from playlist, so url doesn't change
Browse files Browse the repository at this point in the history
  • Loading branch information
user234683 committed Jul 24, 2018
1 parent 6e6a38c commit 74c9647
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 9 deletions.
18 changes: 10 additions & 8 deletions youtube/youtube.py
Original file line number Diff line number Diff line change
Expand Up @@ -53,24 +53,26 @@ def youtube(env, start_response):
return b'404 Not Found'

elif method == "POST":
fields = urllib.parse.parse_qs(env['wsgi.input'].read().decode())
if path == "/edit_playlist":
fields = urllib.parse.parse_qs(env['wsgi.input'].read().decode())
if fields['action'][0] == 'add':
local_playlist.add_to_playlist(fields['playlist_name'][0], fields['video_info_list'])
start_response('204 No Content', ())
elif fields['action'][0] == 'remove':
try:
playlist_name = fields['playlist_page'][0]
except KeyError:
playlist_name = fields['playlist_name'][0]
else:
start_response('400 Bad Request', ())
return b'400 Bad Request'

elif path.startswith("/playlists"):
if fields['action'][0] == 'remove':
playlist_name = path[11:]
local_playlist.remove_from_playlist(playlist_name, fields['video_info_list'])
start_response('200 OK', ())
return local_playlist.get_playlist_page(playlist_name).encode()
start_response('200 OK', (('Content-type','text/html'),) )
return local_playlist.get_playlist_page(path[10:], query_string=query_string).encode()
else:
start_response('400 Bad Request', ())
return b'400 Bad Request'


else:
start_response('404 Not Found', ())
return b'404 Not Found'
Expand Down
2 changes: 1 addition & 1 deletion yt_local_playlist_template.html
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@
<div id="left">
<h2 class="playlist-title">$title</h2>
<input type="hidden" name="playlist_page" value="$title" form="playlist-edit">
<button type="submit" id="playlist-remove-button" name="action" value="remove" form="playlist-edit">Remove from playlist</button>
<button type="submit" id="playlist-remove-button" name="action" value="remove" form="playlist-edit" formaction="">Remove from playlist</button>
<div id="results">
$videos
</div>
Expand Down

0 comments on commit 74c9647

Please sign in to comment.