Merge remote-tracking branch 'refs/remotes/tilly-q/OPW-Moderation-Update'
[mediagoblin.git] / mediagoblin / templates / mediagoblin / user_pages / media.html
index 7e184257faf96e85d704afd19b61aacf5e2dd51e..81e5013e88e812ab04caa2d696e168e4a7f1a4d6 100644 (file)
@@ -15,7 +15,7 @@
 # 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" %}
+{%- extends "mediagoblin/base.html" %}
 
 {% import "/mediagoblin/utils/wtforms.html" as wtforms_util %}
 {% from "mediagoblin/utils/pagination.html" import render_pagination %}
   <script type="text/javascript"
           src="{{ request.staticdirect('/js/keyboard_navigation.js') }}"></script>
 
-  {% if app_config['geolocation_map_visible'] %}
-    <link rel="stylesheet"
-         href="{{ request.staticdirect('/extlib/leaflet/leaflet.css') }}" />
-
-    <script type="text/javascript"
-            src="{{ request.staticdirect('/extlib/leaflet/leaflet.js') }}"></script>
-    <script type="text/javascript"
-            src="{{ request.staticdirect('/js/geolocation-map.js') }}"></script>
-  {% endif %}
+  {% template_hook("media_head") %}
 {% endblock mediagoblin_head %}
 
 {% block mediagoblin_content %}
     {%- endtrans -%}
   </p>
   {% include "mediagoblin/utils/prev_next.html" %}
-  <div class="media_pane">     
+  <div class="media_pane">
     <div class="media_image_container">
       {% block mediagoblin_media %}
         {% set display_media = request.app.public_store.file_url(
-                 media.get_display_media(media.media_files)) %}
+                 media.get_display_media()[1]) %}
         {# if there's a medium file size, that means the medium size
          #  isn't the original... so link to the original!
          #}
@@ -79,8 +71,8 @@
       {{ media.title }}
     </h2>
     {% if request.user and
-          (media.uploader == request.user.id or 
-           request.user.is_admin) %}
+          (media.uploader == request.user.id or
+           request.user.has_privilege('admin')) %}
       {% set edit_url = request.urlgen('mediagoblin.edit.edit_media',
                                  user= media.get_uploader.username,
                                  media_id=media.id) %}
                                  user= media.get_uploader.username,
                                  media_id=media.id) %}
       <a class="button_action" href="{{ delete_url }}">{% trans %}Delete{% endtrans %}</a>
+
     {% endif %}
     {% autoescape False %}
       <p>{{ media.description_html }}</p>
     {% endautoescape %}
-    {% if comments %}
-          <a
-            {% if not request.user %}
-              href="{{ request.urlgen('mediagoblin.auth.login') }}"
-            {% endif %}
-            class="button_action" id="button_addcomment" title="Add a comment">
-            {% trans %}Add a comment{% endtrans %}
-          </a>
+    {% if comments and request.user and request.user.has_privilege('commenter') %}
+      {% if app_config['allow_comments'] %}
+        <a
+          {% if not request.user %}
+          href="{{ request.urlgen('mediagoblin.auth.login') }}?next={{
+                                                request.base_url|urlencode }}"
+          {% endif %}
+          class="button_action" id="button_addcomment" title="Add a comment">
+          {% trans %}Add a comment{% endtrans %}
+        </a>
+        {% include "mediagoblin/utils/comment-subscription.html" %}
+
+      {% endif %}
       {% if request.user %}
-        <form action="{{ request.urlgen('mediagoblin.user_pages.media_post_comment', 
+        <form action="{{ request.urlgen('mediagoblin.user_pages.media_post_comment',
                                          user= media.get_uploader.username,
                                          media_id=media.id) }}" method="POST" id="form_comment">
           {{ wtforms_util.render_divs(comment_form) }}
             <input type="submit" value="{% trans %}Add this comment{% endtrans %}" class="button_action" />
               {{ csrf_token }}
           </div>
+          <input type="hidden" value="{{ request.urlgen('mediagoblin.user_pages.media_preview_comment') }}" id="previewURL" />
+          <input type="hidden" value="{% trans %}Comment Preview{% endtrans %}" id="previewText"/>
         </form>
+       <div id="comment_preview"></div>
       {% endif %}
       <ul style="list-style:none">
       {% for comment in comments %}
           <div class="comment_author">
             <img src="{{ request.staticdirect('/images/icon_comment.png') }}" />
             <a href="{{ request.urlgen('mediagoblin.user_pages.user_home',
-                            user = comment_author.username) }}">
+                            user=comment_author.username) }}"
+               class="comment_authorlink">
               {{- comment_author.username -}}
             </a>
