diff options
author | Steve Losh <steve@stevelosh.com> | 2009-02-01 16:09:50 -0500 |
---|---|---|
committer | Steve Losh <steve@stevelosh.com> | 2009-02-01 16:09:50 -0500 |
commit | 122b5aef8aaa94e71ea91facb156a26607575575 (patch) | |
tree | 93e64173e7e80a2d2ce2a4cfd03df9216657732f | |
parent | 59c742611d77ce59414d073e98782014dfb70d8f (diff) | |
download | bugseverywhere-122b5aef8aaa94e71ea91facb156a26607575575.tar.gz |
I can has commenting!
-rwxr-xr-x | cfbe.py | 17 | ||||
-rw-r--r-- | static/style/cfbe.css | 5 | ||||
-rw-r--r-- | templates/base.html | 6 | ||||
-rw-r--r-- | templates/bug.html | 15 |
4 files changed, 41 insertions, 2 deletions
@@ -52,6 +52,7 @@ class WebInterface: return bugs + @cherrypy.expose def index(self, status='open', assignee='', target=''): self.bd.load_all_bugs() @@ -78,6 +79,7 @@ class WebInterface: statuses=common_info['possible_statuses'], repository_name=common_info['repository_name']) + @cherrypy.expose def bug(self, id=''): """The page for viewing a single bug.""" @@ -94,12 +96,27 @@ class WebInterface: statuses=common_info['possible_statuses'], repository_name=common_info['repository_name']) + @cherrypy.expose def create(self, summary): """The view that handles the creation of a new bug.""" if summary.strip() != '': self.bd.new_bug(summary=summary).save() raise cherrypy.HTTPRedirect('/', status=302) + + + @cherrypy.expose + def comment(self, id, body): + """The view that handles adding a comment.""" + bug = self.bd.bug_from_uuid(id) + shortname = self.bd.bug_shortname(bug) + + if body.strip() != '': + bug.comment_root.new_reply(body=body) + bug.save() + + raise cherrypy.HTTPRedirect('/bug?id=%s' % (shortname,), status=302) + config = '/Users/sjl/Documents/cherryflavoredbugseverywhere/cfbe.config' bug_root = '/Users/sjl/Desktop/be/.be' diff --git a/static/style/cfbe.css b/static/style/cfbe.css index 55bf6b2..2ad25fc 100644 --- a/static/style/cfbe.css +++ b/static/style/cfbe.css @@ -45,4 +45,7 @@ h4.bug-comment-header { margin: 1.5em 0em 0em; } form#create-form { height: 3em; display: none; } form#create-form div.field { } form#create-form input#create-summary { width: 30em; font-weight: 700; } -form#create-form button#create-button { }
\ No newline at end of file +form#create-form button#create-button { } + +form#add-comment-form { display: none; margin-top: 1.5em; } +p#add-comment-link {margin-top: 1.5em; }
\ No newline at end of file diff --git a/templates/base.html b/templates/base.html index 40ec10f..c860e65 100644 --- a/templates/base.html +++ b/templates/base.html @@ -36,6 +36,12 @@ e.preventDefault(); }); + $('#add-comment').click(function(e) { + $('#add-comment-link').hide(); + $('#add-comment-form').fadeIn('fast'); + e.preventDefault(); + }); + $('table tr:odd').addClass('stripe'); }); </script> diff --git a/templates/bug.html b/templates/bug.html index ee359f7..2cdbb28 100644 --- a/templates/bug.html +++ b/templates/bug.html @@ -33,9 +33,22 @@ <h3>Comments</h3> {% for comment in bug.comments() %} <div class="bug-comment"> - <h4 class="bug-comment-header">{{ comment.From|e }} said:</h4> + <h4 class="bug-comment-header">{{ comment.From|striptags|e }} said:</h4> <p class="bug-comment-body">{{ comment.body|trim|e }}</p> <p class="bug-comment-footer">on {{ comment.time|datetimeformat }}</p> </div> {% endfor %} + <form id="add-comment-form" class="vertical" action="/comment" method="post"> + <fieldset> + <input type="hidden" name="id" value="{{ bug.uuid }}" /> + <div class="field"> + <label for="add-comment-body">Comment</label> + <textarea cols="60" rows="6" id="add-comment-body" name="body"></textarea> + </div> + <div class="buttons"> + <button type="submit">Submit</button> + </div> + </fieldset> + </form> + <p id="add-comment-link"><a href="" id="add-comment">+ Add a comment</a></p> {% endblock %}
\ No newline at end of file |