From 4cd9b7a520a4902267be73b03b24435ab2923d26 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Fri, 30 Jan 2009 21:45:15 -0500 Subject: Made it prettier, and added assignee filters. --- cfbe.py | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) (limited to 'cfbe.py') diff --git a/cfbe.py b/cfbe.py index 1628fa6..49fc515 100755 --- a/cfbe.py +++ b/cfbe.py @@ -4,7 +4,7 @@ import cherrypy from libbe import bugdir from jinja2 import Environment, FileSystemLoader -bug_root = '/Users/sjl/Documents/cherryflavoredbugseverywhere/.be' +bug_root = '/Users/sjl/Desktop/be/.be' bd = bugdir.BugDir(root=bug_root) bd.load_all_bugs() @@ -15,17 +15,35 @@ class WebInterface: """The web interface to CFBE.""" @cherrypy.expose - def index(self, status='open'): + def index(self, status='open', assignee=''): bd.load_all_bugs() if status == 'open': status = ['open', 'assigned', 'test', 'unconfirmed', 'wishlist'] - label = 'Open' + label = 'All Open Bugs' elif status == 'closed': status = ['closed', 'disabled', 'fixed', 'wontfix'] - label = 'Closed' + label = 'All Closed Bugs' + if assignee != '': + if assignee == 'None': + label += ' Currently Unassigned' + else: + label += ' Assigned to %s' % (assignee,) + + 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) + bugs = [bug for bug in bd if bug.status in status] - return template.render(bugs=bugs, bd=bd, label=label) + + if assignee != '': + if assignee == 'None': + assignee = None + bugs = [bug for bug in bugs if bug.assigned == assignee] + + return template.render(bugs=bugs, bd=bd, label=label, + assignees=possible_assignees) config = '/Users/sjl/Documents/cherryflavoredbugseverywhere/cfbe.config' -- cgit