summaryrefslogtreecommitdiffstats
path: root/extensions/GuidedBugEntry/template
diff options
context:
space:
mode:
Diffstat (limited to 'extensions/GuidedBugEntry/template')
-rw-r--r--extensions/GuidedBugEntry/template/en/default/bug/create/comment-guided.txt.tmpl25
-rw-r--r--extensions/GuidedBugEntry/template/en/default/guided/guided.html.tmpl544
-rw-r--r--extensions/GuidedBugEntry/template/en/default/guided/products.html.tmpl44
-rw-r--r--extensions/GuidedBugEntry/template/en/default/pages/guided_products.js.tmpl18
4 files changed, 631 insertions, 0 deletions
diff --git a/extensions/GuidedBugEntry/template/en/default/bug/create/comment-guided.txt.tmpl b/extensions/GuidedBugEntry/template/en/default/bug/create/comment-guided.txt.tmpl
new file mode 100644
index 000000000..6b0de9466
--- /dev/null
+++ b/extensions/GuidedBugEntry/template/en/default/bug/create/comment-guided.txt.tmpl
@@ -0,0 +1,25 @@
+[% USE Bugzilla %]
+[% cgi = Bugzilla.cgi %]
+User Agent: [% cgi.param('user_agent') %]
+[% IF cgi.param('build_id') %]
+Build ID: [% cgi.param('build_id') %][% END %]
+
+[% IF cgi.param('bug_steps') %]
+Steps to reproduce:
+
+[%+ cgi.param('bug_steps') %]
+[% END %]
+
+[% IF cgi.param('actual') %]
+
+Actual results:
+
+[%+ cgi.param('actual') %]
+[% END %]
+
+[% IF cgi.param('expected') %]
+
+Expected results:
+
+[%+ cgi.param('expected') %]
+[% END %]
diff --git a/extensions/GuidedBugEntry/template/en/default/guided/guided.html.tmpl b/extensions/GuidedBugEntry/template/en/default/guided/guided.html.tmpl
new file mode 100644
index 000000000..0d7434188
--- /dev/null
+++ b/extensions/GuidedBugEntry/template/en/default/guided/guided.html.tmpl
@@ -0,0 +1,544 @@
+[%# 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 global/variables.none.tmpl %]
+
+[% js_urls = [ 'extensions/GuidedBugEntry/web/js/products.js',
+ 'extensions/GuidedBugEntry/web/js/guided.js',
+ 'extensions/ProdCompSearch/web/js/prod_comp_search.js',
+ 'js/field.js', 'js/TUI.js', 'js/bug.js' ] %]
+[% js_urls.push('extensions/BMO/web/js/prod_comp_search.js') IF BMO %]
+
+[% yui_modules = [ 'history', 'datatable', 'container' ] %]
+[% yui_modules.push('autocomplete') IF BMO %]
+
+[% PROCESS global/header.html.tmpl
+ title = "Enter A Bug"
+ javascript_urls = js_urls
+ style_urls = [ 'extensions/GuidedBugEntry/web/style/guided.css',
+ 'js/yui/assets/skins/sam/container.css' ]
+ yui = yui_modules
+%]
+
+<iframe id="yui-history-iframe" src="extensions/GuidedBugEntry/web/yui-history-iframe.txt"></iframe>
+<input id="yui-history-field" type="hidden">
+
+<noscript>
+You require JavaScript to use this [% terms.bug %] entry form.<br><br>
+Please use the <a href="enter_bug.cgi?format=__default__">advanced [% terms.bug %] entry form</a>.
+</noscript>
+
+<div id="loading" class="hidden">
+Please wait...
+</div>
+<script type="text/javascript">
+YAHOO.util.Dom.removeClass('loading', 'hidden');
+</script>
+
+<div id="steps">
+[% INCLUDE product_step %]
+[% INCLUDE otherProducts_step %]
+[% INCLUDE dupes_step %]
+[% INCLUDE bugForm_step %]
+</div>
+
+<div id="advanced">
+ <a id="advanced_img" href="enter_bug.cgi?format=__default__"><img
+ src="extensions/GuidedBugEntry/web/images/advanced.png" width="16" height="16" border="0"></a>
+ <a id="advanced_link" href="enter_bug.cgi?format=__default__">Switch to the advanced [% terms.bug %] entry form</a>
+</div>
+
+<script type="text/javascript">
+YAHOO.util.Dom.addClass('loading', 'hidden');
+guided.init();
+guided.detectedPlatform = '[% platform FILTER js %]';
+guided.detectedOpSys = '[% op_sys FILTER js %]';
+guided.currentUser = '[% user.login FILTER js %]';
+guided.openStates = [
+[% FOREACH state = open_states %]
+ '[% state FILTER js%]'
+ [%- "," UNLESS loop.last %]
+[% END %]
+];
+dupes.setLabels(
+ {
+ id: "[% field_descs.bug_id FILTER js %]",
+ summary: "[% field_descs.short_desc FILTER js %]",
+ component: "[% field_descs.component FILTER js %]",
+ status: "[% field_descs.bug_status FILTER js %]",
+ }
+);
+</script>
+<script type="text/javascript" src="page.cgi?id=guided_products.js"></script>
+[% PROCESS global/footer.html.tmpl %]
+
+[%############################################################################%]
+[%# page title #%]
+[%############################################################################%]
+
+[% BLOCK page_title %]
+ <div id="page_title">
+ <h2>Enter A [% terms.Bug %]</h2>
+ <h3>Step [% step_number FILTER html %] of 3</h3>
+ </div>
+[% END %]
+
+[%############################################################################%]
+[%# product step #%]
+[%############################################################################%]
+
+[% BLOCK product_step %]
+<div id="product_step" class="step hidden">
+
+[% INCLUDE page_title
+ step_number = "1"
+%]
+
+[% INCLUDE exits
+ show = "all"
+%]
+
+<table id="products">
+[% INCLUDE 'guided/products.html.tmpl' %]
+[% INCLUDE product_block
+ name="Other Products"
+ icon="other.png"
+ desc="Other Mozilla products which aren't listed here"
+ onclick="guided.setStep('otherProducts')"
+%]
+</table>
+
+[% IF BMO %]
+ <h3>
+ Or search for a Product:
+ </h3>
+
+ <script>
+ [% IF format %]
+ ProdCompsearch.format = '[% format FILTER js %]';
+ [% END %]
+ [% IF cloned_bug_id %]
+ ProdCompSearch.cloned_bug_id = '[% cloned_bug_id FILTER js %]';
+ [% END %]
+ </script>
+ <div id="prod_comp_search_main">
+ [% PROCESS prodcompsearch/form.html.tmpl
+ input_label = "Type to find product and component by name or description:"
+ %]
+ </div>
+[% END %]
+
+</div>
+[% END %]
+
+[% BLOCK product_block %]
+ [% IF !caption %]
+ [% caption = name %]
+ [% END %]
+ [% IF !desc %]
+ [% FOREACH c = classifications %]
+ [% FOREACH p = c.products %]
+ [% IF p.name == name %]
+ [% desc = p.description %]
+ [% LAST %]
+ [% END %]
+ [% END %]
+ [% END %]
+ [% END %]
+ <tr>
+ <td class="product_img">
+ <a href="javascript:void(0)"
+ [% IF onclick %]
+ onclick="[% onclick FILTER html %]"
+ [% ELSE %]
+ onclick="product.select('[% name FILTER js %]')"
+ [% END %]
+ ><img src="extensions/GuidedBugEntry/web/images/products/[% icon FILTER uri %]" width="64" height="64"
+ ></a>
+ </td>
+ <td>
+ <h2>
+ <a href="javascript:void(0)"
+ [% IF onclick %]
+ onclick="[% onclick FILTER html %]"
+ [% ELSE %]
+ onclick="product.select('[% name FILTER js %]')"
+ [% END %]
+ >[% caption FILTER html %]</a>
+ </h2>
+ <p>
+ [% desc FILTER html_light %]
+ </p>
+ </td>
+ </tr>
+[% END %]
+
+[%############################################################################%]
+[%# other products step #%]
+[%############################################################################%]
+
+[% BLOCK otherProducts_step %]
+<div id="otherProducts_step" class="step hidden">
+
+[% INCLUDE page_title
+ step_number = "1"
+%]
+
+[% INCLUDE exits
+ show = "all"
+%]
+
+<table id="other_products">
+[% FOREACH c = classifications %]
+ [% IF c.object %]
+ <tr class="classification">
+ <th align="right" valign="top">
+ [% c.object.name FILTER html %]:&nbsp;
+ </th>
+ <td>
+ [% c.object.description FILTER html_light %]
+ </td>
+ </tr>
+ [% END %]
+ [% FOREACH p = c.products %]
+ <tr>
+ <th align="right" valign="top">
+ <a href="javascript:void(0)" onclick="product.select('[% p.name FILTER js %]')">
+ [% p.name FILTER html FILTER no_break %]</a>:&nbsp;
+ </th>
+
+ <td valign="top">[% p.description FILTER html_light %]</td>
+ </tr>
+ [% END %]
+ <tr>
+ <td>&nbsp;</td>
+ </tr>
+[% END %]
+</table>
+
+</div>
+[% END %]
+
+[%############################################################################%]
+[%# exits (support/input) #%]
+[%############################################################################%]
+
+[% BLOCK exits %]
+<table class="exits">
+ <tr>
+ <td>
+ <div class="exit_img">
+ <a href="http://www.mozilla.org/support/"
+ ><img src="extensions/GuidedBugEntry/web/images/support.png" width="32" height="32"
+ ></a>
+ </div>
+ </td>
+ <td width="100%">
+ <h2>
+ <a href="http://www.mozilla.org/support/">I need technical support</a>
+ </h2>
+ For technical support or help getting your site to work with Mozilla.
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <div class="exit_img">
+ <a href="http://input.mozilla.org/idea/"
+ ><img src="extensions/GuidedBugEntry/web/images/idea.png" width="32" height="32"
+ ></a>
+ </div>
+ </td>
+ <td width="100%">
+ <h2>
+ <a href="http://input.mozilla.org/idea/">I have an idea for firefox</a>
+ </h2>
+ For offering us ideas on how to enhance Firefox.
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <div class="exit_img">
+ <a href="http://input.mozilla.org/feedback/"
+ ><img src="extensions/GuidedBugEntry/web/images/input.png" width="32" height="32"
+ ></a>
+ </div>
+ </td>
+ <td width="100%">
+ &bull; <a href="http://input.mozilla.org/feedback/">Provide other feedback about Firefox</a><br>
+ &bull; <a href="http://input.mozilla.org/feedback/#sad">Report an issue with a web site that I use</a><br>
+ &bull; <a href="enter_bug.cgi?format=guided&product=Core">Report an issue with Firefox on a site that I've developed</a><br>
+ </td>
+ </tr>
+</table>
+<h3>
+ None of the above; my [% terms.bug %] is in:
+</h3>
+[% END %]
+
+[% BLOCK exit_block %]
+ <tr>
+ <td>
+ <div class="exit_img">
+ <a href="[% href FILTER none %]"
+ ><img src="extensions/GuidedBugEntry/web/images/[% icon FILTER uri %]" width="32" height="32"
+ ></a>
+ </div>
+ </td>
+ <td width="100%">
+ <h2>
+ <a href="[% href FILTER none %]">[% name FILTER html %]</a>
+ </h2>
+ [% desc FILTER html %]
+ </td>
+ </tr>
+[% END %]
+
+[%############################################################################%]
+[%# duplicates step #%]
+[%############################################################################%]
+
+[% BLOCK dupes_step %]
+<div id="dupes_step" class="step hidden">
+
+[% INCLUDE page_title
+ step_number = "2"
+%]
+
+<p>
+Product: <b><span id="dupes_product_name">?</span></b>:
+(<a href="javascript:void(0)" onclick="guided.setStep('product')">Change</a>)
+</p>
+
+<table border="0" cellpadding="5" cellspacing="0" id="product_support" class="hidden">
+<tr>
+<td>
+ <img src="extensions/GuidedBugEntry/web/images/message.png" width="24" height="24">
+</td>
+<td id="product_support_message">&nbsp;</td>
+</table>
+
+<div id="dupe_form">
+ <p>
+ Please summarise your issue or request in one sentence:
+ </p>
+ <input id="dupes_summary" value="Short summary of issue" spellcheck="true" placeholder="Short summary of issue">
+ <button id="dupes_search">Find similar issues</button>
+ <button id="dupes_continue_button_top" onclick="guided.setStep('bugForm')">My issue is not listed</button>
+</div>
+
+<div id="dupes_list"></div>
+<div id="dupes_continue">
+<button id="dupes_continue_button_bottom" onclick="guided.setStep('bugForm')">My issue is not listed</button>
+</div>
+
+</div>
+[% END %]
+
+[%############################################################################%]
+[%# bug form step #%]
+[%############################################################################%]
+
+[% BLOCK bugForm_step %]
+<div id="bugForm_step" class="step hidden">
+
+[% INCLUDE page_title
+ step_number = "3"
+%]
+
+<form method="post" action="post_bug.cgi" enctype="multipart/form-data" onsubmit="return bugForm.validate()">
+<input type="hidden" name="token" value="[% token FILTER html %]">
+<input type="hidden" name="product" id="product" value="">
+<input type="hidden" name="component" id="component" value="">
+<input type="hidden" name="bug_severity" value="normal">
+<input type="hidden" name="rep_platform" id="rep_platform" value="All">
+<input type="hidden" name="priority" value="--">
+<input type="hidden" name="op_sys" id="op_sys" value="All">
+<input type="hidden" name="version" id="version" value="">
+<input type="hidden" name="comment" id="comment" value="">
+<input type="hidden" name="format" value="guided">
+<input type="hidden" name="user_agent" id="user_agent" value="">
+<input type="hidden" name="build_id" id="build_id" value="">
+
+<ul>
+<li>Please fill out this form clearly, precisely and in as much detail as you can manage.</li>
+<li>Please report only a single problem at a time.</li>
+<li><a href="https://developer.mozilla.org/en/Bug_writing_guidelines" target="_blank">These guidelines</a>
+explain how to write effective [% terms.bug %] reports.</li>
+</ul>
+
+<table id="bugForm" cellspacing="0">
+
+<tr class="odd">
+ <td class="label">Summary:</td>
+ <td width="100%" colspan="2">
+ <input name="short_desc" id="short_desc" class="textInput" spellcheck="true">
+ </td>
+ <td valign="top">
+ [% PROCESS help id="summary_help" %]
+ <div id="summary_help" class="hidden help">
+ A sentence which summarises the problem. Please be descriptive and use lots of keywords.<br>
+ <br>
+ <span class="help-bad">Bad example</span>: mail crashed<br>
+ <span class="help-good">Good example</span>: crash if I close the mail window while checking for new POP mail
+ </div>
+ </td>
+</tr>
+
+<tr class="even">
+ <td class="label">Product:</td>
+ <td id="productTD">
+ <span id="product_label"></span>
+ (<a href="javascript:void(0)" onclick="guided.setStep('product')">Change</a>)
+ </td>
+ <td id="versionTD" class="hidden">
+ <span class="label">Version:
+ <select id="version_select" onchange="bugForm.onVersionChange(this.value)">
+ </select>
+ </td>
+ <td valign="top">
+ [% PROCESS help id="product_help" %]
+ <div id="product_help" class="hidden help">
+ The Product and Version you are reporting the issue with.
+ </div>
+</tr>
+
+<tr class="odd" id="componentTR">
+ <td valign="top">
+ <div class="label">
+ Component:
+ </div>
+ (<a id="list_comp" href="describecomponents.cgi" target="_blank"
+ title="Show a list of all components and descriptions (in a new window)."
+ >List</a>)
+ </td>
+ <td valign="top" colspan="2">
+ <select id="component_select" onchange="bugForm.onComponentChange(this.value)" class="mandatory">
+ </select>
+ <div id="component_description"></div>
+ </td>
+ <td valign="top">
+ [% PROCESS help id="component_help" %]
+ <div id="component_help" class="hidden help">
+ The area where the problem occurs.<br>
+ <br>
+ If you are unsure which component to use, select a 'General' component.
+ </div>
+</tr>
+
+<tr class="even">
+ <td class="label" colspan="3">What did you do?</td>
+ <td valign="top">
+ [% PROCESS help id="steps_help" %]
+ <div id="steps_help" class="hidden help">
+ Please be as specific as possible about what what you did
+ to cause the problem. Providing step-by-step instructions
+ would be ideal.<br>
+ <br>
+ Include any relevant URLs and special setup steps.<br>
+ <br>
+ <span class="help-bad">Bad example</span>: Mozilla crashed. You suck!<br>
+ <span class="help-good">Good example</span>: After a crash which happened
+ when I was sorting in the Bookmark Manager, all of my top-level bookmark
+ folders beginning with the letters Q to Z are no longer present.
+ </div>
+ </td>
+</tr>
+<tr class="even">
+ <td colspan="3"><textarea id="bug_steps" name="bug_steps" rows="5"></textarea></td>
+ <td>&nbsp;</td>
+</tr>
+
+<tr class="odd">
+ <td class="label" colspan="3">What happened?</td>
+ <td valign="top">
+ [% PROCESS help id="actual_help" %]
+ <div id="actual_help" class="hidden help">
+ What happened after you performed the steps above?
+ </div>
+</tr>
+<tr class="odd">
+ <td colspan="3"><textarea id="actual" name="actual" rows="5"></textarea></td>
+ <td>&nbsp;</td>
+</tr>
+
+<tr class="even">
+ <td class="label" colspan="3">What should have happened?</td>
+ <td valign="top">
+ [% PROCESS help id="expected_help" %]
+ <div id="expected_help" class="hidden help">
+ What should the software have done instead?
+ </div>
+</tr>
+<tr class="even">
+ <td colspan="3"><textarea id="expected" name="expected" rows="5"></textarea></td>
+ <td>&nbsp;</td>
+</tr>
+
+<tr class="odd">
+ <td class="label">Attach a file:</td>
+ <td colspan="2">
+ <input type="file" name="data" id="data" size="50" onchange="bugForm.onFileChange()">
+ <input type="hidden" name="contenttypemethod" value="autodetect">
+ <button id="reset_data" onclick="return bugForm.onFileClear()" disabled>Clear</button>
+ </td>
+ <td valign="top">
+ [% PROCESS help id="file_help" %]
+ <div id="file_help" class="hidden help">
+ If a file helps explain the issue better, such as a screenshot, please
+ attach one here.
+ </div>
+ </td>
+</tr>
+<tr class="odd">
+ <td class="label">File Description:</td>
+ <td colspan="2"><input type="text" name="description" id="data_description" class="textInput" disabled></td>
+ <td>&nbsp;</td>
+</tr>
+
+<tr class="even">
+ <td class="label">Security:</td>
+ <td colspan="2">
+ <table border="0" cellpadding="0" cellspacing="0">
+ <tr>
+ <td>
+ <input type="checkbox" name="groups" value="core-security" id="groups">
+ </td>
+ <td>
+ <label for="groups">Many users could be harmed by this security problem:
+ it should be kept hidden from the public until it is resolved.</label>
+ </td>
+ </tr>
+ </table>
+ </td>
+ <td>&nbsp;</td>
+</tr>
+
+<tr class="odd">
+ <td>&nbsp;</td>
+ <td colspan="2" id="submitTD">
+ <input type="submit" id="submit" value="Submit [% terms.Bug %]">
+ </td>
+ <td>&nbsp;</td>
+</tr>
+
+</table>
+
+</form>
+
+</div>
+[% END %]
+
+[%############################################################################%]
+[%# help block #%]
+[%############################################################################%]
+
+[% BLOCK help %]
+<img src="extensions/GuidedBugEntry/web/images/help.png" width="16" height="16" class="help_image"
+ helpid="[% id FILTER html %]" onMouseOver="bugForm.showHelp(this)" onMouseOut="bugForm.hideHelp(this)"
+ >
+[% END %]
diff --git a/extensions/GuidedBugEntry/template/en/default/guided/products.html.tmpl b/extensions/GuidedBugEntry/template/en/default/guided/products.html.tmpl
new file mode 100644
index 000000000..22c93a354
--- /dev/null
+++ b/extensions/GuidedBugEntry/template/en/default/guided/products.html.tmpl
@@ -0,0 +1,44 @@
+[%# 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.
+ #%]
+
+[% INCLUDE product_block
+ name="Firefox"
+ icon="firefox.png"
+%]
+[% INCLUDE product_block
+ name="Firefox for Android"
+ icon="firefox.png"
+%]
+[% INCLUDE product_block
+ name="Thunderbird"
+ icon="thunderbird.png"
+%]
+[% INCLUDE product_block
+ name="Mozilla Services"
+ icon="dino.png"
+%]
+[% INCLUDE product_block
+ name="SeaMonkey"
+ icon="seamonkey.png"
+%]
+[% INCLUDE product_block
+ name="Mozilla Localizations"
+ icon="dino.png"
+%]
+[% INCLUDE product_block
+ name="Mozilla Labs"
+ icon="labs.png"
+%]
+[% INCLUDE product_block
+ name="Calendar"
+ icon="sunbird.png"
+%]
+[% INCLUDE product_block
+ name="Core"
+ icon="core.png"
+%]
diff --git a/extensions/GuidedBugEntry/template/en/default/pages/guided_products.js.tmpl b/extensions/GuidedBugEntry/template/en/default/pages/guided_products.js.tmpl
new file mode 100644
index 000000000..231681085
--- /dev/null
+++ b/extensions/GuidedBugEntry/template/en/default/pages/guided_products.js.tmpl
@@ -0,0 +1,18 @@
+[%# 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.
+ #%]
+
+[%# this file allows us to pull in data defined in the BMO ext %]
+
+[% IF products %]
+ [% FOREACH product = products %]
+ if (!products['[% product.key FILTER js %]'])
+ products['[% product.key FILTER js %]'] = {};
+ products['[% product.key FILTER js %]'].secgroup = '[% product.value FILTER js %]';
+ [% END %]
+[% END %]
+