diff --git a/src/applications/differential/editor/DifferentialTransactionEditor.php b/src/applications/differential/editor/DifferentialTransactionEditor.php --- a/src/applications/differential/editor/DifferentialTransactionEditor.php +++ b/src/applications/differential/editor/DifferentialTransactionEditor.php @@ -700,20 +700,26 @@ ->addHeader('Thread-Topic', $thread_topic); } - protected function buildMailBody( + protected function getTransactionsForMail( PhabricatorLiskDAO $object, array $xactions) { - - $viewer = $this->requireActor(); - // If this is the first time we're sending mail about this revision, we // generate mail for all prior transactions, not just whatever is being // applied now. This gets the "added reviewers" lines and other relevant // information into the mail. if ($this->isFirstBroadcast()) { - $xactions = $this->loadUnbroadcastTransactions($object); + return $this->loadUnbroadcastTransactions($object); } + return $xactions; + } + + protected function buildMailBody( + PhabricatorLiskDAO $object, + array $xactions) { + + $viewer = $this->requireActor(); + $body = new PhabricatorMetaMTAMailBody(); $body->setViewer($this->requireActor()); diff --git a/src/applications/transactions/editor/PhabricatorApplicationTransactionEditor.php b/src/applications/transactions/editor/PhabricatorApplicationTransactionEditor.php --- a/src/applications/transactions/editor/PhabricatorApplicationTransactionEditor.php +++ b/src/applications/transactions/editor/PhabricatorApplicationTransactionEditor.php @@ -2546,6 +2546,12 @@ return $messages; } + protected function getTransactionsForMail( + PhabricatorLiskDAO $object, + array $xactions) { + return $xactions; + } + private function buildMailForTarget( PhabricatorLiskDAO $object, array $xactions, @@ -2566,17 +2572,19 @@ return null; } + $mail_xactions = $this->getTransactionsForMail($object, $xactions); + $mail = $this->buildMailTemplate($object); - $body = $this->buildMailBody($object, $xactions); + $body = $this->buildMailBody($object, $mail_xactions); - $mail_tags = $this->getMailTags($object, $xactions); - $action = $this->getMailAction($object, $xactions); + $mail_tags = $this->getMailTags($object, $mail_xactions); + $action = $this->getMailAction($object, $mail_xactions); if (PhabricatorEnv::getEnvConfig('metamta.email-preferences')) { $this->addEmailPreferenceSectionToMailBody( $body, $object, - $xactions); + $mail_xactions); } $mail