Differential D17954 Diff 43187 src/applications/project/editor/PhabricatorProjectTransactionEditor.php
Changeset View
Changeset View
Standalone View
Standalone View
src/applications/project/editor/PhabricatorProjectTransactionEditor.php
Show All 24 Lines | final class PhabricatorProjectTransactionEditor | ||||
public function getTransactionTypes() { | public function getTransactionTypes() { | ||||
$types = parent::getTransactionTypes(); | $types = parent::getTransactionTypes(); | ||||
$types[] = PhabricatorTransactions::TYPE_EDGE; | $types[] = PhabricatorTransactions::TYPE_EDGE; | ||||
$types[] = PhabricatorTransactions::TYPE_VIEW_POLICY; | $types[] = PhabricatorTransactions::TYPE_VIEW_POLICY; | ||||
$types[] = PhabricatorTransactions::TYPE_EDIT_POLICY; | $types[] = PhabricatorTransactions::TYPE_EDIT_POLICY; | ||||
$types[] = PhabricatorTransactions::TYPE_JOIN_POLICY; | $types[] = PhabricatorTransactions::TYPE_JOIN_POLICY; | ||||
$types[] = PhabricatorProjectTransaction::TYPE_IMAGE; | |||||
$types[] = PhabricatorProjectTransaction::TYPE_ICON; | $types[] = PhabricatorProjectTransaction::TYPE_ICON; | ||||
$types[] = PhabricatorProjectTransaction::TYPE_COLOR; | $types[] = PhabricatorProjectTransaction::TYPE_COLOR; | ||||
$types[] = PhabricatorProjectTransaction::TYPE_LOCKED; | $types[] = PhabricatorProjectTransaction::TYPE_LOCKED; | ||||
$types[] = PhabricatorProjectTransaction::TYPE_PARENT; | $types[] = PhabricatorProjectTransaction::TYPE_PARENT; | ||||
$types[] = PhabricatorProjectTransaction::TYPE_MILESTONE; | $types[] = PhabricatorProjectTransaction::TYPE_MILESTONE; | ||||
$types[] = PhabricatorProjectTransaction::TYPE_HASWORKBOARD; | $types[] = PhabricatorProjectTransaction::TYPE_HASWORKBOARD; | ||||
$types[] = PhabricatorProjectTransaction::TYPE_DEFAULT_SORT; | $types[] = PhabricatorProjectTransaction::TYPE_DEFAULT_SORT; | ||||
$types[] = PhabricatorProjectTransaction::TYPE_DEFAULT_FILTER; | $types[] = PhabricatorProjectTransaction::TYPE_DEFAULT_FILTER; | ||||
$types[] = PhabricatorProjectTransaction::TYPE_BACKGROUND; | $types[] = PhabricatorProjectTransaction::TYPE_BACKGROUND; | ||||
return $types; | return $types; | ||||
} | } | ||||
protected function getCustomTransactionOldValue( | protected function getCustomTransactionOldValue( | ||||
PhabricatorLiskDAO $object, | PhabricatorLiskDAO $object, | ||||
PhabricatorApplicationTransaction $xaction) { | PhabricatorApplicationTransaction $xaction) { | ||||
switch ($xaction->getTransactionType()) { | switch ($xaction->getTransactionType()) { | ||||
case PhabricatorProjectTransaction::TYPE_IMAGE: | |||||
return $object->getProfileImagePHID(); | |||||
case PhabricatorProjectTransaction::TYPE_ICON: | case PhabricatorProjectTransaction::TYPE_ICON: | ||||
return $object->getIcon(); | return $object->getIcon(); | ||||
case PhabricatorProjectTransaction::TYPE_COLOR: | case PhabricatorProjectTransaction::TYPE_COLOR: | ||||
return $object->getColor(); | return $object->getColor(); | ||||
case PhabricatorProjectTransaction::TYPE_LOCKED: | case PhabricatorProjectTransaction::TYPE_LOCKED: | ||||
return (int)$object->getIsMembershipLocked(); | return (int)$object->getIsMembershipLocked(); | ||||
case PhabricatorProjectTransaction::TYPE_HASWORKBOARD: | case PhabricatorProjectTransaction::TYPE_HASWORKBOARD: | ||||
return (int)$object->getHasWorkboard(); | return (int)$object->getHasWorkboard(); | ||||
Show All 11 Lines | protected function getCustomTransactionOldValue( | ||||
return parent::getCustomTransactionOldValue($object, $xaction); | return parent::getCustomTransactionOldValue($object, $xaction); | ||||
} | } | ||||
protected function getCustomTransactionNewValue( | protected function getCustomTransactionNewValue( | ||||
PhabricatorLiskDAO $object, | PhabricatorLiskDAO $object, | ||||
PhabricatorApplicationTransaction $xaction) { | PhabricatorApplicationTransaction $xaction) { | ||||
switch ($xaction->getTransactionType()) { | switch ($xaction->getTransactionType()) { | ||||
case PhabricatorProjectTransaction::TYPE_IMAGE: | |||||
case PhabricatorProjectTransaction::TYPE_ICON: | case PhabricatorProjectTransaction::TYPE_ICON: | ||||
case PhabricatorProjectTransaction::TYPE_COLOR: | case PhabricatorProjectTransaction::TYPE_COLOR: | ||||
case PhabricatorProjectTransaction::TYPE_LOCKED: | case PhabricatorProjectTransaction::TYPE_LOCKED: | ||||
case PhabricatorProjectTransaction::TYPE_PARENT: | case PhabricatorProjectTransaction::TYPE_PARENT: | ||||
case PhabricatorProjectTransaction::TYPE_MILESTONE: | case PhabricatorProjectTransaction::TYPE_MILESTONE: | ||||
case PhabricatorProjectTransaction::TYPE_DEFAULT_SORT: | case PhabricatorProjectTransaction::TYPE_DEFAULT_SORT: | ||||
case PhabricatorProjectTransaction::TYPE_DEFAULT_FILTER: | case PhabricatorProjectTransaction::TYPE_DEFAULT_FILTER: | ||||
return $xaction->getNewValue(); | return $xaction->getNewValue(); | ||||
Show All 10 Lines | protected function getCustomTransactionNewValue( | ||||
return parent::getCustomTransactionNewValue($object, $xaction); | return parent::getCustomTransactionNewValue($object, $xaction); | ||||
} | } | ||||
protected function applyCustomInternalTransaction( | protected function applyCustomInternalTransaction( | ||||
PhabricatorLiskDAO $object, | PhabricatorLiskDAO $object, | ||||
PhabricatorApplicationTransaction $xaction) { | PhabricatorApplicationTransaction $xaction) { | ||||
switch ($xaction->getTransactionType()) { | switch ($xaction->getTransactionType()) { | ||||
case PhabricatorProjectTransaction::TYPE_IMAGE: | |||||
$object->setProfileImagePHID($xaction->getNewValue()); | |||||
return; | |||||
case PhabricatorProjectTransaction::TYPE_ICON: | case PhabricatorProjectTransaction::TYPE_ICON: | ||||
$object->setIcon($xaction->getNewValue()); | $object->setIcon($xaction->getNewValue()); | ||||
return; | return; | ||||
case PhabricatorProjectTransaction::TYPE_COLOR: | case PhabricatorProjectTransaction::TYPE_COLOR: | ||||
$object->setColor($xaction->getNewValue()); | $object->setColor($xaction->getNewValue()); | ||||
return; | return; | ||||
case PhabricatorProjectTransaction::TYPE_LOCKED: | case PhabricatorProjectTransaction::TYPE_LOCKED: | ||||
$object->setIsMembershipLocked($xaction->getNewValue()); | $object->setIsMembershipLocked($xaction->getNewValue()); | ||||
Show All 26 Lines | final class PhabricatorProjectTransactionEditor | ||||
protected function applyCustomExternalTransaction( | protected function applyCustomExternalTransaction( | ||||
PhabricatorLiskDAO $object, | PhabricatorLiskDAO $object, | ||||
PhabricatorApplicationTransaction $xaction) { | PhabricatorApplicationTransaction $xaction) { | ||||
$old = $xaction->getOldValue(); | $old = $xaction->getOldValue(); | ||||
$new = $xaction->getNewValue(); | $new = $xaction->getNewValue(); | ||||
switch ($xaction->getTransactionType()) { | switch ($xaction->getTransactionType()) { | ||||
case PhabricatorProjectTransaction::TYPE_IMAGE: | |||||
case PhabricatorProjectTransaction::TYPE_ICON: | case PhabricatorProjectTransaction::TYPE_ICON: | ||||
case PhabricatorProjectTransaction::TYPE_COLOR: | case PhabricatorProjectTransaction::TYPE_COLOR: | ||||
case PhabricatorProjectTransaction::TYPE_LOCKED: | case PhabricatorProjectTransaction::TYPE_LOCKED: | ||||
case PhabricatorProjectTransaction::TYPE_PARENT: | case PhabricatorProjectTransaction::TYPE_PARENT: | ||||
case PhabricatorProjectTransaction::TYPE_MILESTONE: | case PhabricatorProjectTransaction::TYPE_MILESTONE: | ||||
case PhabricatorProjectTransaction::TYPE_HASWORKBOARD: | case PhabricatorProjectTransaction::TYPE_HASWORKBOARD: | ||||
case PhabricatorProjectTransaction::TYPE_DEFAULT_SORT: | case PhabricatorProjectTransaction::TYPE_DEFAULT_SORT: | ||||
case PhabricatorProjectTransaction::TYPE_DEFAULT_FILTER: | case PhabricatorProjectTransaction::TYPE_DEFAULT_FILTER: | ||||
▲ Show 20 Lines • Show All 169 Lines • ▼ Show 20 Lines | final class PhabricatorProjectTransactionEditor | ||||
protected function requireCapabilities( | protected function requireCapabilities( | ||||
PhabricatorLiskDAO $object, | PhabricatorLiskDAO $object, | ||||
PhabricatorApplicationTransaction $xaction) { | PhabricatorApplicationTransaction $xaction) { | ||||
switch ($xaction->getTransactionType()) { | switch ($xaction->getTransactionType()) { | ||||
case PhabricatorProjectNameTransaction::TRANSACTIONTYPE: | case PhabricatorProjectNameTransaction::TRANSACTIONTYPE: | ||||
case PhabricatorProjectStatusTransaction::TRANSACTIONTYPE: | case PhabricatorProjectStatusTransaction::TRANSACTIONTYPE: | ||||
case PhabricatorProjectTransaction::TYPE_IMAGE: | case PhabricatorProjectImageTransaction::TRANSACTIONTYPE: | ||||
case PhabricatorProjectTransaction::TYPE_ICON: | case PhabricatorProjectTransaction::TYPE_ICON: | ||||
case PhabricatorProjectTransaction::TYPE_COLOR: | case PhabricatorProjectTransaction::TYPE_COLOR: | ||||
PhabricatorPolicyFilter::requireCapability( | PhabricatorPolicyFilter::requireCapability( | ||||
$this->requireActor(), | $this->requireActor(), | ||||
$object, | $object, | ||||
PhabricatorPolicyCapability::CAN_EDIT); | PhabricatorPolicyCapability::CAN_EDIT); | ||||
return; | return; | ||||
case PhabricatorProjectTransaction::TYPE_LOCKED: | case PhabricatorProjectTransaction::TYPE_LOCKED: | ||||
▲ Show 20 Lines • Show All 122 Lines • ▼ Show 20 Lines | protected function shouldPublishFeedStory( | ||||
array $xactions) { | array $xactions) { | ||||
return true; | return true; | ||||
} | } | ||||
protected function supportsSearch() { | protected function supportsSearch() { | ||||
return true; | return true; | ||||
} | } | ||||
protected function extractFilePHIDsFromCustomTransaction( | |||||
PhabricatorLiskDAO $object, | |||||
PhabricatorApplicationTransaction $xaction) { | |||||
switch ($xaction->getTransactionType()) { | |||||
case PhabricatorProjectTransaction::TYPE_IMAGE: | |||||
$new = $xaction->getNewValue(); | |||||
if ($new) { | |||||
return array($new); | |||||
} | |||||
break; | |||||
} | |||||
return parent::extractFilePHIDsFromCustomTransaction($object, $xaction); | |||||
} | |||||
protected function applyFinalEffects( | protected function applyFinalEffects( | ||||
PhabricatorLiskDAO $object, | PhabricatorLiskDAO $object, | ||||
array $xactions) { | array $xactions) { | ||||
$materialize = false; | $materialize = false; | ||||
$new_parent = null; | $new_parent = null; | ||||
foreach ($xactions as $xaction) { | foreach ($xactions as $xaction) { | ||||
switch ($xaction->getTransactionType()) { | switch ($xaction->getTransactionType()) { | ||||
▲ Show 20 Lines • Show All 247 Lines • Show Last 20 Lines |