Changeset View
Changeset View
Standalone View
Standalone View
src/applications/project/storage/PhabricatorProjectTrigger.php
| Show First 20 Lines • Show All 192 Lines • ▼ Show 20 Lines | foreach ($rules as $rule) { | ||||
| foreach ($rule->getDropEffects() as $effect) { | foreach ($rule->getDropEffects() as $effect) { | ||||
| $effects[] = $effect; | $effects[] = $effect; | ||||
| } | } | ||||
| } | } | ||||
| return $effects; | return $effects; | ||||
| } | } | ||||
| public function getRulesDescription() { | |||||
| $rules = $this->getTriggerRules(); | |||||
| if (!$rules) { | |||||
| return pht('Does nothing.'); | |||||
| } | |||||
| $things = array(); | |||||
| $count = count($rules); | |||||
| $limit = 3; | |||||
| if ($count > $limit) { | |||||
| $show_rules = array_slice($rules, 0, ($limit - 1)); | |||||
| } else { | |||||
| $show_rules = $rules; | |||||
| } | |||||
| foreach ($show_rules as $rule) { | |||||
| $things[] = $rule->getDescription(); | |||||
| } | |||||
| if ($count > $limit) { | |||||
| $things[] = pht( | |||||
| '(Applies %s more actions.)', | |||||
| new PhutilNumber($count - $limit)); | |||||
| } | |||||
| return implode("\n", $things); | |||||
| } | |||||
| public function newDropTransactions( | public function newDropTransactions( | ||||
| PhabricatorUser $viewer, | PhabricatorUser $viewer, | ||||
| PhabricatorProjectColumn $column, | PhabricatorProjectColumn $column, | ||||
| $object) { | $object) { | ||||
| $trigger_xactions = array(); | $trigger_xactions = array(); | ||||
| foreach ($this->getTriggerRules() as $rule) { | foreach ($this->getTriggerRules() as $rule) { | ||||
| $rule | $rule | ||||
| Show All 21 Lines | foreach ($this->getTriggerRules() as $rule) { | ||||
| foreach ($xactions as $xaction) { | foreach ($xactions as $xaction) { | ||||
| $trigger_xactions[] = $xaction; | $trigger_xactions[] = $xaction; | ||||
| } | } | ||||
| } | } | ||||
| return $trigger_xactions; | return $trigger_xactions; | ||||
| } | } | ||||
| public function getPreviewEffect() { | |||||
| $header = pht('Trigger: %s', $this->getDisplayName()); | |||||
| return id(new PhabricatorProjectDropEffect()) | |||||
| ->setIcon('fa-cogs') | |||||
| ->setColor('blue') | |||||
| ->setIsHeader(true) | |||||
| ->setContent($header); | |||||
| } | |||||
| /* -( PhabricatorApplicationTransactionInterface )------------------------- */ | /* -( PhabricatorApplicationTransactionInterface )------------------------- */ | ||||
| public function getApplicationTransactionEditor() { | public function getApplicationTransactionEditor() { | ||||
| return new PhabricatorProjectTriggerEditor(); | return new PhabricatorProjectTriggerEditor(); | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 52 Lines • Show Last 20 Lines | |||||