| [%# 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> |
| #%] |
| |
| [% 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> |
| Advanced Searching Using Boolean Charts: |
| </strong> |
| </p> |
| |
| [%# Whoever wrote the original version of boolean charts had a seriously twisted mind %] |
| |
| [% jsmagic = "onclick=\"document.forms[0].action='query.cgi#chart'; document.forms[0].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.description %]</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" |
| name="cmd-add[% "${chartnum}-${rownum}-${newor}" %]" [% jsmagic %]> |
| </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" |
| name="cmd-add[% "${chartnum}-${newand}-0" %]" [% jsmagic %]> |
| |
| <input type="submit" value="Add another boolean chart" |
| name="cmd-add[% newchart %]-0-0" [% jsmagic %]> |
| |
| </td> |
| </tr> |
| [% END %] |
| |
| [% END %] |
| </table> |
| <hr> |
| [% END %] |