diff roundup/templates/classic/html/issue.search @ 1002:1798d2fa9fec

Hack hack... . Lots of cleanup in the classic html (stylesheet, search page, index page, ...) . Reinstated searching, but not query saving yet . Filtering only allows sorting and grouping by one property - all backends now implement this behaviour. . Nosy list journalling turned off by default, everything else is on. . Added some convenience methods (reverse, propchanged, [item] accesses, ...) . Did I mention the stylesheet is much cleaner now? :)
author Richard Jones <richard@users.sourceforge.net>
date Sun, 01 Sep 2002 04:32:30 +0000
parents d9943245db26
children d6c13142e7b9
line wrap: on
line diff
--- a/roundup/templates/classic/html/issue.search	Sat Aug 31 22:09:26 2002 +0000
+++ b/roundup/templates/classic/html/issue.search	Sun Sep 01 04:32:30 2002 +0000
@@ -2,64 +2,144 @@
 <form method="GET" tal:attributes="action request/classname">
 <input type="hidden" name=":action" value="search">
 
-Columns you may display:
-<tal:block
-  tal:repeat="n python:'id activity priority title status assignedto'.split()">
-  <span tal:content="n">name</span>
-  <input type="checkbox" name=":columns"
-       tal:attributes="value n;
-                       checked python:request.columns.has_key(n)">
-</tal:block>
-<br>
-Sort on: <input type="radio" name=":sort" tal:repeat="n request/sort"
-       tal:attributes="value n;
-                       checked python:n in request.sort">
-<br>
-Group on:
-<input type="radio" name=":group" tal:repeat="n request/group"
-       tal:attributes="value n;
-                       checked python:n in request.group">
+<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()">
+
+<tr class="form-header">
+ <th>&nbsp;</th>
+ <th>Filter on</th><th>Display</th><th>Sort on</th><th>Group on</th>
+</tr>
+
+<tr>
+ <th>All text*:</th>
+ <td><input name=":search_text"></td>
+ <td>&nbsp;</td>
+ <td>&nbsp;</td>
+ <td>&nbsp;</td>
+</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>&nbsp;</td>
+</tr>
 
-<br>
-Priority:
-<span tal:replace="structure issue/priority/menu" />
+<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>
+ <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>
+ <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" checked></td>
+ <td>&nbsp;</td>
+</tr>
 
-<br>
-Status:
-<select name="status">
- <option value="dontcare">don't care</option>
- <option value="-1,1,2,3,4,5,6,7">not resolved</option>
- <option value="-1">not selected</option>
- <option value="dontcare">------------</option>
- <option tal:repeat="s db/status/list" tal:attributes="value s/id"
-   tal:content="s/name">status to filter on</option>
-</select>
+<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" checked></td>
+</tr>
+
+<tr>
+ <th>Status:</th>
+ <td>
+  <select name="status">
+   <option value="">don't care</option>
+   <option value="-1,1,2,3,4,5,6,7">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>
 
-<br>
-Assigned To:
-<select name="assignedto">
- <option value="dontcare">don't care</option>
- <option tal:attributes="value request/user/id">assigned to me</option>
- <option value="-1">unassigned</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>
+<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>
+<th>Pagesize:</th>
+<td><input type="text" name=":pagesize" size="3" value="50"></td>
+</tr>
 
-<tal:block tal:repeat="n python:request.filterspec.keys()">
- Filter: <input tal:repeat="v python:request.filterspec[n]"
-                tal:attributes="name n; value v">
-</tal:block>
+<tr>
+<th>Start With:</th>
+<td><input type="text" name=":startwith" size="3" value="0"></td>
+</tr>
+
+<tr>
+<th>Sort Descending:</th>
+<td><input type="checkbox" name=":sortdir" checked>
+</td>
 
-<br>
-Pagesize:
- <input type="text" name=":pagesize" size="3" value="50">
+<tr>
+<th>Group Descending:</th>
+<td><input type="checkbox" name=":groupdir">
+</td>
+</tr>
 
-<br>
-Start With:
-<input type="text" name=":startwith" size="3" value="0">
+<tr><td>&nbsp;</td>
+<td><input type="submit" value="Search"></td>
+</tr>
 
-<br>
-<input type="submit" value="Search">
+<tr><td>&nbsp;</td>
+ <td colspan="4" class="help">*: The "all text" field will look in message
+   bodies and issue titles</td>
+</tr>
+</table>
 
 </form>

Roundup Issue Tracker: http://roundup-tracker.org/