[bugzilla-gnome-org-extensions] template overrides: Add overrides for Developers extension



commit e9f934aca8ca1061354185be84214103f2f20054
Author: Krzesimir Nowak <qdlacz gmail com>
Date:   Sun Nov 9 13:07:33 2014 +0100

    template overrides: Add overrides for Developers extension

 TemplateOverrides/lib/Util.pm                      |    2 +
 .../template/en/default/bug/comments.html.tmpl     |  196 ++++++++++++++++++++
 .../template/en/default/global/user.html.tmpl      |   26 +++
 3 files changed, 224 insertions(+), 0 deletions(-)
---
diff --git a/TemplateOverrides/lib/Util.pm b/TemplateOverrides/lib/Util.pm
index b3e6037..0fedbc4 100644
--- a/TemplateOverrides/lib/Util.pm
+++ b/TemplateOverrides/lib/Util.pm
@@ -100,6 +100,8 @@ sub check_overridden_templates {
     my %digests = (
         'attachment/edit.html.tmpl' => '426ceeb820cefad35cbbf10ab053c1fc9f53fa71a63dd455418bff3221a46a0e',
         'attachment/list.html.tmpl' => 'b0c5edd84b8cc31666d0d0b4bf36cdb981ee322995dad891cf05f0f40b2d0392',
+        'bug/comments.html.tmpl' => 'd68e98b67eac9cd74ec7b0b663734f7a14953788864135be076a8cb03d648f09',
+        'global/user.html.tmpl' => 'ca16e2a988436109612b7b249e536f49669d4c5a9161911e3c14906a5f6d041d',
     );
 
     print "Checking overridden templates...\n" unless $silent;
diff --git a/TemplateOverrides/template/en/default/bug/comments.html.tmpl 
b/TemplateOverrides/template/en/default/bug/comments.html.tmpl
new file mode 100644
index 0000000..61d1c67
--- /dev/null
+++ b/TemplateOverrides/template/en/default/bug/comments.html.tmpl
@@ -0,0 +1,196 @@
+[%# This Source Code Form is subject to the terms of the Mozilla Public
+  # License, v. 2.0. If a copy of the MPL was not distributed with this
+  # file, You can obtain one at http://mozilla.org/MPL/2.0/.
+  #
+  # This Source Code Form is "Incompatible With Secondary Licenses", as
+  # defined by the Mozilla Public License, v. 2.0.
+  #%]
+
+[% PROCESS bug/time.html.tmpl %]
+
+<script src="[% 'js/comments.js' FILTER mtime %]" type="text/javascript">
+</script>
+
+<script type="text/javascript">
+<!--
+  /* Adds the reply text to the `comment' textarea */
+  function replyToComment(id, real_id, name) {
+      var prefix = "(In reply to " + name + " from comment #" + id + ")\n";
+      var replytext = "";
+      [% IF user.settings.quote_replies.value == 'quoted_reply' %]
+        /* pre id="comment_name_N" */
+        var text_elem = document.getElementById('comment_text_'+id);
+        var text = getText(text_elem);
+        replytext = prefix + wrapReplyText(text);
+      [% ELSIF user.settings.quote_replies.value == 'simple_reply' %]
+        replytext = prefix;
+      [% END %]
+
+      [% IF user.is_insider %]
+        if (document.getElementById('isprivate_' + real_id).checked) {
+            document.getElementById('newcommentprivacy').checked = 'checked';
+            updateCommentTagControl(document.getElementById('newcommentprivacy'), 'comment'); 
+        }
+      [% END %]
+
+      /* <textarea id="comment"> */
+      var textarea = document.getElementById('comment');
+      if (textarea.value != replytext) {
+          textarea.value += replytext;
+      }
+
+      textarea.focus();
+  } 
+//-->
+</script>
+
+[% DEFAULT start_at = 0 mode = "show" %]
+[% sort_order = user.settings.comment_sort_order.value %]
+[% user_cache = template_cache.users %]
+
+[%# NOTE: (start_at > 0) means we came here from a midair collision,
+  #       in which case we don't care what the user's preference is.
+ %]
+[% IF (start_at > 0) %]
+    [% sort_order = "oldest_to_newest" %]
+[% END %]
+
+<!-- This auto-sizes the comments and positions the collapse/expand links 
+     to the right. -->
+<table class="bz_comment_table" cellpadding="0" cellspacing="0"><tr>
+<td>
+
+[% FOREACH comment = comments %]
+  [% IF comment.count >= start_at %]
+    [% PROCESS a_comment %]
+  [% END %]
+[% END %]
+
+[% IF mode == "edit" && user.id
+      && user.settings.comment_box_position.value == "before_comments" %]
+  <div class="bz_add_comment">
+    <a href="#" 
+       onclick="return goto_add_comments();">
+       Add Comment</a>
+  </div>
+[% END %]
+
+[%# Note: this template is used in multiple places; if you use this hook,
+  # make sure you are aware of this fact.
+  #%]  
+[% Hook.process("aftercomments") %]
+
+</td>
+<td>
+  [% IF mode == "edit" %]
+    <ul class="bz_collapse_expand_comments">
+      <li><a href="#" onclick="toggle_all_comments('collapse'); 
+                               return false;">Collapse All Comments</a></li>
+      <li><a href="#" onclick="toggle_all_comments('expand');
+                               return false;">Expand All Comments</a></li>
+      [% IF user.settings.comment_box_position.value == "after_comments" && user.id %]
+        <li class="bz_add_comment"><a href="#" 
+            onclick="return goto_add_comments('bug_status_bottom');">
+            Add Comment</a></li>
+      [% END %]                               
+    </ul>
+  [% END %]
+</td>
+</tr></table>
+
+[%############################################################################%]
+[%# Block for individual comments                                            #%]
+[%############################################################################%]
+
+[% BLOCK a_comment %]
+  [% RETURN IF comment.is_private AND NOT (user.is_insider || user.id == comment.author.id) %]
+  [% comment_text = comment.body_full %]
+  [% RETURN IF comment_text == '' AND (comment.work_time - 0) != 0 AND !user.is_timetracker %]
+
+    <div id="c[% comment.count %]" class="bz_comment[% " bz_private" IF comment.is_private %]
+                [% " bz_comment_hilite" IF marks.${comment.count} %]
+                [% " bz_first_comment" IF comment.count == 0 %]">
+      [% IF comment.count == 0 %]
+        [% class_name = "bz_first_comment_head" %]
+        [% comment_label = "Description" %]
+      [% ELSE %]
+        [% class_name = "bz_comment_head" %]
+        [% comment_label = "Comment " _ comment.count %]
+      [% END %]
+
+      <div class="[% class_name FILTER html %]">
+
+        [% IF mode == "edit" %]
+          <span class="bz_comment_actions">
+            [% IF bug.check_can_change_field('longdesc', 0, 1) %]
+              [<a class="bz_reply_link" href="#add_comment"
+                [% IF user.settings.quote_replies.value != 'off' %]
+                  onclick="replyToComment('[% comment.count %]', '[% comment.id %]', '[% comment.author.name 
|| comment.author.nick FILTER html FILTER js %]'); return false;"
+                [% END %]
+              >reply</a>]
+            [% END %]
+            <script type="text/javascript"><!--
+              addCollapseLink([% comment.count %], 'Toggle comment display'); // -->
+            </script>
+          </span>
+        [% END %]
+
+        [% IF mode == "edit" && user.is_insider && bug.check_can_change_field('longdesc', 0, 1) %]
+          <div class="bz_private_checkbox">
+            <input type="hidden" value="1"
+                   name="defined_isprivate_[% comment.id %]">
+            <input type="checkbox"
+                   name="isprivate_[% comment.id %]" value="1"
+                   id="isprivate_[% comment.id %]"
+                   onClick="updateCommentPrivacy(this, [% comment.count %])"
+                   [% " checked=\"checked\"" IF comment.is_private %]>
+            <label for="isprivate_[% comment.id %]">Private</label>
+          </div>
+        [% END %]
+
+        <span class="bz_comment_number">
+          <a 
+             href="show_bug.cgi?id=[% bug.bug_id %]#c[% comment.count %]">
+            [%- comment_label FILTER html %]</a>
+        </span>
+
+        <span class="bz_comment_user">
+          [%# No need to recreate the exact same template if we already have it. %]
+          [% commenter_id = comment.author.id %]
+          [% UNLESS user_cache.$commenter_id %]
+            [% user_cache.$commenter_id = BLOCK %]
+              [% INCLUDE global/user.html.tmpl who = comment.author %]
+            [% END %]
+          [% END %]
+          [% user_cache.$commenter_id FILTER none %]
+        </span>
+
+        <span class="bz_comment_user_images">
+          [% FOREACH group = comment.author.groups_with_icon %]
+            <img src="[% group.icon_url FILTER html %]"
+                 alt="[% group.name FILTER html %]"
+                 title="[% group.name FILTER html %] - [% group.description FILTER html %]">
+          [% END %]
+        </span>
+
+        <span class="bz_comment_time">
+          [%+ comment.creation_ts FILTER time %]
+        </span>
+      </div>
+
+      [% IF user.is_timetracker &&
+            (comment.work_time > 0 || comment.work_time < 0) %]
+         <br>
+         Additional hours worked: 
+         [% PROCESS formattimeunit time_unit=comment.work_time %]
+      [% END %]
+
+[%# Don't indent the <pre> block, since then the spaces are displayed in the
+  # generated HTML
+  #%]
+<pre class="bz_comment_text" 
+     [% ' id="comment_text_' _ comment.count _ '"' IF mode == "edit" %]>
+  [%- comment_text FILTER quoteUrls(bug, comment) -%]
+</pre>
+    </div>
+[% END %]
diff --git a/TemplateOverrides/template/en/default/global/user.html.tmpl 
b/TemplateOverrides/template/en/default/global/user.html.tmpl
new file mode 100644
index 0000000..7050c6d
--- /dev/null
+++ b/TemplateOverrides/template/en/default/global/user.html.tmpl
@@ -0,0 +1,26 @@
+[%# This Source Code Form is subject to the terms of the Mozilla Public
+  # License, v. 2.0. If a copy of the MPL was not distributed with this
+  # file, You can obtain one at http://mozilla.org/MPL/2.0/.
+  #
+  # This Source Code Form is "Incompatible With Secondary Licenses", as
+  # defined by the Mozilla Public License, v. 2.0.
+  #%]
+
+[%# INTERFACE:
+  # who: A Bugzilla::User object that we are going to represent.
+  #%]
+
+<span class="vcard">
+  [% FILTER collapse %]
+    [% IF user.id %]
+      <a class="email" href="mailto:[% who.email FILTER html %]"
+         title="[% who.identity FILTER html %]">
+    [%- END -%]
+    [% IF who.name %]
+       <span class="fn">[% who.name FILTER html %]</span>
+    [% ELSE %]
+      [% who.login FILTER email FILTER html %]
+    [% END %]
+    [% '</a>' IF user.id %]
+  [% END %]
+</span>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]