[ Index ] |
PHP Cross Reference of Phabricator |
[Summary view] [Print] [Text view]
1 <?php 2 3 final class DifferentialProjectReviewersField 4 extends DifferentialCustomField { 5 6 public function getFieldKey() { 7 return 'differential:project-reviewers'; 8 } 9 10 public function getFieldName() { 11 return pht('Project Reviewers'); 12 } 13 14 public function getFieldDescription() { 15 return pht('Display project reviewers.'); 16 } 17 18 public function shouldAppearInPropertyView() { 19 return true; 20 } 21 22 public function canDisableField() { 23 return false; 24 } 25 26 public function renderPropertyViewLabel() { 27 return $this->getFieldName(); 28 } 29 30 public function getRequiredHandlePHIDsForPropertyView() { 31 return mpull($this->getProjectReviewers(), 'getReviewerPHID'); 32 } 33 34 public function renderPropertyViewValue(array $handles) { 35 $reviewers = $this->getProjectReviewers(); 36 if (!$reviewers) { 37 return null; 38 } 39 40 $view = id(new DifferentialReviewersView()) 41 ->setUser($this->getViewer()) 42 ->setReviewers($reviewers) 43 ->setHandles($handles); 44 45 // TODO: Active diff stuff. 46 47 return $view; 48 } 49 50 private function getProjectReviewers() { 51 $reviewers = array(); 52 foreach ($this->getObject()->getReviewerStatus() as $reviewer) { 53 if (!$reviewer->isUser()) { 54 $reviewers[] = $reviewer; 55 } 56 } 57 return $reviewers; 58 } 59 60 public function getProTips() { 61 return array( 62 pht( 63 'You can add a project as a subscriber or reviewer by writing '. 64 '"#projectname" in the appropriate field.'), 65 ); 66 } 67 68 }
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 |