Make sure that tags are duplicated for recurring tasks
This commit is contained in:
@@ -107,9 +107,9 @@ class BoardTooltipController extends BaseController
|
||||
|
||||
$this->response->html($this->template->render('task_recurrence/info', array(
|
||||
'task' => $task,
|
||||
'recurrence_trigger_list' => $this->taskModel->getRecurrenceTriggerList(),
|
||||
'recurrence_timeframe_list' => $this->taskModel->getRecurrenceTimeframeList(),
|
||||
'recurrence_basedate_list' => $this->taskModel->getRecurrenceBasedateList(),
|
||||
'recurrence_trigger_list' => $this->taskRecurrenceModel->getRecurrenceTriggerList(),
|
||||
'recurrence_timeframe_list' => $this->taskRecurrenceModel->getRecurrenceTimeframeList(),
|
||||
'recurrence_basedate_list' => $this->taskRecurrenceModel->getRecurrenceBasedateList(),
|
||||
)));
|
||||
}
|
||||
|
||||
|
||||
@@ -31,10 +31,10 @@ class TaskRecurrenceController extends BaseController
|
||||
'values' => $values,
|
||||
'errors' => $errors,
|
||||
'task' => $task,
|
||||
'recurrence_status_list' => $this->taskModel->getRecurrenceStatusList(),
|
||||
'recurrence_trigger_list' => $this->taskModel->getRecurrenceTriggerList(),
|
||||
'recurrence_timeframe_list' => $this->taskModel->getRecurrenceTimeframeList(),
|
||||
'recurrence_basedate_list' => $this->taskModel->getRecurrenceBasedateList(),
|
||||
'recurrence_status_list' => $this->taskRecurrenceModel->getRecurrenceStatusList(),
|
||||
'recurrence_trigger_list' => $this->taskRecurrenceModel->getRecurrenceTriggerList(),
|
||||
'recurrence_timeframe_list' => $this->taskRecurrenceModel->getRecurrenceTimeframeList(),
|
||||
'recurrence_basedate_list' => $this->taskRecurrenceModel->getRecurrenceBasedateList(),
|
||||
)));
|
||||
}
|
||||
|
||||
|
||||
@@ -27,17 +27,17 @@ class TaskHelper extends Base
|
||||
|
||||
public function recurrenceTriggers()
|
||||
{
|
||||
return $this->taskModel->getRecurrenceTriggerList();
|
||||
return $this->taskRecurrenceModel->getRecurrenceTriggerList();
|
||||
}
|
||||
|
||||
public function recurrenceTimeframes()
|
||||
{
|
||||
return $this->taskModel->getRecurrenceTimeframeList();
|
||||
return $this->taskRecurrenceModel->getRecurrenceTimeframeList();
|
||||
}
|
||||
|
||||
public function recurrenceBasedates()
|
||||
{
|
||||
return $this->taskModel->getRecurrenceBasedateList();
|
||||
return $this->taskRecurrenceModel->getRecurrenceBasedateList();
|
||||
}
|
||||
|
||||
public function selectTitle(array $values, array $errors)
|
||||
|
||||
@@ -5,7 +5,7 @@ namespace Kanboard\Model;
|
||||
use Kanboard\Core\Base;
|
||||
|
||||
/**
|
||||
* Task model
|
||||
* Task Model
|
||||
*
|
||||
* @package Kanboard\Model
|
||||
* @author Frederic Guillot
|
||||
@@ -117,64 +117,6 @@ class TaskModel extends Base
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 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)'),
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get task progress based on the column position
|
||||
*
|
||||
|
||||
@@ -13,6 +13,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
|
||||
*
|
||||
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user