⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 edit.html.tmpl

📁 buzilla软件
💻 TMPL
📖 第 1 页 / 共 2 页
字号:
[%# 1.0@bugzilla.org %][%# 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 <gerv@gerv.net>  #                 Vaskin Kissoyan <vkissoyan@yahoo.com>  #                 Max Kanat-Alexander <mkanat@bugzilla.org>  #                 Frédéric Buclin <LpSolit@gmail.com>  #                 Olav Vitters <olav@bkor.dhs.org>  #%][% PROCESS global/variables.none.tmpl %][% PROCESS "global/field-descs.none.tmpl" %][% PROCESS bug/time.html.tmpl %]  <script type="text/javascript">  <!--  /* Outputs a link to call replyToComment(); used to reduce HTML output */  function addReplyLink(id) {      /* XXX this should really be updated to use the DOM Core's       * createElement, but finding a container isn't trivial.       */      document.write('[<a href="#add_comment" onclick="replyToComment(' +                      id + ');">reply<' + '/a>]');  }  /* Adds the reply text to the `comment' textarea */  function replyToComment(id) {      /* pre id="comment_name_N" */      var text_elem = document.getElementById('comment_text_'+id);      var text = getText(text_elem);      /* make sure we split on all newlines -- IE or Moz use \r and \n       * respectively.       */      text = text.split(/\r|\n/);      var replytext = "";      for (var i=0; i < text.length; i++) {          replytext += "> " + text[i] + "\n";       }      replytext = "(In reply to comment #" + id + ")\n" + replytext + "\n";    [% IF Param("insidergroup") && user.in_group(Param("insidergroup")) %]      if (document.getElementById('isprivate-'+id).checked) {          document.getElementById('newcommentprivacy').checked = 'checked';      }    [% END %]      /* <textarea id="comment"> */      var textarea = document.getElementById('comment');      textarea.value += replytext;      textarea.focus();  }  if (typeof Node == 'undefined') {      /* MSIE doesn't define Node, so provide a compatibility object */      window.Node = {          TEXT_NODE: 3,          ENTITY_REFERENCE_NODE: 5      };  }  /* Concatenates all text from element's childNodes. This is used   * instead of innerHTML because we want the actual text (and   * innerText is non-standard).   */  function getText(element) {      var child, text = "";      for (var i=0; i < element.childNodes.length; i++) {          child = element.childNodes[i];          var type = child.nodeType;          if (type == Node.TEXT_NODE || type == Node.ENTITY_REFERENCE_NODE) {              text += child.nodeValue;          } else {              /* recurse into nodes of other types */              text += getText(child);          }      }      return text;  }[% IF user.in_group(Param('timetrackinggroup')) %]  var fRemainingTime = [% bug.remaining_time %]; // holds the original value  function adjustRemainingTime() {      // subtracts time spent from remaining time      var new_time;      // prevent negative values if work_time > fRemainingTime      new_time =          Math.max(fRemainingTime - document.changeform.work_time.value, 0.0);      // get upto 2 decimal places      document.changeform.remaining_time.value =          Math.round(new_time * 100)/100;  }  function updateRemainingTime() {      // if the remaining time is changed manually, update fRemainingTime      fRemainingTime = document.changeform.remaining_time.value;  }[% END %]  function updateCommentTagControl(checkbox, form) {      if (checkbox.checked) {          form.comment.className='bz_private';      } else {          form.comment.className='';      }  }  //-->  </script><form name="changeform" method="post" action="process_bug.cgi">  <input type="hidden" name="delta_ts" value="[% bug.delta_ts %]">  <input type="hidden" name="longdesclength" value="[% bug.longdescs.size %]">  <input type="hidden" name="id" value="[% bug.bug_id %]">  [%# That's the main table, which contains all editable fields. %]  <table>    <tr>      <td valign="top">        <fieldset>          <legend>Details</legend>          <table>            [%# *** Summary *** %]            <tr>              <td align="right">                <label for="short_desc" accesskey="s"><b><u>S</u>ummary</b></label>:              </td>              [% PROCESS input inputname => "short_desc" size => "60" colspan => 2                               maxlength => 255 %]            </tr>            <tr>              <td colspan="3">                <table>                  <tr>                    [%# *** ID, product, component, status and resolution *** %]                    <td valign="top">[% PROCESS section_details1 %]</td>                    [%# *** Platform, OS, severity, priority, version and milestone *** %]                    <td valign="top">[% PROCESS section_details2 %]</td>                  </tr>                </table>              </td>            </tr>            <tr>              <td colspan="3"><hr size="1"></td>            </tr>            [%# *** URL Whiteboard Keywords *** %]            <tr>              <td align="right">                <label for="bug_file_loc" accesskey="u"><b>                  [% IF bug.bug_file_loc                      AND NOT bug.bug_file_loc.match("^(javascript|data)") %]                    <a href="[% bug.bug_file_loc FILTER html %]"><u>U</u>RL</a>                  [% ELSE %]                    <u>U</u>RL                  [% END %]                [%%]</b></label>:              </td>              [% PROCESS input inputname => "bug_file_loc" size => "60" colspan => 2 %]            </tr>            [% IF Param('usestatuswhiteboard') %]              <tr>                <td align="right">                  <label for="status_whiteboard" accesskey="w"><b><u>W</u>hiteboard</b></label>:                </td>                [% PROCESS input inputname => "status_whiteboard" size => "60" colspan => 2 %]              </tr>            [% END %]            [% IF use_keywords %]              <tr>                <td align="right">                  <label for="keywords" accesskey="k">                    <b><a href="describekeywords.cgi"><u>K</u>eywords</a></b></label>:                </td>                [% PROCESS input inputname => "keywords" size => 60 colspan => 2                                 value => bug.keywords.join(', ') %]              </tr>            [% END %]            [%# *** Custom Fields *** %]            [% USE Bugzilla %]            [% fields = Bugzilla.get_fields({ obsolete => 0, custom => 1 }) %]            [% IF fields %]              [% FOREACH field = fields %]                <tr>                  [% PROCESS bug/field.html.tmpl value=bug.${field.name}                                                 editable = bug.check_can_change_field(field.name, 0, 1)                                                 value_span = 2 %]                </tr>              [% END %]            [% END %]            [%# *** Dependencies *** %]            <tr>              [% PROCESS dependencies                         dep = { title => "Depends&nbsp;on", fieldname => "dependson" } %]            </tr>            <tr>              [% PROCESS dependencies accesskey = "b"                         dep = { title => "<u>B</u>locks", fieldname => "blocked" } %]            </tr>            <tr>              <th>&nbsp;</th>              <td colspan="2">                <a href="showdependencytree.cgi?id=[% bug.bug_id %]&amp;hide_resolved=1">Show                   dependency tree</a>                [% IF Param('webdotbase') %]                  - <a href="showdependencygraph.cgi?id=[% bug.bug_id %]">Show                       dependency graph</a>                [% END %]              </td>            </tr>          </table>        </fieldset>      </td>      [%# Force the layout to be displayed now, before drawing the second column of the table.        # This should prevent bug 370739 when using Firefox 2. %]      <script type="text/javascript">        <!--        var v = document.body.offsetHeight;        //-->      </script>      <td valign="top">        [%# *** Reporter, owner and QA contact *** %]        <fieldset>          <legend>People</legend>          [% PROCESS section_people %]        </fieldset>        [%# *** Flags *** %]        [% show_bug_flags = 0 %]        [% FOREACH type = bug.flag_types %]          [% IF (type.flags && type.flags.size > 0) || (user.id && type.is_active) %]            [% show_bug_flags = 1 %]            [% LAST %]          [% END %]        [% END %]        [% IF show_bug_flags %]          <fieldset>            <legend>Flags</legend>            <table cellspacing="1" cellpadding="1">              <tr>                <td colspan="2" valign="top">                  [% IF user.id %]                    [% IF bug.flag_types.size > 0 %]                      [% PROCESS "flag/list.html.tmpl" flag_no_header = 1                                                       flag_types = bug.flag_types                                                       any_flags_requesteeble = bug.any_flags_requesteeble %]                    [% END %]                  [% ELSE %]                    [% FOREACH type = bug.flag_types %]                      [% FOREACH flag = type.flags %]                          [% flag.setter.nick FILTER html %]:                          [%+ type.name FILTER html FILTER no_break %][% flag.status %]                          [%+ IF flag.requestee %]                            ([% flag.requestee.nick FILTER html %])                          [% END %]<br>                      [% END %]                    [% END %]                  [% END %]                </td>              </tr>            </table>          </fieldset>        [% END %]      </td>    </tr>  </table>  [% IF user.in_group(Param('timetrackinggroup')) %]    <br>    <table cellspacing="0" cellpadding="4" border="1">      <tr>        <th align="center" bgcolor="#cccccc">          <label for="estimated_time">Orig. Est.</label>        </th>        <th align="center" bgcolor="#cccccc">          Current Est.        </th>        <th align="center" bgcolor="#cccccc">          <label for="work_time">Hours Worked</label>        </th>        <th align="center" bgcolor="#cccccc">          <label for="remaining_time">Hours Left</label>        </th>        <th align="center" bgcolor="#cccccc">          %Complete        </th>        <th align="center" bgcolor="#cccccc">          Gain        </th>        <th align="center" bgcolor="#cccccc">          <label for="deadline">Deadline</label>        </th>      </tr>      <tr>        <td align="center">          <input name="estimated_time" id="estimated_time"                 value="[% PROCESS formattimeunit                                   time_unit=bug.estimated_time %]"                 size="6" maxlength="6">        </td>        <td align="center">          [% PROCESS formattimeunit                     time_unit=(bug.actual_time + bug.remaining_time) %]        </td>        <td align="center">          [% PROCESS formattimeunit time_unit=bug.actual_time %] +          <input name="work_time" id="work_time"                 value="0" size="3" maxlength="6"                 onchange="adjustRemainingTime();">        </td>        <td align="center">          <input name="remaining_time" id="remaining_time"                 value="[% PROCESS formattimeunit                                   time_unit=bug.remaining_time %]"                 size="6" maxlength="6" onchange="updateRemainingTime();">        </td>        <td align="center">          [% PROCESS calculatepercentage act=bug.actual_time                                         rem=bug.remaining_time %]        </td>        <td align="center">          [% PROCESS formattimeunit time_unit=bug.estimated_time - (bug.actual_time + bug.remaining_time) %]        </td>         <td align="center">           <input name="deadline" id="deadline" value="[% bug.deadline %]"                  size="10" maxlength="10"><br />           <small>(YYYY-MM-DD)</small>        </td>              </tr>      <tr>        <td colspan="7" align="right">          <a href="summarize_time.cgi?id=[% bug.bug_id %]&amp;do_depends=1">          Summarize time (including time for [% terms.bugs %]          blocking this [% terms.bug %])</a>        </td>      </tr>    </table>  [% END %][%# *** Attachments *** %]  [% PROCESS attachment/list.html.tmpl             attachments = bug.attachments             bugid       = bug.bug_id             num_attachment_flag_types = bug.num_attachment_flag_types             show_attachment_flags = bug.show_attachment_flags   %][%# *** Comments Groups *** %]  <br>  <table cellpadding="1" cellspacing="1">    <tr>      <td>        [% IF user.id %]          <label for="comment" accesskey="c"><b>Additional <u>C</u>omments</b></label>:          [% IF Param("insidergroup") && user.in_group(Param("insidergroup")) %]            <input type="checkbox" name="commentprivacy" value="1"                   id="newcommentprivacy"                   onClick="updateCommentTagControl(this, form)">            <label for="newcommentprivacy">Private</label>          [% END %]          <br>          <a name="add_comment"></a>          [% INCLUDE global/textarea.html.tmpl                     name      = 'comment'                     id        = 'comment'                     minrows   = 10                     maxrows   = 25                     cols      = constants.COMMENT_COLS          %]          [% IF NOT bug.cc || NOT bug.cc.contains(user.login) %]            [% has_role = bug.user.isreporter                          || bug.assigned_to.id == user.id                          || (Param('useqacontact')                              && bug.qa_contact                              && bug.qa_contact.id == user.id) %]            <br>            <input type="checkbox" id="addselfcc" name="addselfcc"              [% " checked=\"checked\""                   IF user.settings.state_addselfcc.value == 'always'

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -