Index: rietveld/views.py =================================================================== --- rietveld/views.py (revision 81) +++ rietveld/views.py (working copy) @@ -187,6 +187,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})) @@ -572,7 +575,7 @@ if raw_reviewers: for reviewer in raw_reviewers.split(','): reviewer = reviewer.strip() - if reviewer: + if reviewer and reviewer not in reviewers: try: reviewer = db.Email(reviewer) if reviewer.count('@') != 1: @@ -942,8 +945,12 @@ else: form_class = MiniPublishForm if request.method != 'POST': + reviewers = issue.reviewers[:] + if request.user != issue.owner and (request.user.email() + not in issue.reviewers): + reviewers.append(request.user.email()) form = form_class(initial={'subject': issue.subject, - 'reviewers': ', '.join(issue.reviewers), + 'reviewers': ', '.join(reviewers), 'send_mail': True, }) return respond(request, 'publish.html', {'form': form, 'issue': issue}) @@ -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']