diff options
author | Frederic Guillot <fred@kanboard.net> | 2016-07-02 15:45:55 -0400 |
---|---|---|
committer | Frederic Guillot <fred@kanboard.net> | 2016-07-02 15:45:55 -0400 |
commit | 8e56148a6dda1f6b1a78a759e69e600b79bdddd2 (patch) | |
tree | 538d0704bae9a7baab1a8a6de2abb646da31bdac /app/Model/TaskRecurrenceModel.php | |
parent | b7ac354e83af122e94cec1f9306aca6355a02a39 (diff) |
Make sure that tags are duplicated for recurring tasks
Diffstat (limited to 'app/Model/TaskRecurrenceModel.php')
-rw-r--r-- | app/Model/TaskRecurrenceModel.php | 62 |
1 files changed, 61 insertions, 1 deletions
diff --git a/app/Model/TaskRecurrenceModel.php b/app/Model/TaskRecurrenceModel.php index a5f2ab90..ffe43f8c 100644 --- a/app/Model/TaskRecurrenceModel.php +++ b/app/Model/TaskRecurrenceModel.php @@ -14,6 +14,64 @@ use DateTime; class TaskRecurrenceModel extends TaskDuplicationModel { /** + * Return the list user selectable recurrence status + * + * @access public + * @return array + */ + public function getRecurrenceStatusList() + { + return array( + TaskModel::RECURRING_STATUS_NONE => t('No'), + TaskModel::RECURRING_STATUS_PENDING => t('Yes'), + ); + } + + /** + * Return the list recurrence triggers + * + * @access public + * @return array + */ + public function getRecurrenceTriggerList() + { + return array( + TaskModel::RECURRING_TRIGGER_FIRST_COLUMN => t('When task is moved from first column'), + TaskModel::RECURRING_TRIGGER_LAST_COLUMN => t('When task is moved to last column'), + TaskModel::RECURRING_TRIGGER_CLOSE => t('When task is closed'), + ); + } + + /** + * Return the list options to calculate recurrence due date + * + * @access public + * @return array + */ + public function getRecurrenceBasedateList() + { + return array( + TaskModel::RECURRING_BASEDATE_DUEDATE => t('Existing due date'), + TaskModel::RECURRING_BASEDATE_TRIGGERDATE => t('Action date'), + ); + } + + /** + * Return the list recurrence timeframes + * + * @access public + * @return array + */ + public function getRecurrenceTimeframeList() + { + return array( + TaskModel::RECURRING_TIMEFRAME_DAYS => t('Day(s)'), + TaskModel::RECURRING_TIMEFRAME_MONTHS => t('Month(s)'), + TaskModel::RECURRING_TIMEFRAME_YEARS => t('Year(s)'), + ); + } + + /** * Duplicate recurring task * * @access public @@ -31,7 +89,9 @@ class TaskRecurrenceModel extends TaskDuplicationModel $recurring_task_id = $this->save($task_id, $values); - if ($recurring_task_id > 0) { + if ($recurring_task_id !== false) { + $this->tagDuplicationModel->duplicateTaskTags($task_id, $recurring_task_id); + $parent_update = $this->db ->table(TaskModel::TABLE) ->eq('id', $task_id) |