diff --git a/src/applications/differential/customfield/DifferentialRepositoryField.php b/src/applications/differential/customfield/DifferentialRepositoryField.php --- a/src/applications/differential/customfield/DifferentialRepositoryField.php +++ b/src/applications/differential/customfield/DifferentialRepositoryField.php @@ -20,107 +20,6 @@ return $revision->getRepositoryPHID(); } - protected function writeValueToRevision( - DifferentialRevision $revision, - $value) { - $revision->setRepositoryPHID($value); - } - - public function readValueFromRequest(AphrontRequest $request) { - $phids = $request->getArr($this->getFieldKey()); - $first = head($phids); - $this->setValue(nonempty($first, null)); - } - - public function renderEditControl(array $handles) { - if ($this->getValue()) { - $value = array($this->getValue()); - } else { - $value = array(); - } - - return id(new AphrontFormTokenizerControl()) - ->setUser($this->getViewer()) - ->setName($this->getFieldKey()) - ->setDatasource(new DiffusionRepositoryDatasource()) - ->setValue($value) - ->setError($this->getFieldError()) - ->setLabel($this->getFieldName()) - ->setLimit(1); - } - - public function getApplicationTransactionRequiredHandlePHIDs( - PhabricatorApplicationTransaction $xaction) { - - $old = $xaction->getOldValue(); - $new = $xaction->getNewValue(); - - $phids = array(); - if ($old) { - $phids[] = $old; - } - if ($new) { - $phids[] = $new; - } - - return $phids; - } - - public function getApplicationTransactionTitle( - PhabricatorApplicationTransaction $xaction) { - $author_phid = $xaction->getAuthorPHID(); - $old = $xaction->getOldValue(); - $new = $xaction->getNewValue(); - - if ($old && $new) { - return pht( - '%s changed the repository for this revision from %s to %s.', - $xaction->renderHandleLink($author_phid), - $xaction->renderHandleLink($old), - $xaction->renderHandleLink($new)); - } else if ($new) { - return pht( - '%s set the repository for this revision to %s.', - $xaction->renderHandleLink($author_phid), - $xaction->renderHandleLink($new)); - } else { - return pht( - '%s removed %s as the repository for this revision.', - $xaction->renderHandleLink($author_phid), - $xaction->renderHandleLink($old)); - } - } - - public function getApplicationTransactionTitleForFeed( - PhabricatorApplicationTransaction $xaction) { - - $object_phid = $xaction->getObjectPHID(); - $author_phid = $xaction->getAuthorPHID(); - $old = $xaction->getOldValue(); - $new = $xaction->getNewValue(); - - if ($old && $new) { - return pht( - '%s updated the repository for %s from %s to %s.', - $xaction->renderHandleLink($author_phid), - $xaction->renderHandleLink($object_phid), - $xaction->renderHandleLink($old), - $xaction->renderHandleLink($new)); - } else if ($new) { - return pht( - '%s set the repository for %s to %s.', - $xaction->renderHandleLink($author_phid), - $xaction->renderHandleLink($object_phid), - $xaction->renderHandleLink($new)); - } else { - return pht( - '%s removed the repository for %s. (Repository was %s.)', - $xaction->renderHandleLink($author_phid), - $xaction->renderHandleLink($object_phid), - $xaction->renderHandleLink($old)); - } - } - public function shouldAppearInPropertyView() { return true; } diff --git a/src/applications/differential/storage/DifferentialTransaction.php b/src/applications/differential/storage/DifferentialTransaction.php --- a/src/applications/differential/storage/DifferentialTransaction.php +++ b/src/applications/differential/storage/DifferentialTransaction.php @@ -37,6 +37,8 @@ return new DifferentialRevisionTitleTransaction(); case 'differential:test-plan': return new DifferentialRevisionTestPlanTransaction(); + case 'differential:repository': + return new DifferentialRevisionRepositoryTransaction(); } }