[ Index ] |
PHP Cross Reference of Phabricator |
[Summary view] [Print] [Text view]
1 <?php 2 3 final class PhabricatorDashboardPanelTransactionEditor 4 extends PhabricatorApplicationTransactionEditor { 5 6 public function getEditorApplicationClass() { 7 return 'PhabricatorDashboardApplication'; 8 } 9 10 public function getEditorObjectsDescription() { 11 return pht('Dashboard Panels'); 12 } 13 14 public function getTransactionTypes() { 15 $types = parent::getTransactionTypes(); 16 17 $types[] = PhabricatorTransactions::TYPE_VIEW_POLICY; 18 $types[] = PhabricatorTransactions::TYPE_EDIT_POLICY; 19 $types[] = PhabricatorTransactions::TYPE_EDGE; 20 21 $types[] = PhabricatorDashboardPanelTransaction::TYPE_NAME; 22 $types[] = PhabricatorDashboardPanelTransaction::TYPE_ARCHIVE; 23 24 return $types; 25 } 26 27 protected function getCustomTransactionOldValue( 28 PhabricatorLiskDAO $object, 29 PhabricatorApplicationTransaction $xaction) { 30 switch ($xaction->getTransactionType()) { 31 case PhabricatorDashboardPanelTransaction::TYPE_NAME: 32 if ($this->getIsNewObject()) { 33 return null; 34 } 35 return $object->getName(); 36 case PhabricatorDashboardPanelTransaction::TYPE_ARCHIVE: 37 return (int)$object->getIsArchived(); 38 } 39 40 return parent::getCustomTransactionOldValue($object, $xaction); 41 } 42 43 protected function getCustomTransactionNewValue( 44 PhabricatorLiskDAO $object, 45 PhabricatorApplicationTransaction $xaction) { 46 switch ($xaction->getTransactionType()) { 47 case PhabricatorDashboardPanelTransaction::TYPE_NAME: 48 return $xaction->getNewValue(); 49 case PhabricatorDashboardPanelTransaction::TYPE_ARCHIVE: 50 return (int)$xaction->getNewValue(); 51 } 52 return parent::getCustomTransactionNewValue($object, $xaction); 53 } 54 55 protected function applyCustomInternalTransaction( 56 PhabricatorLiskDAO $object, 57 PhabricatorApplicationTransaction $xaction) { 58 switch ($xaction->getTransactionType()) { 59 case PhabricatorDashboardPanelTransaction::TYPE_NAME: 60 $object->setName($xaction->getNewValue()); 61 return; 62 case PhabricatorDashboardPanelTransaction::TYPE_ARCHIVE: 63 $object->setIsArchived((int)$xaction->getNewValue()); 64 return; 65 case PhabricatorTransactions::TYPE_VIEW_POLICY: 66 $object->setViewPolicy($xaction->getNewValue()); 67 return; 68 case PhabricatorTransactions::TYPE_EDIT_POLICY: 69 $object->setEditPolicy($xaction->getNewValue()); 70 return; 71 case PhabricatorTransactions::TYPE_EDGE: 72 return; 73 } 74 75 return parent::applyCustomInternalTransaction($object, $xaction); 76 } 77 78 protected function applyCustomExternalTransaction( 79 PhabricatorLiskDAO $object, 80 PhabricatorApplicationTransaction $xaction) { 81 82 switch ($xaction->getTransactionType()) { 83 case PhabricatorDashboardPanelTransaction::TYPE_NAME: 84 case PhabricatorDashboardPanelTransaction::TYPE_ARCHIVE: 85 case PhabricatorTransactions::TYPE_VIEW_POLICY: 86 case PhabricatorTransactions::TYPE_EDIT_POLICY: 87 case PhabricatorTransactions::TYPE_EDGE: 88 return; 89 } 90 91 return parent::applyCustomExternalTransaction($object, $xaction); 92 } 93 94 protected function validateTransaction( 95 PhabricatorLiskDAO $object, 96 $type, 97 array $xactions) { 98 99 $errors = parent::validateTransaction($object, $type, $xactions); 100 101 switch ($type) { 102 case PhabricatorDashboardPanelTransaction::TYPE_NAME: 103 $missing = $this->validateIsEmptyTextField( 104 $object->getName(), 105 $xactions); 106 107 if ($missing) { 108 $error = new PhabricatorApplicationTransactionValidationError( 109 $type, 110 pht('Required'), 111 pht('Panel name is required.'), 112 nonempty(last($xactions), null)); 113 114 $error->setIsMissingFieldError(true); 115 $errors[] = $error; 116 } 117 break; 118 } 119 120 return $errors; 121 } 122 123 124 }
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 |