Initial patch.
[vuplus_webkit] / Websites / bugs.webkit.org / template / en / default / search / boolean-charts.html.tmpl
diff --git a/Websites/bugs.webkit.org/template/en/default/search/boolean-charts.html.tmpl b/Websites/bugs.webkit.org/template/en/default/search/boolean-charts.html.tmpl
new file mode 100644 (file)
index 0000000..97a10d4
--- /dev/null
@@ -0,0 +1,135 @@
+[%# 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>
+  #%]
+  
+[% types = [
+  { name => "noop", description => "---" },
+  { name => "equals", description => "is equal to" },
+  { name => "notequals", description => "is not equal to" },
+  { name => "anyexact", description => "is equal to any of the strings" },
+  { name => "substring", description => "contains the string" },
+  { name => "casesubstring", description => "contains the string (exact case)" },
+  { name => "notsubstring", description => "does not contain the string" },
+  { name => "anywordssubstr", description => "contains any of the strings" },
+  { name => "allwordssubstr", description => "contains all of the strings" },
+  { name => "nowordssubstr", description => "contains none of the strings" },
+  { name => "regexp", description => "contains regexp" },
+  { name => "notregexp", description => "does not contain regexp" },
+  { name => "lessthan", description => "is less than" },
+  { name => "greaterthan", description => "is greater than" },
+  { name => "anywords", description => "contains any of the words" },
+  { name => "allwords", description => "contains all of the words" },
+  { name => "nowords", description => "contains none of the words" },
+  { name => "changedbefore", description => "changed before" },
+  { name => "changedafter", description => "changed after" },
+  { name => "changedfrom", description => "changed from" },
+  { name => "changedto", description => "changed to" },
+  { name => "changedby", description => "changed by" },
+  { name => "matches", description => "matches" } ] %]
+
+  <p>
+    <strong>
+      <a name="chart">Advanced Searching Using Boolean Charts</a>:
+    </strong>
+  </p>
+
+[%# Whoever wrote the original version of boolean charts had a seriously twisted mind %]
+
+[% jsmagic = "onclick=\"this.form.action='query.cgi#chart'; this.form.method='POST'; return 1;\"" %]
+
+[% FOREACH chart = default.charts %]
+  [% chartnum = loop.count - 1 %]
+  <table>
+    <tr>
+      <td>
+        <input type="checkbox" id="negate[% chartnum FILTER html %]"
+             name="negate[% chartnum FILTER html %]" value="1"
+            [%+ "checked" IF chart.negate %]>
+        <label for="negate[% chartnum FILTER html %]">
+          Not (negate this whole chart)
+        </label>
+      </td>
+    </tr>
+  [% FOREACH row = chart.rows %]
+    [% rownum = loop.count - 1 %]
+    <tr>
+    [% FOREACH col = row %]
+      [% colnum = loop.count - 1 %]
+      <td>
+        <select name="[% "field${chartnum}-${rownum}-${colnum}" %]">
+          [% FOREACH field = fields %]
+            <option value="[% field.name %]" [% "selected" IF field.name == col.field %]>
+              [% field_descs.${field.name} || field.description FILTER html %]
+            </option>
+          [% END %]
+        </select>
+
+        <select name="[% "type${chartnum}-${rownum}-${colnum}" %]">
+          [% FOREACH type = types %]
+            <option value="[% type.name %]"
+              [%- " selected" IF type.name == col.type %]>[% type.description %]</option>
+          [% END %]
+        </select>
+
+        <input name="[% "value${chartnum}-${rownum}-${colnum}" %]" 
+               value="[% col.value FILTER html %]"> 
+      </td>
+      
+      [% UNLESS loop.last %]
+        <td align="center"> 
+          Or 
+        </td>    
+      </tr>
+      <tr>
+      [% ELSE %]
+        <td>
+          [% newor = colnum + 1 %]
+          <input type="submit" value="Or" [% jsmagic %]
+                 name="cmd-add[% "${chartnum}-${rownum}-${newor}" %]"
+                 id="cmd-add[% "${chartnum}-${rownum}-${newor}" %]">
+        </td>
+      [% END %]
+      
+    [% END %]
+    </tr>
+    
+    [% UNLESS loop.last %]
+    <tr>
+      <td>And</td>
+    </tr>    
+    [% ELSE %]
+    <tr>
+      <td>
+        [% newand = rownum + 1; newchart = chartnum + 1 %]
+        <input type="submit" value="And" [% jsmagic %]
+               name="cmd-add[% "${chartnum}-${newand}-0" %]"
+               id="cmd-add[% "${chartnum}-${newand}-0" %]">
+        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+        <input type="submit" value="Add another boolean chart" [% jsmagic %]
+               name="cmd-add[% newchart %]-0-0"
+               id="cmd-add[% newchart %]-0-0">
+        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+      </td>
+    </tr>   
+    [% END %]
+    
+  [% END %]
+  </table>
+  <hr>
+[% END %]