web/hosts/issues/html bug.search,1.4,1.5
Tobias Hunger <[email protected]> Wed, 20 Aug 2003 09:27:29 -0500
| Newsgroups | gmane.comp.video.fresco.cvs |
|---|---|
| Message-ID | <[email protected]> |
Update of /cvs/fresco/web/hosts/issues/html
In directory purcel:/tmp/cvs-serv21818
Modified Files:
bug.search
Log Message:
Use the newly added macros in the bug search form: In addition to simplifying
the template it also fixes bug219.
Index: bug.search
===================================================================
RCS file: /cvs/fresco/web/hosts/issues/html/bug.search,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- bug.search 14 Dec 2002 16:45:43 -0000 1.4
+++ bug.search 20 Aug 2003 14:27:27 -0000 1.5
@@ -5,240 +5,252 @@
<tal:block metal:fill-slot="content">
-<form method="GET" tal:attributes="action request/classname">
-<input type="hidden" name=":action" value="search">
-<input type="hidden" name=":columns" value="id">
+ <form method="GET" tal:attributes="action request/classname">
+ <input type="hidden" name=":action" value="search">
-<table class="form" tal:define="
- cols python:'id activity priority title status assignedto'.split();
- defsort python:['activity'];
- defgroup python:['priority'];
- defdisp python:'id activity title status assignedto'.split()">
+ <table class="form" tal:define="
+ cols python:request.columns or
+ 'id activity title status assignedto'.split();
+ sort_on python:request.sort[1] or 'activity';
+ group_on python:request.group[1] or 'priority';
-<tr class="form-header">
- <th> </th>
- <th>Filter on</th><th>Display</th><th>Sort on</th><th>Group on</th>
-</tr>
+ search_input templates/page/macros/search_input;
+ column_input templates/page/macros/column_input;
+ sort_input templates/page/macros/sort_input;
+ group_input templates/page/macros/group_input;
+ search_multiselect templates/page/macros/search_multiselect;
+ search_select templates/page/macros/search_select">
-<tr>
- <th>All text*:</th>
- <td><input name=":search_text"></td>
- <td> </td>
- <td> </td>
- <td> </td>
-</tr>
+ <tr>
+ <th class="header"> </th>
+ <th class="header">Filter on</th>
+ <th class="header">Display</th>
+ <th class="header">Sort on</th>
+ <th class="header">Group on</th>
+ </tr>
-<tr>
- <th>Title:</th>
- <td><input name="title"></td>
- <td><input type="checkbox" name=":columns" value="title" checked></td>
- <td><input type="radio" name=":sort" value="title"></td>
- <td> </td>
-</tr>
+ <tr class="form-header">
+ <th> </th>
+ <th>Filter on</th><th>Display</th><th>Sort on</th><th>Group on</th>
+ </tr>
+
+ <tr tal:define="name string::search_text">
+ <th>All text*:</th>
+ <td metal:use-macro="search_input"></td>
+ <td> </td>
+ <td> </td>
+ <td> </td>
+ </tr>
-<tr>
- <th>Created:</th>
- <td><input name="activity"></td>
- <td><input type="checkbox" name=":columns" value="created"></td>
- <td><input type="radio" name=":sort" value="created"></td>
- <td><input type="radio" name=":group" value="created"></td>
-</tr>
+ <tr tal:define="name string:title">
+ <th>Title:</th>
+ <td metal:use-macro="search_input"></td>
+ <td metal:use-macro="column_input"></td>
+ <td metal:use-macro="sort_input"></td>
+ <td> </td>
+ </tr>
-<tr>
- <th>Creator:</th>
- <td>
- <select name="creator">
- <option value="">don't care</option>
- <option tal:attributes="value request/user/id">created by me</option>
- <option value="-1">------------</option>
- <option tal:repeat="s db/user/list" tal:attributes="value s/id"
- tal:content="s/username">user to filter on</option>
- </select>
- </td>
- <td><input type="checkbox" name=":columns" value="creator" checked></td>
- <td><input type="radio" name=":sort" value="creator"></td>
- <td><input type="radio" name=":group" value="creator"></td>
-</tr>
+ <tr tal:define="name string:creation">
+ <th>Creation Date:</th>
+ <td metal:use-macro="search_input"></td>
+ <td metal:use-macro="column_input"></td>
+ <td metal:use-macro="sort_input"></td>
+ <td metal:use-macro="group_input"></td>
+ </tr>
-<tr>
- <th>Activity:</th>
- <td><input name="activity"></td>
- <td><input type="checkbox" name=":columns" value="activity" checked></td>
- <td><input type="radio" name=":sort" value="activity"></td>
- <td> </td>
-</tr>
+ <tr tal:define="name string:creator;
+ db_klass string:user;
+ db_content string:username;">
+ <th>Creator:</th>
+ <td metal:use-macro="search_select">
+ <option metal:fill-slot="extra_options"
+ tal:attributes="value request/user/id">created by me</option>
+ </td>
+ <td metal:use-macro="column_input"></td>
+ <td metal:use-macro="sort_input"></td>
+ <td metal:use-macro="group_input"></td>
+ </tr>
-<tr>
- <th>Priority:</th>
- <td>
- <select name="priority">
- <option value="">don't care</option>
- <option value="-1">not selected</option>
- <option value="">------------</option>
- <option tal:repeat="s db/priority/list" tal:attributes="value s/id"
- tal:content="s/name">priority to filter on</option>
- </select>
- </td>
- <td><input type="checkbox" name=":columns" value="priority"></td>
- <td><input type="radio" name=":sort" value="priority"></td>
- <td><input type="radio" name=":group" value="priority"></td>
-</tr>
+ <tr tal:define="name string:activity">
+ <th>Activity:</th>
+ <td metal:use-macro="search_input"></td>
+ <td metal:use-macro="column_input"></td>
+ <td metal:use-macro="sort_input"></td>
+ <td> </td>
+ </tr>
-<tr>
- <th>Severity:</th>
- <td>
- <select name="severity">
- <option value="">don't care</option>
- <option value="-1">not selected</option>
- <option value="">------------</option>
- <option tal:repeat="s db/severity/list" tal:attributes="value s/id"
- tal:content="s/name">severity to filter on</option>
- </select>
- </td>
- <td><input type="checkbox" name=":columns" value="severity"></td>
- <td><input type="radio" name=":sort" value="severity"></td>
- <td><input type="radio" name=":group" value="severity"></td>
-</tr>
+ <tr tal:define="name string:priority;
+ db_klass string:priority;
+ db_content string:name;">
+ <th>Priority:</th>
+ <td metal:use-macro="search_select">
+ <option metal:fill-slot="extra_options" value="-1"
+ tal:attributes="selected python:value == '-1'">not selected</option>
+ </td>
+ <td metal:use-macro="column_input"></td>
+ <td metal:use-macro="sort_input"></td>
+ <td metal:use-macro="group_input"></td>
+ </tr>
-<tr>
- <th>Status:</th>
- <td>
- <select name="status">
- <option value="">don't care</option>
- <option value="-1,1,2">not resolved</option>
- <option value="-1">not selected</option>
- <option value="">------------</option>
- <option tal:repeat="s db/status/list" tal:attributes="value s/id"
- tal:content="s/name">status to filter on</option>
- </select>
- </td>
- <td><input type="checkbox" name=":columns" value="status" checked></td>
- <td><input type="radio" name=":sort" value="status"></td>
- <td><input type="radio" name=":group" value="status"></td>
-</tr>
+ <tr tal:define="name string:severity;
+ db_klass string:severity;
+ db_content string:name;">
+ <th>Severity:</th>
+ <td metal:use-macro="search_select">
+ <option metal:fill-slot="extra_options" value="-1"
+ tal:attributes="selected python:value == '-1'">not selected</option>
+ </td>
+ <td metal:use-macro="column_input"></td>
+ <td metal:use-macro="sort_input"></td>
+ <td metal:use-macro="group_input"></td>
+ </tr>
-<tr>
- <th>Assigned To:</th>
- <td>
- <select name="assignedto">
- <option value="">don't care</option>
- <option tal:attributes="value request/user/id">assigned to me</option>
- <option value="-1">unassigned</option>
- <option value="">------------</option>
- <option tal:repeat="s db/user/list" tal:attributes="value s/id"
- tal:content="s/username">user to filter on</option>
- </select>
- </td>
- <td><input type="checkbox" name=":columns" value="assignedto" checked></td>
- <td><input type="radio" name=":sort" value="assignedto"></td>
- <td><input type="radio" name=":group" value="assignedto"></td>
-</tr>
+ <tr tal:define="name string:status;
+ db_klass string:status;
+ db_content string:name;">
+ <th>Status:</th>
+ <td metal:use-macro="search_select">
+ <tal:block metal:fill-slot="extra_options">
+ <option value="-1,1,2,3,4,5,6,7"
+ tal:attributes="selected python:value == '-1,1,2'">not resolved</option>
+ <option value="-1" tal:attributes="selected python:value == '-1'">not selected</option>
+ </tal:block>
+ </td>
+ <td metal:use-macro="column_input"></td>
+ <td metal:use-macro="sort_input"></td>
+ <td metal:use-macro="group_input"></td>
+ </tr>
-<tr>
- <th>Type:</th>
- <td>
- <select name="bug_type">
- <option value="">don't care</option>
- <option value="-1">not selected</option>
- <option value="">------------</option>
- <option tal:repeat="s db/bug_type/list" tal:attributes="value s/id"
- tal:content="s/name">bug_type to filter on</option>
- </select>
- </td>
- <td><input type="checkbox" name=":columns" value="bug_type"></td>
- <td><input type="radio" name=":sort" value="bug_type"></td>
- <td><input type="radio" name=":group" value="bug_type"></td>
-</tr>
+ <tr tal:define="name string:assignedto;
+ db_klass string:user;
+ db_content string:username;">
+ <th>Assigned to:</th>
+ <td metal:use-macro="search_select">
+ <tal:block metal:fill-slot="extra_options">
+ <option tal:attributes="value request/user/id">assigned to me</option>
+ <option value="-1" tal:attributes="selected python:value == '-1'">unassigned</option>
+ </tal:block>
+ </td>
+ <td metal:use-macro="column_input"></td>
+ <td metal:use-macro="sort_input"></td>
+ <td metal:use-macro="group_input"></td>
+ </tr>
-<tr>
- <th>Topic:</th>
- <td>
- <select multiple name="topics" size="5">
- <option value="">don't care</option>
- <option value="-1">not selected</option>
- <option value="">------------</option>
- <option tal:repeat="s db/topic/list" tal:attributes="value s/id"
- tal:content="s/name">topics to filter on</option>
- </select>
- </td>
- <td><input type="checkbox" name=":columns" value="topic"></td>
- <td><input type="radio" name=":sort" value="topic"></td>
- <td><input type="radio" name=":group" value="topic"></td>
-</tr>
+ <tr tal:define="name string:bug_type;
+ db_klass string:bug_type;
+ db_content string:name;">
+ <th>Type:</th>
+ <td metal:use-macro="search_select">
+ <tal:block metal:fill-slot="extra_options">
+ <option value="-1" tal:attributes="selected python:value == '-1'">unspecified</option>
+ </tal:block>
+ </td>
+ <td metal:use-macro="column_input"></td>
+ <td metal:use-macro="sort_input"></td>
+ <td metal:use-macro="group_input"></td>
+ </tr>
-<tr>
- <th>Components:</th>
- <td>
- <select multiple name="components" size="5">
- <option value="">don't care</option>
- <option value="-1">not selected</option>
- <option value="">------------</option>
- <option tal:repeat="s db/component/list" tal:attributes="value s/id"
- tal:content="s/name">components to filter on</option>
- </select>
- </td>
- <td><input type="checkbox" name=":columns" value="components"></td>
- <td><input type="radio" name=":sort" value="components"></td>
- <td><input type="radio" name=":group" value="components"></td>
-</tr>
+ <tr tal:define="name string:topic;
+ size string:5;
+ db_klass string:topic;
+ db_content string:name;">
+ <th>Topic:</th>
+ <td metal:use-macro="search_multiselect">
+ <tal:block metal:fill-slot="extra_options">
+ <option value="-1" tal:attributes="selected python:value == '-1'">unspecified</option>
+ </tal:block>
+ </td>
+ <td metal:use-macro="column_input"></td>
+ <td metal:use-macro="sort_input"></td>
+ <td metal:use-macro="group_input"></td>
+ </tr>
-<tr>
- <th>Platforms:</th>
- <td>
- <select multiple name="platforms" size="5">
- <option value="">don't care</option>
- <option value="-1">not selected</option>
- <option value="">------------</option>
- <option tal:repeat="s db/platform/list" tal:attributes="value s/id"
- tal:content="s/name">platforms to filter on</option>
- </select>
- </td>
- <td><input type="checkbox" name=":columns" value="platforms"></td>
- <td><input type="radio" name=":sort" value="platforms"></td>
- <td><input type="radio" name=":group" value="platforms"></td>
-</tr>
+ <tr tal:define="name string:component;
+ size string:5;
+ db_klass string:component;
+ db_content string:name;">
+ <th>Components:</th>
+ <td metal:use-macro="search_multiselect">
+ <tal:block metal:fill-slot="extra_options">
+ <option value="-1" tal:attributes="selected python:value == '-1'">unspecified</option>
+ </tal:block>
+ </td>
+ <td metal:use-macro="column_input"></td>
+ <td metal:use-macro="sort_input"></td>
+ <td metal:use-macro="group_input"></td>
+ </tr>
-<tr>
-<th>Pagesize:</th>
-<td><input type="text" name=":pagesize" size="3" value="50"></td>
-</tr>
+ <tr tal:define="name string:platform;
+ size string:5;
+ db_klass string:platform;
+ db_content string:name;">
+ <th>Platforms:</th>
+ <td metal:use-macro="search_multiselect">
+ <tal:block metal:fill-slot="extra_options">
+ <option value="-1" tal:attributes="selected python:value == '-1'">unspecified</option>
+ </tal:block>
+ </td>
+ <td metal:use-macro="column_input"></td>
+ <td metal:use-macro="sort_input"></td>
+ <td metal:use-macro="group_input"></td>
+ </tr>
-<tr>
-<th>Start With:</th>
-<td><input type="text" name=":startwith" size="3" value="0"></td>
-</tr>
+ <tr>
+ <th>Pagesize:</th>
+ <td>
+ <input name=":pagesize" size="3" value="50"
+ tal:attributes="value request/form/:pagesize/value | default">
+ </td>
+ </tr>
-<tr>
-<th>Sort Descending:</th>
-<td><input type="checkbox" name=":sortdir" checked>
-</td>
+ <tr>
+ <th>Start With:</th>
+ <td>
+ <input name=":startwith" size="3" value="0"
+ tal:attributes="value request/form/:startwith/value | default">
+ </td>
+ </tr>
-<tr>
-<th>Group Descending:</th>
-<td><input type="checkbox" name=":groupdir">
-</td>
-</tr>
+ <tr>
+ <th>Sort Descending:</th>
+ <td>
+ <input type="checkbox" name=":sortdir"
+ tal:attributes="checked python:request.sort[0] == '-' or request.sort [0] is None">
+ </td>
+ </tr>
-<tr>
-<th>Query name**:</th>
-<td><input name=":queryname">
-</td>
-</tr>
+ <tr>
+ <th>Group Descending:</th>
+ <td>
+ <input type="checkbox" name=":groupdir"
+ tal:attributes="checked python:request.group[0] == '-'">
+ </td>
+ </tr>
-<tr><td> </td>
-<td><input type="submit" value="Search"></td>
-</tr>
+ <tr>
+ <th>Query name**:</th>
+ <td>
+ <input name=":queryname"
+ tal:attributes="value request/form/:queryname/value | default">
+ </td>
+ </tr>
-<tr><td> </td>
- <td colspan="4" class="help">
+ <tr>
+ <td> </td>
+ <td><input type="submit" value="Search"></td>
+ </tr>
+
+ <tr>
+ <td> </td>
+ <td colspan="4" class="help">
*: The "all text" field will look in message bodies and bug titles<br>
**: If you supply a name, the query will be saved off and available as a
link in the sidebar
- </td>
-</tr>
-</table>
+ </td>
+ </tr>
+ </table>
-</form>
+ </form>
</tal:block>
-</tal:block>
\ No newline at end of file
+</tal:block>