Index: rietveld/views.py =================================================================== --- rietveld/views.py (revision 81) +++ rietveld/views.py (working copy) @@ -186,6 +186,9 @@ class MiniPublishForm(forms.Form): + reviewers = forms.CharField(required=False, + max_length=1000, + widget=forms.TextInput(attrs={'size': 60})) send_mail = forms.BooleanField() message = forms.CharField(required=False, max_length=10000, @@ -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'] @@ -1002,7 +1010,7 @@ if len(addressees) > 1: # Keep it if sending only to yourself addressees.remove(my_email) else: - everyone = addressees + [my_email] + everyone = addressees details = _get_draft_details(request, comments) text = ((message.strip() + '\n\n' + details.strip())).strip() msg = models.Message(issue=issue,