Use change owner name in non-reviewer newchange emails

If User-A CC's User-B to a change owned by User-C, then User-B will
receive a newchange email. However, since User-B is CC'd on the change
rather than added as a reviewer, the email would not include any new
reviewers. This type of newchange email expects the user initiating the
notification to be the owner and includes the text...

  [fromName] has uploaded this change for review.

Problematically, since User-A initiated the notification, it says that
User-A has uploaded a change, but User-A merely added somebody to the CC
list. It should attribute the change to the owner: User-C.

With this change, newchange emails use the owner's name in these cases
rather than whichever user initiated the notification.

Bug: Issue 4790
Change-Id: Iecadcb7b4642ef062fdc26db7208bdd932a4f96f
diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/change/ChangeIT.java b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/change/ChangeIT.java
index b4575ae..02d74bf 100644
--- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/change/ChangeIT.java
+++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/change/ChangeIT.java
@@ -793,7 +793,7 @@
     Message m = messages.get(0);
     assertThat(m.rcpt()).containsExactly(user.emailAddress);
     assertThat(m.body())
-        .contains(admin.fullName + " has uploaded a new change for review");
+        .contains(admin.fullName + " has uploaded this change for review");
     assertThat(m.body())
         .contains("Change subject: " + PushOneCommit.SUBJECT + "\n");
     assertMailFrom(m, admin.email);
diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/change/ChangeReviewersIT.java b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/change/ChangeReviewersIT.java
index c9cb06f..7c84d6a 100644
--- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/change/ChangeReviewersIT.java
+++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/change/ChangeReviewersIT.java
@@ -141,7 +141,7 @@
     assertThat(m.rcpt()).containsExactly(user.emailAddress);
     if (notesMigration.readChanges()) {
       assertThat(m.body())
-          .contains(admin.fullName + " has uploaded a new change for review.");
+          .contains(admin.fullName + " has uploaded this change for review.");
     } else {
       assertThat(m.body()).contains("Hello " + user.fullName + ",\n");
       assertThat(m.body()).contains("I'd like you to do a code review.");
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/mail/send/NewChangeSender.java b/gerrit-server/src/main/java/com/google/gerrit/server/mail/send/NewChangeSender.java
index c858b8e..b4d6d01 100644
--- a/gerrit-server/src/main/java/com/google/gerrit/server/mail/send/NewChangeSender.java
+++ b/gerrit-server/src/main/java/com/google/gerrit/server/mail/send/NewChangeSender.java
@@ -88,6 +88,7 @@
   @Override
   protected void setupSoyContext() {
     super.setupSoyContext();
+    soyContext.put("ownerName", getNameFor(change.getOwner()));
     soyContextEmailData.put("reviewerNames", getReviewerNames());
   }
 
diff --git a/gerrit-server/src/main/resources/com/google/gerrit/server/mail/NewChange.soy b/gerrit-server/src/main/resources/com/google/gerrit/server/mail/NewChange.soy
index 296f625..9f7429f 100644
--- a/gerrit-server/src/main/resources/com/google/gerrit/server/mail/NewChange.soy
+++ b/gerrit-server/src/main/resources/com/google/gerrit/server/mail/NewChange.soy
@@ -21,7 +21,7 @@
  * user submitting a new change for review.
  * @param change
  * @param email
- * @param fromName
+ * @param ownerName
  * @param patchSet
  * @param projectName
  */
@@ -52,7 +52,7 @@
       to review the following change.
     {/if}
   {else}
-    {$fromName} has uploaded a new change for review.
+    {$ownerName} has uploaded this change for review.
     {if $email.changeUrl} ( {$email.changeUrl}{/if}
   {/if}{\n}
 
diff --git a/gerrit-server/src/main/resources/com/google/gerrit/server/mail/NewChangeHtml.soy b/gerrit-server/src/main/resources/com/google/gerrit/server/mail/NewChangeHtml.soy
index eef3a7e..559bb26 100644
--- a/gerrit-server/src/main/resources/com/google/gerrit/server/mail/NewChangeHtml.soy
+++ b/gerrit-server/src/main/resources/com/google/gerrit/server/mail/NewChangeHtml.soy
@@ -19,6 +19,7 @@
 /**
  * @param email
  * @param fromName
+ * @param ownerName
  * @param patchSet
  * @param projectName
  */
@@ -34,7 +35,7 @@
       {/foreach}{sp}
       to <strong>review</strong> this change.
     {else}
-      {$fromName} uploaded this change for <strong>review</strong>.
+      {$ownerName} has uploaded this change for <strong>review</strong>.
     {/if}
   </p>