Customizing Subs using Wtforms
authorsaksham1115 <saksham115@gmail.com>
Mon, 20 Jun 2016 05:47:43 +0000 (05:47 +0000)
committersaksham1115 <saksham115@gmail.com>
Tue, 19 Jul 2016 17:29:09 +0000 (17:29 +0000)
mediagoblin/edit/forms.py
mediagoblin/edit/routing.py
mediagoblin/edit/views.py
mediagoblin/templates/mediagoblin/edit/edit_subtitles.html [new file with mode: 0644]
mediagoblin/templates/mediagoblin/user_pages/media.html

index c9eae42955c4e8fba61030715f3dda14fe434c84..7208593b203a8b409912b574842ca584d6640368 100644 (file)
@@ -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(
index b349975d397eabd8bc7e21b04e82cda0adcd6af8..d6d07dae26f5f6d8213e0cb4d3becb5188312260 100644 (file)
@@ -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/<string:path>/edit/',
+    'mediagoblin.edit.views:edit_subtitles')
index cad583063606bfeda2ef6195c45f94a596e8f5b5..0582b08c3a2eb1ee485d879c1ca16639e89e73cd 100644 (file)
@@ -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 (file)
index 0000000..51bae30
--- /dev/null
@@ -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 <http://www.gnu.org/licenses/>.
+#}
+{% extends "mediagoblin/base.html" %}
+
+{% import "/mediagoblin/utils/wtforms.html" as wtforms_util %}
+
+{% block title -%}
+{%- endblock %}
+
+{% block mediagoblin_content %}
+{{ path }}
+  <form action="{{ request.urlgen('mediagoblin.edit.edit_subtitles',path='{{ path }}') }}" method="POST" enctype="multipart/form-data">
+    <div class="form_box edit_box">
+      {{ wtforms_util.render_divs(form) }}
+      <div class="form_submit_buttons">
+        <input type="submit" value="{% trans %}Save changes{% endtrans %}" class="button_form" />
+       {{ csrf_token }}
+      </div>
+    </div>
+  </form>
+{% endblock %}
index ed493390abfb74615ea02099577bf361d413b13a..a9c71c8e1f1e17127bfb7102b121ca42f4a444e6 100644 (file)
         {%- for subtitle in media.subtitle_files %}
           <li>
         <!--    <a href="{{ request.app.public_store.file_url(subtitle.filepath) }}"> -->
-              <a href="{{ request.urlgen('mediagoblin.edit.custom_subtitles',
+              <a href="{{ request.urlgen('mediagoblin.edit.edit_subtitles',
                           path=subtitle.filepath) }}">
               {{- subtitle.name -}}
       <!--      </a>  -->