diff options
author | Steve Losh <steve@stevelosh.com> | 2009-01-30 23:53:09 -0500 |
---|---|---|
committer | Steve Losh <steve@stevelosh.com> | 2009-01-30 23:53:09 -0500 |
commit | 120720baf3ce09aacaddb82c0937af596aea62fe (patch) | |
tree | b65903b7b98883114b72efda855aebec6f51d19c | |
parent | 012817b8ed9c47354fe3b1e7657b82bcda4e77a4 (diff) | |
download | bugseverywhere-120720baf3ce09aacaddb82c0937af596aea62fe.tar.gz |
Implemented the status filter.
-rw-r--r-- | .be/bugs/984472f6-98f5-48fc-b521-70a1e5f60614/values | 7 | ||||
-rw-r--r-- | .be/bugs/decc6e78-a3db-4cd3-ad23-2bf8ed77cb0d/values | 9 | ||||
-rwxr-xr-x | cfbe.py | 18 | ||||
-rw-r--r-- | static/style/cfbe.css | 2 | ||||
-rw-r--r-- | templates/base.html | 21 | ||||
-rw-r--r-- | templates/list.html | 4 |
6 files changed, 54 insertions, 7 deletions
diff --git a/.be/bugs/984472f6-98f5-48fc-b521-70a1e5f60614/values b/.be/bugs/984472f6-98f5-48fc-b521-70a1e5f60614/values index 3abc050..21d3cef 100644 --- a/.be/bugs/984472f6-98f5-48fc-b521-70a1e5f60614/values +++ b/.be/bugs/984472f6-98f5-48fc-b521-70a1e5f60614/values @@ -36,6 +36,13 @@ summary=Implement the status filters. +target=alpha + + + + + + time=Sat, 31 Jan 2009 00:22:40 +0000 diff --git a/.be/bugs/decc6e78-a3db-4cd3-ad23-2bf8ed77cb0d/values b/.be/bugs/decc6e78-a3db-4cd3-ad23-2bf8ed77cb0d/values index 7b5aaad..96f52d3 100644 --- a/.be/bugs/decc6e78-a3db-4cd3-ad23-2bf8ed77cb0d/values +++ b/.be/bugs/decc6e78-a3db-4cd3-ad23-2bf8ed77cb0d/values @@ -22,7 +22,7 @@ severity=minor -status=open +status=closed @@ -36,6 +36,13 @@ summary=Implement the target filters. +target=alpha + + + + + + time=Sat, 31 Jan 2009 02:58:44 +0000 @@ -16,7 +16,7 @@ class WebInterface: """The web interface to CFBE.""" @cherrypy.expose - def index(self, status='open', assignee=''): + def index(self, status='open', assignee='', target=''): bd.load_all_bugs() if status == 'open': @@ -25,18 +25,28 @@ class WebInterface: elif status == 'closed': status = ['closed', 'disabled', 'fixed', 'wontfix'] label = 'All Closed Bugs' + if assignee != '': if assignee == 'None': label += ' Currently Unassigned' else: label += ' Assigned to %s' % (assignee,) + if target != '': + if target == 'None': + label += ' Currently Unschdeuled' + else: + label += ' Scheduled for %s' % (target,) + template = env.get_template('list.html') possible_assignees = list(set([bug.assigned for bug in bd if bug.assigned != None])) possible_assignees.sort(key=unicode.lower) + possible_targets = list(set([bug.target for bug in bd if bug.target != None])) + possible_targets.sort(key=unicode.lower) + bugs = [bug for bug in bd if bug.status in status] if assignee != '': @@ -44,8 +54,14 @@ class WebInterface: assignee = None bugs = [bug for bug in bugs if bug.assigned == assignee] + if target != '': + if target == 'None': + target = None + bugs = [bug for bug in bugs if bug.target == target] + return template.render(bugs=bugs, bd=bd, label=label, assignees=possible_assignees, + targets=possible_targets, repository_name=repository_name) diff --git a/static/style/cfbe.css b/static/style/cfbe.css index 3cd4241..ee699b4 100644 --- a/static/style/cfbe.css +++ b/static/style/cfbe.css @@ -30,4 +30,4 @@ table tr td, table tr th { padding: 0px 5px; line-height: 2.916em; } table { margin-bottom: 1.417em; } tr.stripe { background-color: #f5e5f0; } -div#assignees { display: none; } +div#assignees, div#targets { display: none; } diff --git a/templates/base.html b/templates/base.html index 8f8fb3d..66ecd2f 100644 --- a/templates/base.html +++ b/templates/base.html @@ -19,9 +19,16 @@ $('#external-pane').hide(); $('#external-pane-content').corners('bottom 8px'); - $('#filter-assignee').click(function() { + $('#filter-assignee').click(function(e) { $('#external-pane-content').html($('#assignees').html()); $('#external-pane').fadeIn('fast'); + e.preventDefault(); + }); + + $('#filter-target').click(function(e) { + $('#external-pane-content').html($('#targets').html()); + $('#external-pane').fadeIn('fast'); + e.preventDefault(); }); $('table tr:odd').addClass('stripe'); @@ -43,8 +50,8 @@ Just show me: <a href="/">Open</a> <a href="/?status=closed">Closed</a> - <a href="#" id="filter-assignee">Assigned to...</a> - <a href="#">Scheduled for...</a> + <a href="" id="filter-assignee">Assigned to...</a> + <a href="" id="filter-target">Scheduled for...</a> </span> <span id="create"> <a href="fixme">+ Create a new bug</a> @@ -76,5 +83,13 @@ {% endfor %} </p> </div> + <div id="targets"> + <p> + <a href="/?target=None">Unscheduled</a><br /><br /> + {% for target in targets %} + <a href="/?target={{ target }}">{{ target }}</a><br /> + {% endfor %} + </p> + </div> </body> </html> diff --git a/templates/list.html b/templates/list.html index 34e28d3..3dd4a70 100644 --- a/templates/list.html +++ b/templates/list.html @@ -10,13 +10,15 @@ <th>ID</th> <th>Summary</th> <th>Status</th> + <th>Target</th> <th>Assigned To</th> </tr> {% for bug in bugs %} <tr> <td>{{ bd.bug_shortname(bug) }}</td> - <td>{{ bug.summary|e|truncate(60) }}</td> + <td>{{ bug.summary|e|truncate(65) }}</td> <td>{{ bug.status }}</td> + <td>{{ bug.target }}</td> <td>{{ bug.assigned|striptags }}</td> </tr> {% endfor %} |