Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(52)

Unified Diff: rietveld/views.py

Issue 776: Allow reviewers to change the reviewers list (Closed) SVN Base: http://rietveld.googlecode.com/svn/trunk/
Patch Set: Automatically add current non-owner to reviewer list, remove duplicates in reviewer list Created 4 months, 4 weeks ago
Use n/p to move between diff chunks; N/P to move between comments. Please Sign in to add in-line comments.
Jump to:
View side by-side-diff with in-line comments
Download patch
« no previous file | templates/publish.html » ('j') | Expand Comments ('e') | Collapse Comments ('c') | Hide Comments ('s')
Index: rietveld/views.py
===================================================================
--- rietveld/views.py (revision 81)
+++ rietveld/views.py (working copy)
@@ -27,6 +27,7 @@
import random
import logging
import binascii
+import sets
GvR 2008/05/11 19:20:49 This is Python 2.5, it has a built-in set type. (E
# AppEngine imports
from google.appengine.api import mail
@@ -187,6 +188,9 @@
class MiniPublishForm(forms.Form):
send_mail = forms.BooleanField()
+ reviewers = forms.CharField(required=False,
+ max_length=1000,
+ widget=forms.TextInput(attrs={'size': 60}))
message = forms.CharField(required=False,
max_length=10000,
widget=forms.Textarea(attrs={'cols': 60}))
@@ -567,7 +571,7 @@
def _get_reviewers(form):
"""Helper to return the list of reviewers, or None for error."""
- reviewers = []
+ reviewers = sets.Set()
raw_reviewers = form.cleaned_data.get('reviewers')
if raw_reviewers:
for reviewer in raw_reviewers.split(','):
@@ -583,8 +587,8 @@
except db.BadValueError, err:
form.errors['reviewers'] = [unicode(err)]
return None
- reviewers.append(reviewer)
- return reviewers
+ reviewers.add(reviewer)
+ return list(reviewers)
GvR 2008/05/11 19:20:49 I'd prefer to keep reviewers in the order that the
@@ -942,6 +946,9 @@
else:
form_class = MiniPublishForm
if request.method != 'POST':
+ if request.user != issue.owner and (not request.user.email()
+ in issue.reviewers):
GvR 2008/05/11 19:20:49 You can use 'not in' for the latter test.
+ issue.reviewers.append(request.user.email())
GvR 2008/05/11 19:20:49 I wouldn't assign to issue.reviewers here, since y
form = form_class(initial={'subject': issue.subject,
'reviewers': ', '.join(issue.reviewers),
'send_mail': True,
@@ -960,6 +967,7 @@
issue.reviewers = reviewers
else:
subject = issue.subject
+ issue.reviewers = reviewers
tbd.append(issue) # To update the last modified time
message = form.cleaned_data['message'].replace('\r\n', '\n')
send_mail = form.cleaned_data['send_mail']
« no previous file | templates/publish.html » ('j')

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld r338