[ Index ] |
PHP Cross Reference of Phabricator |
[Summary view] [Print] [Text view]
1 <?php 2 3 final class DifferentialSummaryField 4 extends DifferentialCoreCustomField { 5 6 public function getFieldKey() { 7 return 'differential:summary'; 8 } 9 10 public function getFieldKeyForConduit() { 11 return 'summary'; 12 } 13 14 public function getFieldName() { 15 return pht('Summary'); 16 } 17 18 public function getFieldDescription() { 19 return pht('Stores a summary of the revision.'); 20 } 21 22 protected function readValueFromRevision( 23 DifferentialRevision $revision) { 24 if (!$revision->getID()) { 25 return null; 26 } 27 return $revision->getSummary(); 28 } 29 30 protected function writeValueToRevision( 31 DifferentialRevision $revision, 32 $value) { 33 $revision->setSummary($value); 34 } 35 36 public function readValueFromRequest(AphrontRequest $request) { 37 $this->setValue($request->getStr($this->getFieldKey())); 38 } 39 40 public function renderEditControl(array $handles) { 41 return id(new PhabricatorRemarkupControl()) 42 ->setUser($this->getViewer()) 43 ->setName($this->getFieldKey()) 44 ->setValue($this->getValue()) 45 ->setError($this->getFieldError()) 46 ->setLabel($this->getFieldName()); 47 } 48 49 public function getApplicationTransactionTitle( 50 PhabricatorApplicationTransaction $xaction) { 51 $author_phid = $xaction->getAuthorPHID(); 52 $old = $xaction->getOldValue(); 53 $new = $xaction->getNewValue(); 54 55 return pht( 56 '%s updated the summary for this revision.', 57 $xaction->renderHandleLink($author_phid)); 58 } 59 60 public function getApplicationTransactionTitleForFeed( 61 PhabricatorApplicationTransaction $xaction, 62 PhabricatorFeedStory $story) { 63 64 $object_phid = $xaction->getObjectPHID(); 65 $author_phid = $xaction->getAuthorPHID(); 66 $old = $xaction->getOldValue(); 67 $new = $xaction->getNewValue(); 68 69 return pht( 70 '%s updated the summary for %s.', 71 $xaction->renderHandleLink($author_phid), 72 $xaction->renderHandleLink($object_phid)); 73 } 74 75 public function getApplicationTransactionHasChangeDetails( 76 PhabricatorApplicationTransaction $xaction) { 77 return true; 78 } 79 80 public function getApplicationTransactionChangeDetails( 81 PhabricatorApplicationTransaction $xaction, 82 PhabricatorUser $viewer) { 83 return $xaction->renderTextCorpusChangeDetails( 84 $viewer, 85 $xaction->getOldValue(), 86 $xaction->getNewValue()); 87 } 88 89 public function shouldHideInApplicationTransactions( 90 PhabricatorApplicationTransaction $xaction) { 91 return ($xaction->getOldValue() === null); 92 } 93 94 public function shouldAppearInGlobalSearch() { 95 return true; 96 } 97 98 public function updateAbstractDocument( 99 PhabricatorSearchAbstractDocument $document) { 100 if (strlen($this->getValue())) { 101 $document->addField('body', $this->getValue()); 102 } 103 } 104 105 public function shouldAppearInPropertyView() { 106 return true; 107 } 108 109 public function renderPropertyViewLabel() { 110 return $this->getFieldName(); 111 } 112 113 public function getStyleForPropertyView() { 114 return 'block'; 115 } 116 117 public function getIconForPropertyView() { 118 return PHUIPropertyListView::ICON_SUMMARY; 119 } 120 121 public function renderPropertyViewValue(array $handles) { 122 if (!strlen($this->getValue())) { 123 return null; 124 } 125 126 return PhabricatorMarkupEngine::renderOneObject( 127 id(new PhabricatorMarkupOneOff()) 128 ->setPreserveLinebreaks(true) 129 ->setContent($this->getValue()), 130 'default', 131 $this->getViewer()); 132 } 133 134 public function getApplicationTransactionRemarkupBlocks( 135 PhabricatorApplicationTransaction $xaction) { 136 return array($xaction->getNewValue()); 137 } 138 139 public function shouldAppearInCommitMessage() { 140 return true; 141 } 142 143 public function shouldAppearInCommitMessageTemplate() { 144 return true; 145 } 146 147 public function shouldOverwriteWhenCommitMessageIsEdited() { 148 return true; 149 } 150 151 public function shouldAppearInTransactionMail() { 152 return true; 153 } 154 155 public function updateTransactionMailBody( 156 PhabricatorMetaMTAMailBody $body, 157 PhabricatorApplicationTransactionEditor $editor, 158 array $xactions) { 159 160 if (!$editor->getIsNewObject()) { 161 return; 162 } 163 164 $summary = $this->getValue(); 165 if (!strlen(trim($summary))) { 166 return; 167 } 168 169 $body->addTextSection(pht('REVISION SUMMARY'), $summary); 170 } 171 172 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Sun Nov 30 09:20:46 2014 | Cross-referenced by PHPXref 0.7.1 |