diff options
author | Frederic Guillot <fred@kanboard.net> | 2016-01-16 21:06:36 -0500 |
---|---|---|
committer | Frederic Guillot <fred@kanboard.net> | 2016-01-16 21:06:36 -0500 |
commit | 6a7b8ec60f265413ca88878dba6180456257d370 (patch) | |
tree | 5b36bf3122d6884cb09b66e623e28768e92ed9ba /app/Subscriber/RecurringTaskSubscriber.php | |
parent | 6a0895ef765ea7b83df02bb9789fda7415dee9a5 (diff) |
Make sure that some event subscribers are not executed multiple times
Diffstat (limited to 'app/Subscriber/RecurringTaskSubscriber.php')
-rw-r--r-- | app/Subscriber/RecurringTaskSubscriber.php | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/app/Subscriber/RecurringTaskSubscriber.php b/app/Subscriber/RecurringTaskSubscriber.php index b03ffcf8..a300483d 100644 --- a/app/Subscriber/RecurringTaskSubscriber.php +++ b/app/Subscriber/RecurringTaskSubscriber.php @@ -6,18 +6,20 @@ use Kanboard\Event\TaskEvent; use Kanboard\Model\Task; use Symfony\Component\EventDispatcher\EventSubscriberInterface; -class RecurringTaskSubscriber extends \Kanboard\Core\Base implements EventSubscriberInterface +class RecurringTaskSubscriber extends BaseSubscriber implements EventSubscriberInterface { public static function getSubscribedEvents() { return array( - Task::EVENT_MOVE_COLUMN => array('onMove', 0), - Task::EVENT_CLOSE => array('onClose', 0), + Task::EVENT_MOVE_COLUMN => 'onMove', + Task::EVENT_CLOSE => 'onClose', ); } public function onMove(TaskEvent $event) { + $this->logger->debug('Subscriber executed: '.__CLASS__.'::'.__METHOD__); + if ($event['recurrence_status'] == Task::RECURRING_STATUS_PENDING) { if ($event['recurrence_trigger'] == Task::RECURRING_TRIGGER_FIRST_COLUMN && $this->board->getFirstColumn($event['project_id']) == $event['src_column_id']) { $this->taskDuplication->duplicateRecurringTask($event['task_id']); @@ -29,6 +31,8 @@ class RecurringTaskSubscriber extends \Kanboard\Core\Base implements EventSubscr public function onClose(TaskEvent $event) { + $this->logger->debug('Subscriber executed: '.__CLASS__.'::'.__METHOD__); + if ($event['recurrence_status'] == Task::RECURRING_STATUS_PENDING && $event['recurrence_trigger'] == Task::RECURRING_TRIGGER_CLOSE) { $this->taskDuplication->duplicateRecurringTask($event['task_id']); } |