diff options
22 files changed, 540 insertions, 12 deletions
diff --git a/.be/bugs/16fc9496-cdc2-4c6e-9b9f-b8f483b6dedb/values b/.be/bugs/16fc9496-cdc2-4c6e-9b9f-b8f483b6dedb/values new file mode 100644 index 0000000..3a5c80c --- /dev/null +++ b/.be/bugs/16fc9496-cdc2-4c6e-9b9f-b8f483b6dedb/values @@ -0,0 +1,35 @@ + + + +creator=abentley + + + + + + +severity=minor + + + + + + +status=open + + + + + + +summary=Arbitrary numerical priorities? + + + + + + +time=Wed, 04 Jan 2006 21:09:30 +0000 + + + diff --git a/.be/bugs/17921fbc-e7f0-4f31-8cdd-598e5ba7237b/values b/.be/bugs/17921fbc-e7f0-4f31-8cdd-598e5ba7237b/values new file mode 100644 index 0000000..ff42413 --- /dev/null +++ b/.be/bugs/17921fbc-e7f0-4f31-8cdd-598e5ba7237b/values @@ -0,0 +1,35 @@ + + + +creator=abentley + + + + + + +severity=minor + + + + + + +status=open + + + + + + +summary=Indicate bug dependencies + + + + + + +time=Wed, 04 Jan 2006 21:05:37 +0000 + + + diff --git a/.be/bugs/2929814b-2163-45d0-87ba-f7d1ef0a32a9/comments/6d7072de-89b6-4c53-a435-6879c644a0e8/body b/.be/bugs/2929814b-2163-45d0-87ba-f7d1ef0a32a9/comments/6d7072de-89b6-4c53-a435-6879c644a0e8/body new file mode 100644 index 0000000..e936bd4 --- /dev/null +++ b/.be/bugs/2929814b-2163-45d0-87ba-f7d1ef0a32a9/comments/6d7072de-89b6-4c53-a435-6879c644a0e8/body @@ -0,0 +1,3 @@ +We should support:
+WONTFIX
+EMPTY
\ No newline at end of file diff --git a/.be/bugs/2929814b-2163-45d0-87ba-f7d1ef0a32a9/comments/6d7072de-89b6-4c53-a435-6879c644a0e8/values b/.be/bugs/2929814b-2163-45d0-87ba-f7d1ef0a32a9/comments/6d7072de-89b6-4c53-a435-6879c644a0e8/values new file mode 100644 index 0000000..a7c57ed --- /dev/null +++ b/.be/bugs/2929814b-2163-45d0-87ba-f7d1ef0a32a9/comments/6d7072de-89b6-4c53-a435-6879c644a0e8/values @@ -0,0 +1,14 @@ + + + +Date=Wed, 04 Jan 2006 21:03:54 +0000 + + + + + + +From=abentley + + + diff --git a/.be/bugs/2929814b-2163-45d0-87ba-f7d1ef0a32a9/values b/.be/bugs/2929814b-2163-45d0-87ba-f7d1ef0a32a9/values new file mode 100644 index 0000000..68b730d --- /dev/null +++ b/.be/bugs/2929814b-2163-45d0-87ba-f7d1ef0a32a9/values @@ -0,0 +1,35 @@ + + + +creator=abentley + + + + + + +severity=minor + + + + + + +status=fixed + + + + + + +summary=More types of closed bugs + + + + + + +time=Wed, 04 Jan 2006 21:03:27 +0000 + + + diff --git a/.be/bugs/576e804a-8b76-4876-8e9d-d7a72b0aef10/values b/.be/bugs/576e804a-8b76-4876-8e9d-d7a72b0aef10/values new file mode 100644 index 0000000..eb2c67f --- /dev/null +++ b/.be/bugs/576e804a-8b76-4876-8e9d-d7a72b0aef10/values @@ -0,0 +1,35 @@ + + + +creator=abentley + + + + + + +severity=minor + + + + + + +status=open + + + + + + +summary=Allow attachments + + + + + + +time=Wed, 25 Jan 2006 15:43:46 +0000 + + + diff --git a/.be/bugs/62a74b85-0d4b-49f5-8794-74bafd871cd4/values b/.be/bugs/62a74b85-0d4b-49f5-8794-74bafd871cd4/values new file mode 100644 index 0000000..509920e --- /dev/null +++ b/.be/bugs/62a74b85-0d4b-49f5-8794-74bafd871cd4/values @@ -0,0 +1,35 @@ + + + +creator=abentley + + + + + + +severity=minor + + + + + + +status=closed + + + + + + +summary=Indicate presence of Comments + + + + + + +time=Wed, 25 Jan 2006 15:18:58 +0000 + + + diff --git a/.be/bugs/65776f00-34d8-4b58-874d-333196a5e245/values b/.be/bugs/65776f00-34d8-4b58-874d-333196a5e245/values new file mode 100644 index 0000000..8f484de --- /dev/null +++ b/.be/bugs/65776f00-34d8-4b58-874d-333196a5e245/values @@ -0,0 +1,35 @@ + + + +creator=abentley + + + + + + +severity=minor + + + + + + +status=open + + + + + + +summary=Select severity filter + + + + + + +time=Wed, 04 Jan 2006 21:07:08 +0000 + + + diff --git a/.be/bugs/7ec2c071-9630-42b0-b08a-9854616f9144/values b/.be/bugs/7ec2c071-9630-42b0-b08a-9854616f9144/values new file mode 100644 index 0000000..355e32e --- /dev/null +++ b/.be/bugs/7ec2c071-9630-42b0-b08a-9854616f9144/values @@ -0,0 +1,35 @@ + + + +creator=abentley + + + + + + +severity=minor + + + + + + +status=open + + + + + + +summary=Arbitrary tags + + + + + + +time=Wed, 04 Jan 2006 21:06:38 +0000 + + + diff --git a/.be/bugs/8e948522-c6a1-4c97-af93-2cf4090f44b5/values b/.be/bugs/8e948522-c6a1-4c97-af93-2cf4090f44b5/values new file mode 100644 index 0000000..b827901 --- /dev/null +++ b/.be/bugs/8e948522-c6a1-4c97-af93-2cf4090f44b5/values @@ -0,0 +1,35 @@ + + + +creator=abentley + + + + + + +severity=minor + + + + + + +status=open + + + + + + +summary=list X most recent entries + + + + + + +time=Wed, 25 Jan 2006 15:44:18 +0000 + + + diff --git a/.be/bugs/9a942b1d-a3b5-441d-8aef-b844700e1efa/values b/.be/bugs/9a942b1d-a3b5-441d-8aef-b844700e1efa/values new file mode 100644 index 0000000..800a5ce --- /dev/null +++ b/.be/bugs/9a942b1d-a3b5-441d-8aef-b844700e1efa/values @@ -0,0 +1,35 @@ + + + +creator=abentley + + + + + + +severity=minor + + + + + + +status=open + + + + + + +summary=Provide search + + + + + + +time=Wed, 25 Jan 2006 15:43:59 +0000 + + + diff --git a/.be/bugs/a403de79-8f39-41f2-b9ec-15053b175ee2/values b/.be/bugs/a403de79-8f39-41f2-b9ec-15053b175ee2/values new file mode 100644 index 0000000..5ee35f9 --- /dev/null +++ b/.be/bugs/a403de79-8f39-41f2-b9ec-15053b175ee2/values @@ -0,0 +1,35 @@ + + + +creator=abentley + + + + + + +severity=minor + + + + + + +status=open + + + + + + +summary=Beweb should support declaring username + + + + + + +time=Wed, 04 Jan 2006 21:07:25 +0000 + + + diff --git a/.be/bugs/a63bd76a-cd43-4f97-88ba-2323546d4572/values b/.be/bugs/a63bd76a-cd43-4f97-88ba-2323546d4572/values new file mode 100644 index 0000000..de74b69 --- /dev/null +++ b/.be/bugs/a63bd76a-cd43-4f97-88ba-2323546d4572/values @@ -0,0 +1,35 @@ + + + +creator=abentley + + + + + + +severity=minor + + + + + + +status=open + + + + + + +summary=Beweb: New comment button should save any changes + + + + + + +time=Wed, 04 Jan 2006 21:05:20 +0000 + + + diff --git a/.be/bugs/c76d7899-d495-4103-9355-012c0a6fece3/values b/.be/bugs/c76d7899-d495-4103-9355-012c0a6fece3/values new file mode 100644 index 0000000..a81bcc9 --- /dev/null +++ b/.be/bugs/c76d7899-d495-4103-9355-012c0a6fece3/values @@ -0,0 +1,35 @@ + + + +creator=abentley + + + + + + +severity=minor + + + + + + +status=open + + + + + + +summary=Support 'issues', like todo, better + + + + + + +time=Wed, 04 Jan 2006 21:09:02 +0000 + + + diff --git a/.be/bugs/cb56c990-a757-4aef-9888-a30918a7b3d7/values b/.be/bugs/cb56c990-a757-4aef-9888-a30918a7b3d7/values new file mode 100644 index 0000000..4e346e7 --- /dev/null +++ b/.be/bugs/cb56c990-a757-4aef-9888-a30918a7b3d7/values @@ -0,0 +1,35 @@ + + + +creator=abentley + + + + + + +severity=minor + + + + + + +status=open + + + + + + +summary=Beweb: Stripey tables + + + + + + +time=Wed, 04 Jan 2006 21:06:10 +0000 + + + diff --git a/.be/bugs/f70dd5df-805b-49f3-a9ce-12e0fae63365/values b/.be/bugs/f70dd5df-805b-49f3-a9ce-12e0fae63365/values new file mode 100644 index 0000000..7305e89 --- /dev/null +++ b/.be/bugs/f70dd5df-805b-49f3-a9ce-12e0fae63365/values @@ -0,0 +1,35 @@ + + + +creator=abentley + + + + + + +severity=minor + + + + + + +status=open + + + + + + +summary=Allow different sorts + + + + + + +time=Wed, 25 Jan 2006 15:43:19 +0000 + + + diff --git a/beweb/beweb/controllers.py b/beweb/beweb/controllers.py index b0f13db..cbd0816 100644 --- a/beweb/beweb/controllers.py +++ b/beweb/beweb/controllers.py @@ -84,10 +84,14 @@ class Bug(PrestHandler): raise cherrypy.HTTPRedirect(bug_url(bug_data['project'], bug.uuid)) @provide_action("action", "Update") - def update(self, bug_data, bug, status, severity, summary, action): + def update(self, bug_data, bug, status, severity, summary, assigned, + action): bug.status = status bug.severity = severity bug.summary = summary + if assigned == "": + assigned = None + bug.assigned = assigned bug.save() raise cherrypy.HTTPRedirect(bug_list_url(bug_data["project"])) diff --git a/beweb/beweb/prest.py b/beweb/beweb/prest.py index 7de1290..e6b7cdf 100644 --- a/beweb/beweb/prest.py +++ b/beweb/beweb/prest.py @@ -56,7 +56,6 @@ class PrestHandler(object): if action is not None: return action(*new_args, **kwargs) else: - print child.__class__.__name__ return child.dispatch(*new_args, **kwargs) def get_action(self, **kwargs): diff --git a/beweb/beweb/templates/about.kid b/beweb/beweb/templates/about.kid index 212bc1d..45d0093 100644 --- a/beweb/beweb/templates/about.kid +++ b/beweb/beweb/templates/about.kid @@ -12,7 +12,7 @@ Bentley and Oleg Romanyshyn. </p> <p> - Development was sponsored by + Development is sponsored by <a href="http://panoramicfeedback.com/">Panoramic Feedback</a>. </p> <p> diff --git a/beweb/beweb/templates/bugs.kid b/beweb/beweb/templates/bugs.kid index b8b2ff7..30004fc 100644 --- a/beweb/beweb/templates/bugs.kid +++ b/beweb/beweb/templates/bugs.kid @@ -2,8 +2,9 @@ <?python from libbe.cmdutil import unique_name from beweb.controllers import bug_url, project_url, bug_list_url +from beweb.config import people def row_class(bug): - if bug.status == "closed": + if not bug.active is True: return "closed" else: return "" @@ -19,8 +20,8 @@ def row_class(bug): <body> <h1>Bug list for ${project_name}</h1> <table> -<tr><td>ID</td><td>Status</td><td>Severity</td><td>Assigned To</td><td>Summary</td></tr> -<div py:for="bug in bugs" py:strip="True"><tr class="${row_class(bug)}" py:if="bug.status != 'closed' or show_closed"><td><a href="${bug_url(project_id, bug.uuid)}">${unique_name(bug, bugs[:])}</a></td><td>${bug.status}</td><td>${bug.severity}</td><td>${bug.assigned}</td><td>${bug.summary}</td></tr> +<tr><td>ID</td><td>Status</td><td>Severity</td><td>Assigned To</td><td>Comments</td><td>Summary</td></tr> +<div py:for="bug in bugs" py:strip="True"><tr class="${row_class(bug)}" py:if="bug.active or show_closed"><td><a href="${bug_url(project_id, bug.uuid)}">${unique_name(bug, bugs[:])}</a></td><td>${bug.status}</td><td>${bug.severity}</td><td>${people.get(bug.assigned, bug.assigned)}</td><td>${len(list(bug.iter_comment_ids()))}</td><td>${bug.summary}</td></tr> </div> </table> <a href="${project_url()}">Project list</a> diff --git a/beweb/beweb/templates/edit_bug.kid b/beweb/beweb/templates/edit_bug.kid index 49dbe52..89c4208 100644 --- a/beweb/beweb/templates/edit_bug.kid +++ b/beweb/beweb/templates/edit_bug.kid @@ -1,16 +1,30 @@ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <?python -from libbe.bugdir import severity_levels +from libbe.bugdir import severity_levels, active_status, inactive_status from libbe.utility import time_to_str from beweb.controllers import bug_list_url, comment_url -def select_among(name, options, default): +from beweb.config import people +def select_among(name, options, default, display_names=None): output = ['<select name="%s">' % name] for option in options: if option == default: selected = ' selected="selected"' else: selected = "" - output.append("<option%s>%s</option>" % (selected, option)) + if display_names is None: + display_name = None + else: + display_name = display_names.get(option) + + if option is None: + option = "" + if display_name is None: + display_name = option + value = "" + else: + value = ' value="%s"' % option + output.append("<option%s%s>%s</option>" % (selected, value, + display_name)) output.append("</select>") return XML("".join(output)) ?> @@ -27,7 +41,8 @@ def select_among(name, options, default): <form method="post"> <table> <tr><td>Status</td><td>Severity</td><td>Assigned To</td><td>Summary</td></tr> -<tr><td>${select_among("status", ["open", "closed", "in-progress"], bug.status)}</td><td>${select_among("severity", severity_levels, bug.severity)}</td><td>${bug.assigned}</td><td><input name="summary" value="${bug.summary}" size="80" /></td></tr> +<tr><td>${select_among("status", active_status+inactive_status, bug.status)}</td><td>${select_among("severity", severity_levels, bug.severity)}</td> +<td>${select_among("assigned", people.keys()+[None], bug.assigned, people)}</td><td><input name="summary" value="${bug.summary}" size="80" /></td></tr> </table> <div py:for="comment in bug.list_comments()" class="comment"> <insetbox> diff --git a/libbe/bugdir.py b/libbe/bugdir.py index 9fee680..d30bc75 100644 --- a/libbe/bugdir.py +++ b/libbe/bugdir.py @@ -210,13 +210,15 @@ def checked_property(name, valid): return property(getter, setter) severity_levels = ("wishlist", "minor", "serious", "critical", "fatal") +active_status = ("open", "in-progress", "waiting", "new", "verified") +inactive_status = ("closed", "disabled", "fixed", "wontfix", "waiting") severity_value = {} for i in range(len(severity_levels)): severity_value[severity_levels[i]] = i class Bug(object): - status = checked_property("status", (None, "open", "closed", "in-progress")) + status = checked_property("status", (None,)+active_status+inactive_status) severity = checked_property("severity", (None, "wishlist", "minor", "serious", "critical", "fatal")) @@ -244,7 +246,7 @@ class Bug(object): return os.path.join(self.path, self.uuid, file) def _get_active(self): - return self.status in ("open", "in-progress") + return self.status in active_status active = property(_get_active) |