-            {% trans %}at{% endtrans %}
             <a href="{{ request.urlgen('mediagoblin.user_pages.media_home.view_comment',
-                   comment = comment.id,
-                   user = media.get_uploader.username,
-                   media = media.slug_or_id) }}#comment">
-              {{- comment.created.strftime("%I:%M%p %Y-%m-%d") -}}
-            </a>:
+                            comment=comment.id,
+                            user=media.get_uploader.username,
+                            media=media.slug_or_id) }}#comment"
+               class="comment_whenlink">
+              <span title='{{- comment.created.strftime("%I:%M%p %Y-%m-%d") -}}'>
+                {%- trans formatted_time=timesince(comment.created) -%}
+                  {{ formatted_time }} ago
+                {%- endtrans -%}
+              </span></a>:
           </div>
           <div class="comment_content">
             {% autoescape False -%}
               {{ comment.content_html }}
             {%- endautoescape %}
           </div>
+          <div>
+            {% if app_config.allow_reporting %}
+                <a href="{{ request.urlgen('mediagoblin.user_pages.media_home.report_comment',
+                            user=media.get_uploader.username,
+                             media=media.slug_or_id,
+                             comment=comment.id) }}">
+                    {% trans %}Report{% endtrans %}</a>
+            {% endif %}
+          </div>
         </li>
       {% endfor %}
       </ul>
     {% endif %}
   </div>
   <div class="media_sidebar">
-    {% trans date=media.created.strftime("%Y-%m-%d") -%}
-      <h3>Added on</h3>
-      <p>{{ date }}</p>
-    {%- endtrans %}
+    <h3>{% trans %}Added{% endtrans %}</h3>
+    <p><span title="{{ media.created.strftime("%I:%M%p %Y-%m-%d") }}">
+        {%- trans formatted_time=timesince(media.created) -%}
+          {{ formatted_time }} ago
+        {%- endtrans -%}
+    </span></p>
+
+    {% block mediagoblin_after_added_sidebar %}
+    {% endblock %}
+
     {% if media.tags %}
       {% include "mediagoblin/utils/tags.html" %}
     {% endif %}
 
-    {% if media.collections %}
-      {% include "mediagoblin/utils/collections.html" %}
+    {% include "mediagoblin/utils/collections.html" %}
+
+    {% if app_config.allow_reporting %}
+      {% include "mediagoblin/utils/report.html" %}
     {% endif %}
 
     {% include "mediagoblin/utils/license.html" %}
 
-    {% include "mediagoblin/utils/geolocation_map.html" %}
-
     {% include "mediagoblin/utils/exif.html" %}
-    
-    {% if media.attachment_files|count %}
+
+    {%- if media.attachment_files|count %}
       <h3>{% trans %}Attachments{% endtrans %}</h3>
       <ul>
-        {% for attachment in media.attachment_files %}
+        {%- for attachment in media.attachment_files %}
           <li>
             <a href="{{ request.app.public_store.file_url(attachment.filepath) }}">
               {{- attachment.name -}}
             </a>
           </li>
-        {% endfor %}
+        {%- endfor %}
       </ul>
-    {% endif %}
-    {% if app_config['allow_attachments']
+    {%- endif %}
+    {%- if app_config['allow_attachments']
           and request.user
           and (media.uploader == request.user.id
-               or request.user.is_admin) %}
-      {% if not media.attachment_files|count %}
+               or request.user.has_privilege('admin')) %}
+      {%- if not media.attachment_files|count %}
         <h3>{% trans %}Attachments{% endtrans %}</h3>
-      {% endif %}
+      {%- endif %}
       <p>
         <a href="{{ request.urlgen('mediagoblin.edit.attachments',
                       user=media.get_uploader.username,
-                      media=media.id) }}">{% trans %}Add attachment{% endtrans %}</a>
+                      media_id=media.id) }}">
+          {%- trans %}Add attachment{% endtrans -%}
+        </a>
       </p>
-    {% endif %}
+    {%- endif %}
 
-    {% if request.user %}
-      <p>
-        <a type="submit" href="{{ request.urlgen('mediagoblin.user_pages.media_collect', 
-                                    user=media.get_uploader.username,
-                                    media=media.id) }}"
-           class="button_action"
-           title="{% trans %}Add media to collection{% endtrans %}">
-          <img src="{{ request.staticdirect('/images/icon_collect.png') }}"
-               />
-       </a>
-      </p>
-    {% endif %}
+    {% template_hook("media_sideinfo") %}
 
     {% block mediagoblin_sidebar %}
     {% endblock %}
+
   </div>
   <div class="clear"></div>
 {% endblock %}