[%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of # the License at http://www.mozilla.org/MPL/ # # Software distributed under the License is distributed on an "AS # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or # implied. See the License for the specific language governing # rights and limitations under the License. # # The Original Code is the Bugzilla Bug Tracking System. # # The Initial Developer of the Original Code is Netscape Communications # Corporation. Portions created by Netscape are # Copyright (C) 1998 Netscape Communications Corporation. All # Rights Reserved. # # Contributor(s): Gervase Markham # Max Kanat-Alexander # Shane H. W. Travis #%] [% PROCESS bug/time.html.tmpl %] [% DEFAULT start_at = 0 mode = "show" %] [% isinsider = Param("insidergroup") && user.in_group(Param("insidergroup")) %] [% sort_order = user.settings.comment_sort_order.value %] [%# 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 %] [%# Set up the variables as needed, depending on the sort order %] [% IF sort_order == "oldest_to_newest" %] [% count = 0 %] [% description = 0 %] [% increment = 1 %] [% ELSE %] [% increment = -1 %] [% IF sort_order == "newest_to_oldest" %] [% count = comments.size - 1 %] [% description = 0 %] [% ELSIF sort_order == "newest_to_oldest_desc_first" %] [% count = comments.size %] [% description = comments.size %] [% END %] [% END %] [% IF mode == "edit" %] Collapse All Comments - Expand All Comments
[% END %] [% FOREACH comment = comments %] [% IF count >= start_at %] [% PROCESS a_comment %] [% END %] [% count = count + increment %] [% 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") %] [%############################################################################%] [%# Block for individual comments #%] [%############################################################################%] [% BLOCK a_comment %] [% IF NOT comment.isprivate || isinsider %]
[% IF count == description %] [% class_name = "bz_first_comment_head" %] [% comment_label = "" %] [% comment_link = "Description" %] [% decoration = "" %] [% ELSE %] [% class_name = "bz_comment_head" %] [% comment_label = "Comment" %] [% comment_link = "#" _ count %] [% decoration = '-------' %] [% END %] [%# Do not filter decoration as it's a real HTML tag. No XSS risk. %] [% decoration FILTER none %] [% comment_label FILTER html %] [% comment_link FILTER html %] From [% FOREACH group = comment.author.direct_group_membership %] [% NEXT UNLESS group.icon_url %] [% group.name FILTER html %] [% END %] [%+ comment.time FILTER time %] [% IF mode == "edit" %] [% END %] [%+ decoration FILTER none %] [% IF mode == "edit" && isinsider %] [% END %] [% IF user.in_group(Param('timetrackinggroup')) && (comment.work_time > 0 || comment.work_time < 0) %]
Additional hours worked: [% PROCESS formattimeunit time_unit=comment.work_time %] [% END %] [%# Don't indent the
 block, since then the spaces are displayed in the
  # generated HTML
  #%]
[% IF comment.already_wrapped %]
    [% wrapped_comment = comment.body %]
[% ELSE %]
    [% wrapped_comment = comment.body FILTER wrap_comment %]
[% END %]
  [%- wrapped_comment FILTER quoteUrls(bug.bug_id, comment.already_wrapped) -%]
[% END %] [% END %]