From 330f409ee91ad142a70617cf05a68916ef6c591e Mon Sep 17 00:00:00 2001 From: saksham1115 Date: Mon, 20 Jun 2016 05:47:43 +0000 Subject: [PATCH] Customizing Subs using Wtforms --- mediagoblin/edit/forms.py | 6 ++++ mediagoblin/edit/routing.py | 2 ++ mediagoblin/edit/views.py | 20 +++++++++-- .../mediagoblin/edit/edit_subtitles.html | 36 +++++++++++++++++++ .../mediagoblin/user_pages/media.html | 2 +- 5 files changed, 63 insertions(+), 3 deletions(-) create mode 100644 mediagoblin/templates/mediagoblin/edit/edit_subtitles.html diff --git a/mediagoblin/edit/forms.py b/mediagoblin/edit/forms.py index c9eae429..7208593b 100644 --- a/mediagoblin/edit/forms.py +++ b/mediagoblin/edit/forms.py @@ -78,6 +78,12 @@ class EditProfileForm(wtforms.Form): location = wtforms.StringField(_('Hometown')) +class CustomizeSubtitlesForm(wtforms.Form): + subtitle = wtforms.TextAreaField( + _('Subtitle'), + [wtforms.validators.Optional()], + description=_("")) + class EditAccountForm(wtforms.Form): wants_comment_notification = wtforms.BooleanField( diff --git a/mediagoblin/edit/routing.py b/mediagoblin/edit/routing.py index b349975d..d6d07dae 100644 --- a/mediagoblin/edit/routing.py +++ b/mediagoblin/edit/routing.py @@ -30,3 +30,5 @@ add_route('mediagoblin.edit.email', '/edit/email/', 'mediagoblin.edit.views:change_email') add_route('mediagoblin.edit.deauthorize_applications', '/edit/deauthorize/', 'mediagoblin.edit.views:deauthorize_applications') +add_route('mediagoblin.edit.edit_subtitles', '/c_s//edit/', + 'mediagoblin.edit.views:edit_subtitles') diff --git a/mediagoblin/edit/views.py b/mediagoblin/edit/views.py index cad58306..0582b08c 100644 --- a/mediagoblin/edit/views.py +++ b/mediagoblin/edit/views.py @@ -17,7 +17,6 @@ import six from datetime import datetime -import os from itsdangerous import BadSignature from pyld import jsonld @@ -580,7 +579,6 @@ def edit_metadata(request, media): {'form':form, 'media':media}) - @require_active_login @path_subtitle def custom_subtitles(request,path=None): @@ -599,3 +597,21 @@ def custom_subtitles(request,path=None): {"path": path} ) +@require_active_login +@path_subtitle +def edit_subtitles(request,path=None): + path = path.encode('ascii','ignore')[1:-1].split(',') + for index in range(0,len(path)): + path[index] = path[index].encode('utf8') + path[index] = path[index].strip() + path[index] = path[index][2:-1] + temp = path[0] + for index in range(1,len(path)): + temp = temp + "/" + path[index] + path = "/mgoblin_media/" + temp #Bug, have to solve this + form = forms.CustomizeSubtitlesForm(request.form) + return render_to_response( + request, + "mediagoblin/edit/edit_subtitles.html", + {"path": path, + "form": form }) \ No newline at end of file diff --git a/mediagoblin/templates/mediagoblin/edit/edit_subtitles.html b/mediagoblin/templates/mediagoblin/edit/edit_subtitles.html new file mode 100644 index 00000000..51bae307 --- /dev/null +++ b/mediagoblin/templates/mediagoblin/edit/edit_subtitles.html @@ -0,0 +1,36 @@ +{# +# GNU MediaGoblin -- federated, autonomous media hosting +# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +#} +{% extends "mediagoblin/base.html" %} + +{% import "/mediagoblin/utils/wtforms.html" as wtforms_util %} + +{% block title -%} +{%- endblock %} + +{% block mediagoblin_content %} +{{ path }} +
+
+ {{ wtforms_util.render_divs(form) }} +
+ + {{ csrf_token }} +
+
+
+{% endblock %} diff --git a/mediagoblin/templates/mediagoblin/user_pages/media.html b/mediagoblin/templates/mediagoblin/user_pages/media.html index ed493390..a9c71c8e 100644 --- a/mediagoblin/templates/mediagoblin/user_pages/media.html +++ b/mediagoblin/templates/mediagoblin/user_pages/media.html @@ -239,7 +239,7 @@ {%- for subtitle in media.subtitle_files %}
  • - {{- subtitle.name -}}