summaryrefslogtreecommitdiffstats
path: root/template/en/default/bug/create
diff options
context:
space:
mode:
Diffstat (limited to 'template/en/default/bug/create')
-rw-r--r--template/en/default/bug/create/comment-guided.txt.tmpl54
-rw-r--r--template/en/default/bug/create/comment.txt.tmpl32
-rw-r--r--template/en/default/bug/create/confirm-create-dupe.html.tmpl57
-rw-r--r--template/en/default/bug/create/create-guided.html.tmpl523
-rw-r--r--template/en/default/bug/create/create.html.tmpl705
-rw-r--r--template/en/default/bug/create/created.html.tmpl61
-rw-r--r--template/en/default/bug/create/make-template.html.tmpl46
-rw-r--r--template/en/default/bug/create/user-message.html.tmpl36
8 files changed, 1514 insertions, 0 deletions
diff --git a/template/en/default/bug/create/comment-guided.txt.tmpl b/template/en/default/bug/create/comment-guided.txt.tmpl
new file mode 100644
index 0000000..df04d8f
--- /dev/null
+++ b/template/en/default/bug/create/comment-guided.txt.tmpl
@@ -0,0 +1,54 @@
+[%# 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>
+ #%]
+[%# INTERFACE:
+ # This template has no interface.
+ #
+ # Form variables from a bug submission (i.e. the fields on a template from
+ # enter_bug.cgi) can be access via Bugzilla.cgi.param. It can be used to
+ # pull out various custom fields and format an initial Description entry
+ # from them.
+ #%]
+[% USE Bugzilla %]
+[% cgi = Bugzilla.cgi %]
+User-Agent: [%+ cgi.user_agent() %]
+Build Identifier: [%+ cgi.param("buildid") %]
+
+[%+ cgi.param("comment") IF cgi.param("comment") %]
+
+[%+ IF cgi.param("reproducible") != "Choose one..." -%]
+Reproducible: [%+ cgi.param("reproducible") %]
+[% END %]
+
+[% IF !(cgi.param("reproduce_steps").match('^1\.\s*2\.\s*3\.\s*$') || cgi.param("reproduce_steps").match('^\s*$')) %]
+Steps to Reproduce:
+[%+ cgi.param("reproduce_steps") %]
+[% END %]
+
+[% IF cgi.param("actual_results") -%]
+Actual Results:
+[%+ cgi.param("actual_results") %]
+[% END %]
+
+[% IF cgi.param("expected_results") %]
+Expected Results:
+[%+ cgi.param("expected_results") %]
+[% END %]
+
+[%+ cgi.param("additional_info") %]
diff --git a/template/en/default/bug/create/comment.txt.tmpl b/template/en/default/bug/create/comment.txt.tmpl
new file mode 100644
index 0000000..e7339d3
--- /dev/null
+++ b/template/en/default/bug/create/comment.txt.tmpl
@@ -0,0 +1,32 @@
+[%# 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>
+ #%]
+[%# INTERFACE:
+ # This template has no interface.
+ #
+ # Form variables from a bug submission (i.e. the fields on a template from
+ # enter_bug.cgi) can be access via Bugzilla.cgi.param. It can be used to
+ # pull out various custom fields and format an initial Description entry
+ # from them.
+ #%]
+[% USE Bugzilla %]
+[% Hook.process("form") %]
+
+
+[% Bugzilla.cgi.param("comment") %]
diff --git a/template/en/default/bug/create/confirm-create-dupe.html.tmpl b/template/en/default/bug/create/confirm-create-dupe.html.tmpl
new file mode 100644
index 0000000..b0a5cdd
--- /dev/null
+++ b/template/en/default/bug/create/confirm-create-dupe.html.tmpl
@@ -0,0 +1,57 @@
+[%# 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 Olav Vitters.
+ #
+ # Contributor(s): Olav Vitters <olav@bkor.dhs.org>
+ #%]
+
+[%# INTERFACE:
+ # bugid: integer. ID of the bug previously used to create a bug.
+ # allow_override: boolean int. Is 1 if the user may submit the bug again.
+ #%]
+
+[% PROCESS "global/field-descs.none.tmpl" %]
+
+[% PROCESS global/header.html.tmpl
+ title = "Already filed $terms.bug"
+%]
+
+[% USE Bugzilla %]
+
+<table cellpadding="20">
+ <tr>
+ <td bgcolor="#ff0000">
+ <font size="+2">
+ You already used the form to file [% "$terms.bug $bugid" FILTER bug_link(bugid) FILTER none %].
+ </font>
+ </td>
+ </tr>
+</table>
+
+<p><font size="big">You are highly encouraged to visit [% "$terms.bug $bugid"
+FILTER bug_link(bugid) FILTER none %].</font></p>
+
+[% IF allow_override %]
+ <p>If you are sure you used the same form to submit a new [% terms.bug %],
+ click 'File [% terms.bug %] again'.<p>
+
+ <form name="create" id="create" method="post" action="post_bug.cgi"
+ [%- IF Bugzilla.cgi.param("data") %] enctype="multipart/form-data"[% END %]>
+ [% PROCESS "global/hidden-fields.html.tmpl"
+ exclude="^(Bugzilla_login|Bugzilla_password|ignore_token)$" %]
+ <input type="hidden" name="ignore_token" value="[% bugid FILTER html %]">
+ <input type="submit" value="File [% terms.bug %] again" id="file_bug_again">
+ </form>
+[% END %]
+
+[% PROCESS global/footer.html.tmpl %]
diff --git a/template/en/default/bug/create/create-guided.html.tmpl b/template/en/default/bug/create/create-guided.html.tmpl
new file mode 100644
index 0000000..9f2a21b
--- /dev/null
+++ b/template/en/default/bug/create/create-guided.html.tmpl
@@ -0,0 +1,523 @@
+[%# 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>
+ # Christine Begle <cbegle@mozilla.org>
+ #%]
+
+[%# INTERFACE:
+ # This template has the same interface as create.html.tmpl
+ #%]
+
+[% PROCESS global/variables.none.tmpl %]
+
+[% USE Bugzilla %]
+[% cgi = Bugzilla.cgi %]
+
+[% PROCESS global/header.html.tmpl
+ title = "Enter $terms.ABug"
+ onload = "PutDescription()"
+ style = "#somebugs { width: 100%; height: 500px }"
+ %]
+
+<p>
+ <font color="red">
+ This is a template used on mozilla.org. This template, and the
+ comment-guided.txt.tmpl template that formats the data submitted via
+ the form in this template, are included as a demo of what it's
+ possible to do with custom templates in general, and custom [% terms.bug %]
+ entry templates in particular. As much of the text will not apply,
+ you should alter it
+ if you want to use this form on your [% terms.Bugzilla %] installation.
+ </font>
+</p>
+
+[% tablecolour = "#FFFFCC" %]
+
+[%# This script displays the descriptions for selected components. %]
+<script type="text/javascript">
+var descriptions = [
+[% FOREACH c = product.components %]
+ '[% c.description FILTER js %]',
+[% END %]
+];
+
+function PutDescription() {
+ if ((document.getElementById) && (document.body.innerHTML)) {
+ var componentIndex = document.getElementById('component').selectedIndex;
+ if (componentIndex != -1) {
+ var description = document.getElementById('description');
+ description.innerHTML = descriptions[componentIndex];
+ }
+ }
+}
+</script>
+
+<a name="step1"></a>
+<h3>Step 1 of 3 - has your [% terms.bug %] already been reported?</h3>
+
+<p>
+ <font color="red">Please don't skip this step - half of all
+ [% terms.bugs %] filed are
+ reported already.</font>
+ Check the two lists of frequently-reported [% terms.bugs %]:
+</p>
+
+[%# Include other products if sensible %]
+[% IF product.name == "Firefox" %]
+ [% productstring = "product=Mozilla%20Application%20Suite&amp;product=Firefox" %]
+[% ELSIF product.name == "Thunderbird" %]
+ [% productstring = "product=Mozilla%20Application%20Suite&amp;product=Thunderbird" %]
+[% ELSE %]
+ [% productstring = BLOCK %]product=[% product.name FILTER url_quote %][% END %]
+[% END %]
+
+<p>
+ <a href="duplicates.cgi?[% productstring %]&amp;format=simple" target="somebugs">All-time Top 100</a> (loaded initially) |
+ <a href="duplicates.cgi?[% productstring %]&amp;format=simple&amp;sortby=delta&amp;reverse=1&amp;maxrows=100&amp;changedsince=14" target="somebugs">Hot in the last two weeks</a>
+</p>
+
+<iframe name="somebugs" id="somebugs"
+ style="border: 2px black solid"
+ src="duplicates.cgi?[% productstring %]&amp;format=simple">
+</iframe>
+
+<p>
+ If your [% terms.bug %] isn't there, search [% terms.Bugzilla %] by entering
+ a few key words having to do with your [% terms.bug %] in this box.
+ For example: <tt><b>pop3 mail</b></tt> or <tt><b>copy paste</b></tt>.
+ The results will appear above.
+ </p>
+
+[%# All bugs opened inside the past six months %]
+ <form action="buglist.cgi" method="get" target="somebugs">
+ <input type="hidden" name="format" value="simple">
+ <input type="hidden" name="order" value="relevance desc">
+ <input type="hidden" name="bug_status" value="__all__">
+ <input type="hidden" name="product" value="[% product.name FILTER html %]">
+ [% IF product.name == "Firefox" OR
+ product.name == "Thunderbird" OR
+ product.name == "Mozilla Application Suite" OR
+ product.name == "Camino" %]
+ <input type="hidden" name="product" value="Core">
+ <input type="hidden" name="product" value="Toolkit">
+ <input type="hidden" name="product" value="PSM">
+ <input type="hidden" name="product" value="NSPR">
+ <input type="hidden" name="product" value="NSS">
+ [% END %]
+ <input type="hidden" name="chfieldfrom" value="-6m">
+ <input type="hidden" name="chfieldto" value="Now">
+ <input type="hidden" name="chfield" value="[Bug creation]">
+ <input type="text" name="content" size="40">
+ <input type="submit" id="search" value="Search">
+ </form>
+
+<p>
+ Look through the search results. If you get the
+ <tt><b>[% terms.zeroSearchResults %]</b></tt> message, [% terms.Bugzilla %]
+ found no [% terms.bugs %] that
+ match. Check for typing mistakes, or try fewer or different keywords.
+ If you find [% terms.abug %] that looks the same as yours, please add
+ any useful extra information you have to it, rather than opening a new one.
+</p>
+
+
+<a name="step2"></a>
+<h3>Step 2 of 3 - give information</h3>
+
+<p>
+ If you've tried a few searches and your [% terms.bug %] really isn't in
+ there, tell us all about it.
+</p>
+
+<form method="post" action="post_bug.cgi">
+ <input type="hidden" name="format" value="guided">
+ <input type="hidden" name="assigned_to" value="">
+ <input type="hidden" name="priority"
+ value="[% default.priority FILTER html %]">
+ <input type="hidden" name="version"
+ value="[% default.version FILTER html %]">
+ <input type="hidden" name="token" value="[% token FILTER html %]">
+
+<table valign="top" cellpadding="5" cellspacing="5" border="0">
+
+ <tr bgcolor="[% tablecolour %]">
+ <td align="right" valign="top">
+ <b>Product</b>
+ </td>
+ <td valign="top">
+ <input type="hidden" name="product" value="[% product.name FILTER html %]">
+ [% product.name FILTER html %]
+ </td>
+ </tr>
+
+ <tr>
+ <td align="right" valign="top">
+ <b>Component</b>
+ </td>
+ <td valign="top">
+ <table border="0" cellpadding="0" cellspacing="0">
+ <tr>
+ <td valign="top">
+ <select name="component" id="component"
+ size="5" onchange="PutDescription()">
+ [% IF NOT default.component_ %]
+ [%# Various b.m.o. products have a "General" component,
+ which is a useful default. %]
+ [% default.component_ = "General" %]
+ [% END %]
+ [% FOREACH c = product.components %]
+ <option value="[% c.name FILTER html %]"
+ [% " selected=\"selected\"" IF c.name == default.component_ %]>
+ [% c.name FILTER html %]
+ </option>
+ [% END %]
+ </select>
+ </td>
+ <td valign="top" width="100%">
+ <div id="description" style="color: green; margin-left: 10px;
+ height: 5em; overflow: auto;">
+ <script type="text/javascript">
+ if ((document.getElementById) && (document.body.innerHTML)) {
+ document.write("\
+ Select a component to see its description here.");
+ }
+ </script>
+ </div>
+ </td>
+ </tr>
+ </table>
+
+ <p>
+ The area where the problem occurs.
+ To pick the right component, you could use the same one as
+ similar [% terms.bugs %] you found in your search, or read the full list of
+ <a target="_blank" href="describecomponents.cgi?product=
+ [% product.name FILTER url_quote %]">component
+ descriptions</a> (opens in new window) if you need more help.
+ </p>
+ </td>
+ </tr>
+
+ [%# We override rep_platform and op_sys for simplicity. The values chosen
+ are based on which are most common in the b.m.o database %]
+ [% rep_platform = [ "PC", "Macintosh", "All", "Other" ] %]
+
+ <tr bgcolor="[% tablecolour %]">
+ <td align="right" valign="top">
+ <b>Hardware Platform</b>
+ </td>
+ <td valign="top">
+ [% PROCESS select sel = 'rep_platform' %]
+ </td>
+ </tr>
+
+ [% op_sys = [ "Windows 2000", "Windows XP", "Windows Vista", "Windows 7",
+ "Mac OS X", "Linux", "All", "Other" ] %]
+
+ <tr>
+ <td align="right" valign="top">
+ <b>Operating System</b>
+ </td>
+ <td valign="top">
+ [% PROCESS select sel = 'op_sys' %]
+ </td>
+ </tr>
+
+ [% IF product.name.match("Firefox|Camino|Mozilla Application Suite") %]
+ [% matches = cgi.user_agent('Gecko/(\d+)') %]
+ [% buildid = cgi.user_agent() IF matches %]
+ [% END %]
+
+ [%# Accept URL parameter build ID for non-browser products %]
+ [% IF cgi.param("buildid") %]
+ [% buildid = cgi.param("buildid") %]
+ [% END %]
+
+ <tr bgcolor="[% tablecolour %]">
+ <td align="right" valign="top">
+ <b>Build Identifier</b>
+ </td>
+ <td valign="top">
+ <input type="text" size="80" name="buildid" value="[% buildid FILTER html %]">
+ <p>
+ This should identify the exact version of the product you were using.
+ If the above field is blank or you know it is incorrect, copy the
+ version text from the product's Help |
+ About menu (for browsers this will begin with "Mozilla/5.0...").
+ If the product won't start, instead paste the complete URL you downloaded
+ it from.
+ </p>
+ </td>
+ </tr>
+
+ <tr>
+ <td align="right" valign="top">
+ <b>URL</b>
+ </td>
+ <td valign="top">
+ <input type="text" size="80" name="bug_file_loc" value="http://">
+ <p>
+ URL that demonstrates the problem you are seeing (optional).<br>
+ <b>IMPORTANT</b>: if the problem is with a broken web page, you need
+ to report it
+ <a href="https://bugzilla.mozilla.org/page.cgi?id=broken-website.html">a different way</a>.
+ </p>
+ </td>
+ </tr>
+
+ <tr bgcolor="[% tablecolour %]">
+ <td align="right" valign="top">
+ <b>Summary</b>
+ </td>
+ <td valign="top">
+ <input type="text" size="80" name="short_desc" id="short_desc"
+ maxlength="255" spellcheck="true">
+ <p>
+ A sentence which summarises the problem.
+ Please be descriptive and use lots of keywords.
+ </p>
+ <p>
+ <tt>
+ <font color="#990000">Bad example</font>: mail crashed
+ </tt>
+ <br>
+ <tt>
+ <font color="#009900">Good example</font>:
+ crash if I close the mail window while checking for new POP mail
+ </tt>
+ </p>
+ </td>
+ </tr>
+
+ <tr>
+ <td align="right" valign="top">
+ <b>Details</b>
+ </td>
+ <td valign="top">
+ [% INCLUDE global/textarea.html.tmpl
+ name = 'comment'
+ minrows = 6
+ cols = constants.COMMENT_COLS
+ %]
+ <p>
+ Expand on the Summary. Please be
+ as specific as possible about what is wrong.
+ </p>
+ <p>
+ <tt>
+ <font color="#990000">Bad example</font>: Mozilla crashed.
+ You suck!
+ </tt>
+ <br>
+ <tt>
+ <font color="#009900">Good example</font>: After a crash which
+ happened when I was sorting in the Bookmark Manager,<br> all of my
+ top-level bookmark folders beginning with the letters Q to Z are
+ no longer present.
+ </tt>
+ </p>
+ </td>
+ </tr>
+
+ <tr bgcolor="[% tablecolour %]">
+ <td align="right" valign="top">
+ <b>Reproducibility</b>
+ </td>
+ <td valign="top">
+ <select name="reproducible">
+ <option name="AlwaysReproducible" value="Always">
+ Happens every time.
+ </option>
+ <option name="Sometimes" value="Sometimes">
+ Happens sometimes, but not always.
+ </option>
+ <option name="DidntTry" value="Didn't try">
+ Haven't tried to reproduce it.
+ </option>
+ <option name="NotReproducible" value="Couldn't Reproduce">
+ Tried, but couldn't reproduce it.
+ </option>
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <td align="right" valign="top">
+ <b>Steps to Reproduce</b>
+ </td>
+ <td valign="top">
+ [% INCLUDE global/textarea.html.tmpl
+ name = 'reproduce_steps'
+ minrows = 4
+ cols = constants.COMMENT_COLS
+ defaultcontent = "1.\n2.\n3."
+ %]
+ <p>
+ Describe how to reproduce the problem, step by
+ step. Include any special setup steps.
+ </p>
+ </td>
+ </tr>
+
+ <tr bgcolor="[% tablecolour %]">
+ <td valign="top" align="right">
+ <b>Actual Results</b>
+ </td>
+ <td valign="top">
+ [% INCLUDE global/textarea.html.tmpl
+ name = 'actual_results'
+ minrows = 4
+ cols = constants.COMMENT_COLS
+ %]
+ <p>
+ What happened after you performed the steps above?
+ </p>
+ </td>
+ </tr>
+
+ <tr>
+ <td valign="top" align="right">
+ <b>Expected Results</b>
+ </td>
+ <td valign="top">
+ [% INCLUDE global/textarea.html.tmpl
+ name = 'expected_results'
+ minrows = 4
+ cols = constants.COMMENT_COLS
+ %]
+ <p>
+ What should the software have done instead?
+ </p>
+ </td>
+ </tr>
+
+ <tr bgcolor="[% tablecolour %]">
+ <td valign="top" align="right">
+ <b>Additional Information</b>
+ </td>
+ <td valign="top">
+ [% INCLUDE global/textarea.html.tmpl
+ name = 'additional_info'
+ minrows = 8
+ cols = constants.COMMENT_COLS
+ %]
+ <p>
+ Add any additional information you feel may be
+ relevant to this [% terms.bug %], such as the <b>theme</b> you were
+ using (does the [% terms.bug %] still occur
+ with the default theme?), a
+ <b><a href="http://kb.mozillazine.org/Quality_Feedback_Agent">Talkback crash ID</a></b>, or special
+ information about <b>your computer's configuration</b>. Any information
+ longer than a few lines, such as a <b>stack trace</b> or <b>HTML
+ testcase</b>, should be added
+ using the "Add an Attachment" link on the [% terms.bug %], after
+ it is filed. If you believe that it's relevant, please also include
+ your build configuration, obtained by typing <tt>about:buildconfig</tt>
+ into your URL bar.
+ <br>
+ <br>
+ If you are reporting a crash, note the module in
+ which the software crashed (e.g., <tt>Application Violation in
+ gkhtml.dll</tt>).
+ </p>
+ </td>
+ </tr>
+
+ <tr>
+ <td valign="top" align="right">
+ <b>Severity</b>
+ </td>
+ <td valign="top">
+ <select name="bug_severity">
+ <option name="critical" value="critical">
+ Critical: The software crashes, hangs, or causes you to
+ lose data.
+ </option>
+ <option name="major" value="major">
+ Major: A major feature is broken.
+ </option>
+ <option name="normal" value="normal" selected="selected">
+ Normal: It's [% terms.abug %] that should be fixed.
+ </option>
+ <option name="minor" value="minor">
+ Minor: Minor loss of function, and there's an easy workaround.
+ </option>
+ <option name="trivial" value="trivial">
+ Trivial: A cosmetic problem, such as a misspelled word or
+ misaligned text.
+ </option>
+ <option name="enhancement" value="enhancement">
+ Enhancement: Request for new feature or enhancement.
+ </option>
+ </select>
+ <p>
+ Say how serious the problem is, or if your [% terms.bug %] is a
+ request for a new feature.
+ </p>
+ </td>
+ </tr>
+</table>
+
+
+<a name="step3"></a>
+<h3>Step 3 of 3 - submit the [% terms.bug %] report</h3>
+
+<p>
+ <input type="submit" id="report" value=" Submit [% terms.Bug %] Report "
+ onclick="if (this.form.comment.value == '')
+ { alert('Please enter some details about this [% terms.bug %].');
+ this.form.comment.focus();
+ return false; } return true;">
+</p>
+
+<p>
+ That's it! Thanks very much. You'll be notified by email about any
+ progress that is made on fixing your [% terms.bug %].
+
+<p>
+ Please be warned
+ that we get a lot of [% terms.bug %] reports filed - it may take quite a
+ while to get around to yours. You can help the process by making sure your
+ [%+ terms.bug %] is
+ complete and easy to understand, and by quickly replying to any questions
+ which may arrive by email.
+</p>
+
+ </form>
+
+[% PROCESS global/footer.html.tmpl %]
+
+[%############################################################################%]
+[%# Block for SELECT fields #%]
+[%############################################################################%]
+
+[% BLOCK select %]
+ <select name="[% sel %]">
+ [%- IF default.$sel %]
+ <option value="[% default.$sel FILTER html %]" selected="selected">
+ [% default.$sel FILTER html -%]
+ </option>
+ [% END %]
+ [%- FOREACH x = $sel %]
+ [% NEXT IF x == default.$sel %]
+ <option value="[% x FILTER html %]">
+ [% x FILTER html -%]
+ </option>
+ [%- END %]
+ </select>
+[% END %]
diff --git a/template/en/default/bug/create/create.html.tmpl b/template/en/default/bug/create/create.html.tmpl
new file mode 100644
index 0000000..4b17457
--- /dev/null
+++ b/template/en/default/bug/create/create.html.tmpl
@@ -0,0 +1,705 @@
+[%# 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>
+ # Ville Skyttä <ville.skytta@iki.fi>
+ # Shane H. W. Travis <travis@sedsystems.ca>
+ # Marc Schumann <wurblzap@gmail.com>
+ # Akamai Technologies <bugzilla-dev@akamai.com>
+ # Max Kanat-Alexander <mkanat@bugzilla.org>
+ # Frédéric Buclin <LpSolit@gmail.com>
+ #%]
+
+[% PROCESS "global/field-descs.none.tmpl" %]
+
+[% title = BLOCK %]Enter [% terms.Bug %]: [% product.name FILTER html %][% END %]
+
+[% PROCESS global/header.html.tmpl
+ title = title
+ style_urls = [ 'skins/standard/create_attachment.css',
+ 'skins/standard/yui/calendar.css' ]
+ javascript_urls = [ "js/attachment.js", "js/util.js", "js/yui/calendar.js",
+ "js/field.js", "js/TUI.js" ]
+ onload = 'set_assign_to();'
+%]
+
+<script type="text/javascript">
+<!--
+
+var initialowners = new Array([% product.components.size %]);
+var last_initialowner;
+var initialccs = new Array([% product.components.size %]);
+var components = new Array([% product.components.size %]);
+var comp_desc = new Array([% product.components.size %]);
+var flags = new Array([% product.components.size %]);
+[% IF Param("useqacontact") %]
+ var initialqacontacts = new Array([% product.components.size %]);
+ var last_initialqacontact;
+[% END %]
+[% count = 0 %]
+[%- FOREACH c = product.components %]
+ components[[% count %]] = "[% c.name FILTER js %]";
+ comp_desc[[% count %]] = "[% c.description FILTER html_light FILTER js %]";
+ initialowners[[% count %]] = "[% c.default_assignee.login FILTER js %]";
+ [% flag_list = [] %]
+ [% FOREACH f = c.flag_types.bug %]
+ [% NEXT UNLESS f.is_active %]
+ [% flag_list.push(f.id) %]
+ [% END %]
+ [% FOREACH f = c.flag_types.attachment %]
+ [% NEXT UNLESS f.is_active %]
+ [% flag_list.push(f.id) %]
+ [% END %]
+ flags[[% count %]] = [[% flag_list.join(",") FILTER js %]];
+ [% IF Param("useqacontact") %]
+ initialqacontacts[[% count %]] = "[% c.default_qa_contact.login FILTER js %]";
+ [% END %]
+
+ [% SET initial_cc_list = [] %]
+ [% FOREACH cc_user = c.initial_cc %]
+ [% initial_cc_list.push(cc_user.login) %]
+ [% END %]
+ initialccs[[% count %]] = "[% initial_cc_list.join(', ') FILTER js %]";
+
+ [% count = count + 1 %]
+[%- END %]
+
+function set_assign_to() {
+ // Based on the selected component, fill the "Assign To:" field
+ // with the default component owner, and the "QA Contact:" field
+ // with the default QA Contact. It also selectively enables flags.
+ var form = document.Create;
+ var assigned_to = form.assigned_to.value;
+
+[% IF Param("useqacontact") %]
+ var qa_contact = form.qa_contact.value;
+[% END %]
+
+ var index = -1;
+ if (form.component.type == 'select-one') {
+ index = form.component.selectedIndex;
+ } else if (form.component.type == 'hidden') {
+ // Assume there is only one component in the list
+ index = 0;
+ }
+ if (index != -1) {
+ var owner = initialowners[index];
+ var component = components[index];
+ if (assigned_to == last_initialowner
+ || assigned_to == owner
+ || assigned_to == '') {
+ form.assigned_to.value = owner;
+ last_initialowner = owner;
+ }
+
+ document.getElementById('initial_cc').innerHTML = initialccs[index];
+ document.getElementById('comp_desc').innerHTML = comp_desc[index];
+
+ [% IF Param("useqacontact") %]
+ var contact = initialqacontacts[index];
+ if (qa_contact == last_initialqacontact
+ || qa_contact == contact
+ || qa_contact == '') {
+ form.qa_contact.value = contact;
+ last_initialqacontact = contact;
+ }
+ [% END %]
+
+ // First, we disable all flags. Then we re-enable those
+ // which are available for the selected component.
+ var inputElements = document.getElementsByTagName("select");
+ var inputElement, flagField;
+ for ( var i=0 ; i<inputElements.length ; i++ ) {
+ inputElement = inputElements.item(i);
+ if (inputElement.name.search(/^flag_type-(\d+)$/) != -1) {
+ var id = inputElement.name.replace(/^flag_type-(\d+)$/, "$1");
+ inputElement.disabled = true;
+ // Also disable the requestee field, if it exists.
+ inputElement = document.getElementById("requestee_type-" + id);
+ if (inputElement) inputElement.disabled = true;
+ }
+ }
+ // Now enable flags available for the selected component.
+ for (var i = 0; i < flags[index].length; i++) {
+ flagField = document.getElementById("flag_type-" + flags[index][i]);
+ // Do not enable flags the user cannot set nor request.
+ if (flagField && flagField.options.length > 1) {
+ flagField.disabled = false;
+ // Re-enabling the requestee field depends on the status
+ // of the flag.
+ toggleRequesteeField(flagField, 1);
+ }
+ }
+ }
+}
+
+function handleWantsAttachment(wants_attachment) {
+ if (wants_attachment) {
+ document.getElementById('attachment_false').style.display = 'none';
+ document.getElementById('attachment_true').style.display = 'block';
+ }
+ else {
+ document.getElementById('attachment_false').style.display = 'block';
+ document.getElementById('attachment_true').style.display = 'none';
+ clearAttachmentFields();
+ }
+}
+
+
+TUI_alternates['expert_fields'] = 'Show Advanced Fields';
+// Hide the Advanced Fields by default, unless the user has a cookie
+// that specifies otherwise.
+TUI_hide_default('expert_fields');
+
+-->
+</script>
+
+[% USE Bugzilla %]
+[% SET select_fields = {} %]
+[% FOREACH field = Bugzilla.get_fields(
+ { type => constants.FIELD_TYPE_SINGLE_SELECT, custom => 0 })
+%]
+ [% select_fields.${field.name} = field %]
+[% END %]
+
+<form name="Create" id="Create" method="post" action="post_bug.cgi"
+ enctype="multipart/form-data">
+<input type="hidden" name="product" value="[% product.name FILTER html %]">
+<input type="hidden" name="token" value="[% token FILTER html %]">
+
+<table cellspacing="4" cellpadding="2" border="0">
+<tbody>
+ <tr>
+ <td colspan="4">
+ [%# Migration note: The following file corresponds to the old Param
+ # 'entryheaderhtml'
+ #%]
+ [% PROCESS 'bug/create/user-message.html.tmpl' %]
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="2">
+ <a id="expert_fields_controller" class="controller bz_default_hidden"
+ href="javascript:TUI_toggle_class('expert_fields')">Hide
+ Advanced Fields</a>
+ [%# Show the link if the browser supports JS %]
+ <script type="text/javascript">
+ YAHOO.util.Dom.removeClass('expert_fields_controller',
+ 'bz_default_hidden');
+ </script>
+ </td>
+ <td colspan="2">
+ (<span class="required_star">*</span> =
+ <span class="required_explanation">Required Field</span>)
+ </td>
+ </tr>
+
+ <tr>
+ <th>Product:</th>
+ <td width="10%">[% product.name FILTER html %]</td>
+
+ <th>Reporter:</th>
+ <td width="100%">[% user.login FILTER html %]</td>
+ </tr>
+
+ [%# We can't use the select block in these two cases for various reasons. %]
+ <tr>
+ <th class="required">
+ <a href="describecomponents.cgi?product=[% product.name FILTER url_quote %]">
+ Component</a>:
+ </th>
+ <td>
+ <select name="component" onchange="set_assign_to();" size="7"
+ aria-required="true" class="required">
+ [%# Build the lists of assignees and QA contacts if "usemenuforusers" is enabled. %]
+ [% IF Param("usemenuforusers") %]
+ [% assignees_list = user.get_userlist.clone %]
+ [% qa_contacts_list = user.get_userlist.clone %]
+ [% END %]
+
+ [%- FOREACH c = product.components %]
+ <option value="[% c.name FILTER html %]"
+ [% " selected=\"selected\"" IF c.name == default.component_ %]>
+ [% c.name FILTER html -%]
+ </option>
+ [% IF Param("usemenuforusers") %]
+ [% INCLUDE build_userlist default_user = c.default_assignee,
+ userlist = assignees_list %]
+ [% INCLUDE build_userlist default_user = c.default_qa_contact,
+ userlist = qa_contacts_list %]
+ [% END %]
+ [%- END %]
+ </select>
+ </td>
+
+ <td colspan="2">
+ [%# Enclose the fieldset in a nested table so that its width changes based
+ # on the length on the component description. %]
+ <table>
+ <tr>
+ <td>
+ <fieldset>
+ <legend>Component Description</legend>
+ <div id="comp_desc" class="comment">Select a component to read its description.</div>
+ </fieldset>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+
+ <tr>
+ <th rowspan="3">Version:</th>
+ <td rowspan="3">
+ <select name="version" size="5">
+ [%- FOREACH v = version %]
+ <option value="[% v FILTER html %]"
+ [% ' selected="selected"' IF v == default.version %]>[% v FILTER html -%]
+ </option>
+ [%- END %]
+ </select>
+ </td>
+
+ [% INCLUDE bug/field.html.tmpl
+ bug = default, field = select_fields.bug_severity, editable = 1,
+ value = default.bug_severity %]
+ </tr>
+
+ <tr>
+ [% INCLUDE bug/field.html.tmpl
+ bug = default, field = select_fields.rep_platform, editable = 1,
+ value = default.rep_platform %]
+ </tr>
+
+ <tr>
+ [% INCLUDE bug/field.html.tmpl
+ bug = default, field = select_fields.op_sys, editable = 1,
+ value = default.op_sys %]
+ </tr>
+</tbody>
+
+<tbody class="expert_fields">
+ <tr>
+ [% IF Param('usetargetmilestone') && Param('letsubmitterchoosemilestone') %]
+ [% sel = { description => 'Target Milestone', name => 'target_milestone' } %]
+ [% INCLUDE select %]
+ [% ELSE %]
+ <td colspan="2">&nbsp;</td>
+ [% END %]
+
+ [% IF Param('letsubmitterchoosepriority') %]
+ [% INCLUDE bug/field.html.tmpl
+ bug = default, field = select_fields.priority, editable = 1,
+ value = default.priority %]
+ [% ELSE %]
+ <td colspan="2">&nbsp;</td>
+ [% END %]
+ </tr>
+</tbody>
+
+[% IF !Param('defaultplatform') || !Param('defaultopsys') %]
+ <tbody>
+ <tr>
+ <th>&nbsp;</th>
+ <td colspan="3" class="comment">
+ We've made a guess at your
+ [% IF Param('defaultplatform') %]
+ operating system. Please check it
+ [% ELSIF Param('defaultopsys') %]
+ platform. Please check it
+ [% ELSE %]
+ operating system and platform. Please check them
+ [% END %]
+ and make any corrections if necessary.
+ </td>
+ </tr>
+ </tbody>
+[% END %]
+
+<tbody class="expert_fields">
+ <tr>
+ <td colspan="4">&nbsp;</td>
+ </tr>
+
+ <tr>
+[% IF bug_status.size <= 1 %]
+ <input type="hidden" name="bug_status"
+ value="[% default.bug_status FILTER html %]">
+ <th>Initial State:</th>
+ <td>[% display_value("bug_status", default.bug_status) FILTER html %]</td>
+[% ELSE %]
+ [% sel = { description => 'Initial State', name => 'bug_status' } %]
+ [% INCLUDE select %]
+[% END %]
+
+ <td>&nbsp;</td>
+ [%# Calculate the number of rows we can use for flags %]
+ [% num_rows = 6 + (Param("useqacontact") ? 1 : 0) +
+ (user.is_timetracker ? 3 : 0) +
+ (Param("usebugaliases") ? 1 : 0)
+ %]
+
+ <td rowspan="[% num_rows FILTER html %]">
+ [% IF product.flag_types.bug.size > 0 %]
+ [% display_flag_headers = 0 %]
+ [% any_flags_requesteeble = 0 %]
+
+ [% FOREACH flag_type = product.flag_types.bug %]
+ [% NEXT UNLESS flag_type.is_active %]
+ [% display_flag_headers = 1 %]
+ [% SET any_flags_requesteeble = 1 IF flag_type.is_requestable && flag_type.is_requesteeble %]
+ [% END %]
+
+ [% IF display_flag_headers %]
+ [% PROCESS "flag/list.html.tmpl" flag_types = product.flag_types.bug
+ any_flags_requesteeble = any_flags_requesteeble
+ flag_table_id = "bug_flags"
+ %]
+ [% END %]
+ [% END %]
+ </td>
+ </tr>
+
+ <tr>
+ <th><a href="page.cgi?id=fields.html#assigned_to">Assign To</a>:</th>
+ <td colspan="2">
+ [% INCLUDE global/userselect.html.tmpl
+ name => "assigned_to"
+ value => assigned_to
+ disabled => assigned_to_disabled
+ size => 30
+ emptyok => 1
+ custom_userlist => assignees_list
+ %]
+ <noscript>(Leave blank to assign to component's default assignee)</noscript>
+ </td>
+ </tr>
+
+[% IF Param("useqacontact") %]
+ <tr>
+ <th>QA Contact:</th>
+ <td colspan="2">
+ [% INCLUDE global/userselect.html.tmpl
+ name => "qa_contact"
+ value => qa_contact
+ disabled => qa_contact_disabled
+ size => 30
+ emptyok => 1
+ custom_userlist => qa_contacts_list
+ %]
+ <noscript>(Leave blank to assign to default qa contact)</noscript>
+ </td>
+ </tr>
+[% END %]
+
+ <tr>
+ <th>CC:</th>
+ <td colspan="2">
+ [% INCLUDE global/userselect.html.tmpl
+ name => "cc"
+ value => cc
+ disabled => cc_disabled
+ size => 30
+ multiple => 5
+ %]
+ </td>
+ </tr>
+
+ <tr>
+ <th>Default CC:</th>
+ <td colspan="2">
+ <div id="initial_cc">
+ </div>
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="3">&nbsp;</td>
+ </tr>
+
+[% IF user.is_timetracker %]
+ <tr>
+ <th>Estimated Hours:</th>
+ <td colspan="2">
+ <input name="estimated_time" size="6" maxlength="6" value="[% estimated_time FILTER html %]">
+ </td>
+ </tr>
+ <tr>
+ <th>Deadline:</th>
+ <td colspan="2">
+ <input name="deadline" size="10" maxlength="10" value="[% deadline FILTER html %]">
+ <small>(YYYY-MM-DD)</small>
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="3">&nbsp;</td>
+ </tr>
+[% END %]
+
+[% IF Param("usebugaliases") %]
+ <tr>
+ <th>Alias:</th>
+ <td colspan="2">
+ <input name="alias" size="20" value="[% alias FILTER html %]">
+ </td>
+ </tr>
+[% END %]
+
+ <tr>
+ <th>URL:</th>
+ <td colspan="2">
+ <input name="bug_file_loc" size="40"
+ value="[% bug_file_loc FILTER html %]">
+ </td>
+ </tr>
+</tbody>
+
+<tbody class="expert_fields">
+ [% USE Bugzilla %]
+
+ [% FOREACH field = Bugzilla.active_custom_fields %]
+ [% NEXT UNLESS field.enter_bug %]
+ [% SET value = ${field.name}.defined ? ${field.name} : "" %]
+ <tr>
+ [% INCLUDE bug/field.html.tmpl
+ bug = default, field = field, value = value, editable = 1,
+ value_span = 3 %]
+ </tr>
+ [% END %]
+</tbody>
+
+<tbody>
+
+ <tr>
+ <th class="required">Summary:</th>
+ <td colspan="3">
+ <input name="short_desc" size="70" value="[% short_desc FILTER html %]"
+ maxlength="255" spellcheck="true" aria-required="true"
+ class="required">
+ </td>
+ </tr>
+
+ <tr>
+ <th>Description:</th>
+ <td colspan="3">
+ [% defaultcontent = BLOCK %]
+ [% IF cloned_bug_id %]
++++ This [% terms.bug %] was initially created as a clone of [% terms.Bug %] #[% cloned_bug_id %] +++
+
+
+ [% END %]
+ [%-# We are within a BLOCK. The comment will be correctly HTML-escaped
+ # by global/textarea.html.tmpl. So we must not escape the comment here. %]
+ [% comment FILTER none %]
+ [%- END %]
+ [% INCLUDE global/textarea.html.tmpl
+ name = 'comment'
+ id = 'comment'
+ minrows = 10
+ maxrows = 25
+ cols = constants.COMMENT_COLS
+ defaultcontent = defaultcontent
+ %]
+ <br>
+ </td>
+ </tr>
+
+ [% IF user.is_insider %]
+ <tr class="expert_fields">
+ <th>&nbsp;</th>
+ <td colspan="3">
+ &nbsp;&nbsp;
+ <input type="checkbox" id="commentprivacy" name="commentprivacy"
+ [% " checked=\"checked\"" IF commentprivacy %]>
+ <label for="commentprivacy">
+ Make description private (visible only to members of the
+ <strong>[% Param('insidergroup') FILTER html %]</strong> group)
+ </label>
+ </td>
+ </tr>
+ [% END %]
+
+ <tr>
+ <th>Attachment:</th>
+ <td colspan="3">
+ <script type="text/javascript">
+ <!--
+ document.write( '<div id="attachment_false">'
+ + '<input type="button" value="Add an attachment" '
+ + 'onClick="handleWantsAttachment(true)"> '
+ + '<em style="display: none">This button has no '
+ + 'functionality for you because your browser does '
+ + 'not support CSS or does not use it.<\/em>'
+ + '<\/div>'
+ + '<div id="attachment_true" style="display: none">'
+ + '<input type="button" '
+ + 'value="Don\'t add an attachment " '
+ + 'onClick="handleWantsAttachment(false)">');
+ //-->
+ </script>
+ <fieldset>
+ <legend>Add an attachment</legend>
+ <table class="attachment_entry">
+ [% PROCESS attachment/createformcontents.html.tmpl
+ flag_types = product.flag_types.attachment
+ any_flags_requesteeble = 1
+ flag_table_id ="attachment_flags" %]
+ </table>
+ </fieldset>
+ <script type="text/javascript">
+ <!--
+ document.write('<\/div>');
+ //-->
+ </script>
+ </td>
+ </tr>
+</tbody>
+
+<tbody class="expert_fields">
+ [% IF user.in_group('editbugs', product.id) %]
+ [% IF use_keywords %]
+ <tr>
+ <th><a href="describekeywords.cgi">Keywords</a>:</th>
+ <td colspan="3">
+ <input id="keywords" name="keywords" size="40"
+ value="[% keywords FILTER html %]"> (optional)
+ </td>
+ </tr>
+ [% END %]
+
+ <tr>
+ <th>Depends on:</th>
+ <td colspan="3">
+ <input name="dependson" accesskey="d" value="[% dependson FILTER html %]">
+ </td>
+ </tr>
+ <tr>
+ <th>Blocks:</th>
+ <td colspan="3">
+ <input name="blocked" accesskey="b" value="[% blocked FILTER html %]">
+ </td>
+ </tr>
+ [% END %]
+</tbody>
+
+<tbody class="expert_fields">
+ [% IF group.size %]
+ <tr>
+ <th>&nbsp;</th>
+ <td colspan="3">
+ <br>
+ <strong>
+ Only users in all of the selected groups can view this [% terms.bug %]:
+ </strong>
+ <br>
+ <font size="-1">
+ (Leave all boxes unchecked to make this a public [% terms.bug %].)
+ </font>
+ <br>
+ <br>
+
+ <!-- Checkboxes -->
+ [% FOREACH g = group %]
+ &nbsp;&nbsp;&nbsp;&nbsp;
+ <input type="checkbox" id="bit-[% g.bit %]"
+ name="bit-[% g.bit %]" value="1"
+ [% " checked=\"checked\"" IF g.checked %]>
+ <label for="bit-[% g.bit %]">[% g.description FILTER html_light %]</label><br>
+ [% END %]
+ </td>
+ </tr>
+ [% END %]
+</tbody>
+
+<tbody>
+ [%# Form controls for entering additional data about the bug being created. %]
+ [% Hook.process("form") %]
+
+ <tr>
+ <th>&nbsp;</th>
+ <td colspan="3">
+ <input type="submit" id="commit" value="Submit [% terms.Bug %]"
+ onclick="if (this.form.short_desc.value == '')
+ { alert('Please enter a summary sentence for this [% terms.bug %].');
+ return false; } return true;">
+ &nbsp;&nbsp;&nbsp;&nbsp;
+ <input type="submit" name="maketemplate" id="maketemplate"
+ value="Remember values as bookmarkable template"
+ class="expert_fields">
+ </td>
+ </tr>
+</tbody>
+ </table>
+ <input type="hidden" name="form_name" value="enter_bug">
+</form>
+
+[%# Links or content with more information about the bug being created. %]
+[% Hook.process("end") %]
+
+[% PROCESS global/footer.html.tmpl %]
+
+[%############################################################################%]
+[%# Block for SELECT fields #%]
+[%############################################################################%]
+
+[% BLOCK select %]
+ [% IF sel.description %]
+ <th>
+ <a href="page.cgi?id=fields.html#[% sel.name %]">[% sel.description %]</a>:
+ </th>
+ [% END %]
+
+ <td>
+ <select name="[% sel.name %]" id="[% sel.name %]">
+ [%- FOREACH x = ${sel.name} %]
+ <option value="[% x FILTER html %]"
+ [% " selected=\"selected\"" IF x == default.${sel.name} %]>
+ [% display_value(sel.name, x) FILTER html %]
+ </option>
+ [% END %]
+ </select>
+
+ [% IF sel.name == "bug_status" %]
+ <script type="text/javascript">
+ <!--
+ [%+ INCLUDE "bug/field-events.js.tmpl"
+ field = select_fields.bug_status %]
+ //-->
+ </script>
+ [% END %]
+ </td>
+[% END %]
+
+[% BLOCK build_userlist %]
+ [% user_found = 0 %]
+ [% default_login = default_user.login %]
+ [% RETURN UNLESS default_login %]
+
+ [% FOREACH user = userlist %]
+ [% IF user.login == default_login %]
+ [% user_found = 1 %]
+ [% LAST %]
+ [% END %]
+ [% END %]
+
+ [% userlist.push({login => default_login,
+ identity => default_user.identity,
+ visible => 1})
+ UNLESS user_found %]
+[% END %]
diff --git a/template/en/default/bug/create/created.html.tmpl b/template/en/default/bug/create/created.html.tmpl
new file mode 100644
index 0000000..d9eaccb
--- /dev/null
+++ b/template/en/default/bug/create/created.html.tmpl
@@ -0,0 +1,61 @@
+[%# 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>
+ #%]
+
+[%# INTERFACE:
+ # id: number; the ID of the bug that was created.
+ # sentmail: array of hash; bugs for which BugMail should be sent, contains:
+ # type: string; type of change for this bug, either 'created' if this bug
+ # was created or 'dep' if it was added as a dependent/blocker
+ # id: integer; the ID of the bug
+ # bug: object; Bugzilla::Bug object of the bug that was created (used in
+ # template bug/edit.html.tmpl
+ #%]
+
+[% PROCESS global/variables.none.tmpl %]
+
+[% PROCESS "bug/show-header.html.tmpl" %]
+[% PROCESS global/header.html.tmpl
+ title = "$terms.Bug $id Submitted &ndash; $filtered_desc"
+ header = "$terms.Bug&nbsp;$id Submitted"
+%]
+
+[% header_done = 1 %]
+
+[% FOREACH item = sentmail %]
+ [% PROCESS bug/process/results.html.tmpl
+ type = item.type
+ id = item.id
+ sent_bugmail = item
+ %]
+[% END %]
+
+<br>
+
+<hr>
+
+[% PROCESS bug/edit.html.tmpl %]
+
+<hr>
+
+[% PROCESS bug/navigate.html.tmpl bottom_navigator => 1 %]
+
+<br>
+
+[% PROCESS global/footer.html.tmpl %]
diff --git a/template/en/default/bug/create/make-template.html.tmpl b/template/en/default/bug/create/make-template.html.tmpl
new file mode 100644
index 0000000..1397483
--- /dev/null
+++ b/template/en/default/bug/create/make-template.html.tmpl
@@ -0,0 +1,46 @@
+[%# 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>
+ # Marc Schumann <wurblzap@gmail.com>
+ #%]
+
+[%# INTERFACE:
+ # url: URL to a pre-filled bug entry form.
+ # short_desc: Bug summary as entered in the form.
+ #%]
+
+[% PROCESS global/variables.none.tmpl %]
+
+[% PROCESS global/header.html.tmpl
+ title = "Bookmarks are your friend"
+ header = "Template constructed"
+%]
+
+<p>
+ You can bookmark this link:
+ &ldquo;<a href="enter_bug.cgi?[% url FILTER html %]">
+ [% IF short_desc %]
+ [% short_desc FILTER html %]
+ [% ELSE %]
+ [% terms.Bug %] entry template
+ [% END %]</a>&rdquo;.
+ This bookmark will bring up the <em>Enter [% terms.Bug %]</em> page with the
+ fields initialized as you've requested.
+</p>
+
+[% PROCESS global/footer.html.tmpl %]
diff --git a/template/en/default/bug/create/user-message.html.tmpl b/template/en/default/bug/create/user-message.html.tmpl
new file mode 100644
index 0000000..ac2cc29
--- /dev/null
+++ b/template/en/default/bug/create/user-message.html.tmpl
@@ -0,0 +1,36 @@
+[%# 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): Matthew Tuck <matty@chariot.net.au>
+ #%]
+
+[%# Migration note: this file corresponds to the old Param
+ # 'entryheaderhtml'
+ #%]
+
+[%# You can make the output of this template product-specific by using
+ # Template Toolkit IF statements. The current product name is stored in
+ # the 'product' variable.
+ #%]
+
+[% PROCESS global/variables.none.tmpl %]
+
+Before reporting [% terms.abug %], please read the
+<a href="page.cgi?id=bug-writing.html">
+[% terms.bug %] writing guidelines</a>, please look at the list of
+<a href="duplicates.cgi">most frequently reported [% terms.bugs %]</a>, and please
+<a href="query.cgi">search</a> for the [% terms.bug %].