diff options
Diffstat (limited to 'app')
-rw-r--r-- | app/Controller/SubtaskController.php | 23 | ||||
-rw-r--r-- | app/Model/SubtaskModel.php | 2 | ||||
-rw-r--r-- | app/Template/board/tooltip_subtasks.php | 4 | ||||
-rw-r--r-- | app/Template/dashboard/subtasks.php | 2 | ||||
-rw-r--r-- | app/Template/subtask/create.php | 3 | ||||
-rw-r--r-- | app/Template/subtask/edit.php | 3 | ||||
-rw-r--r-- | app/Template/subtask/table.php | 2 | ||||
-rw-r--r-- | app/Template/task_creation/show.php | 5 |
8 files changed, 35 insertions, 9 deletions
diff --git a/app/Controller/SubtaskController.php b/app/Controller/SubtaskController.php index 7502d84f..134b057e 100644 --- a/app/Controller/SubtaskController.php +++ b/app/Controller/SubtaskController.php @@ -27,10 +27,7 @@ class SubtaskController extends BaseController $task = $this->getTask(); if (empty($values)) { - $values = array( - 'task_id' => $task['id'], - 'another_subtask' => $this->request->getIntegerParam('another_subtask', 0) - ); + $values = $this->prepareValues($task); } $this->response->html($this->template->render('subtask/create', array( @@ -40,6 +37,24 @@ class SubtaskController extends BaseController 'task' => $task, ))); } + + /** + * Prepare form values + * + * @access protected + * @param array $task + * @return array + */ + protected function prepareValues(array $task) + { + $values = array( + 'task_id' => $task['id'], + 'another_subtask' => $this->request->getIntegerParam('another_subtask', 0) + ); + + $values = $this->hook->merge('controller:subtask:form:default', $values, array('default_values' => $values)); + return $values; + } /** * Validation and creation diff --git a/app/Model/SubtaskModel.php b/app/Model/SubtaskModel.php index 608ffce7..737a933d 100644 --- a/app/Model/SubtaskModel.php +++ b/app/Model/SubtaskModel.php @@ -255,6 +255,7 @@ class SubtaskModel extends Base { $this->helper->model->removeFields($values, array('another_subtask')); $this->helper->model->resetFields($values, array('time_estimated', 'time_spent')); + $this->hook->reference('model:subtask:modification:prepare', $values); } /** @@ -272,6 +273,7 @@ class SubtaskModel extends Base $values['time_estimated'] = isset($values['time_estimated']) ? $values['time_estimated'] : 0; $values['time_spent'] = isset($values['time_spent']) ? $values['time_spent'] : 0; $values['user_id'] = isset($values['user_id']) ? $values['user_id'] : 0; + $this->hook->reference('model:subtask:creation:prepare', $values); } /** diff --git a/app/Template/board/tooltip_subtasks.php b/app/Template/board/tooltip_subtasks.php index 8d5bc059..335c28ce 100644 --- a/app/Template/board/tooltip_subtasks.php +++ b/app/Template/board/tooltip_subtasks.php @@ -1,7 +1,8 @@ <div class="tooltip-large"> <table class="table-small"> <tr> - <th class="column-80"><?= t('Subtask') ?></th> + <th class="column-70"><?= t('Subtask') ?></th> + <?= $this->hook->render('template:board:tooltip:subtasks:header:before-assignee') ?> <th><?= t('Assignee') ?></th> </tr> <?php foreach ($subtasks as $subtask): ?> @@ -9,6 +10,7 @@ <td> <?= $this->subtask->toggleStatus($subtask, $task['project_id']) ?> </td> + <?= $this->hook->render('template:board:tooltip:subtasks:rows', array('subtask' => $subtask)) ?> <td> <?php if (! empty($subtask['username'])): ?> <?= $this->text->e($subtask['name'] ?: $subtask['username']) ?> diff --git a/app/Template/dashboard/subtasks.php b/app/Template/dashboard/subtasks.php index b71deeb9..13770f0f 100644 --- a/app/Template/dashboard/subtasks.php +++ b/app/Template/dashboard/subtasks.php @@ -10,6 +10,7 @@ <th class="column-20"><?= $paginator->order(t('Project'), 'project_name') ?></th> <th><?= $paginator->order(t('Task'), 'task_name') ?></th> <th><?= $paginator->order(t('Subtask'), \Kanboard\Model\SubtaskModel::TABLE.'.title') ?></th> + <?= $this->hook->render('template:dashboard:subtasks:header:before-timetracking', array('paginator' => $paginator)) ?> <th class="column-20"><?= t('Time tracking') ?></th> </tr> <?php foreach ($paginator->getCollection() as $subtask): ?> @@ -26,6 +27,7 @@ <td> <?= $this->subtask->toggleStatus($subtask, $subtask['project_id']) ?> </td> + <?= $this->hook->render('template:dashboard:subtasks:rows', array('subtask' => $subtask)) ?> <td> <?php if (! empty($subtask['time_spent'])): ?> <strong><?= $this->text->e($subtask['time_spent']).'h' ?></strong> <?= t('spent') ?> diff --git a/app/Template/subtask/create.php b/app/Template/subtask/create.php index 3c080f7c..cc4ccba6 100644 --- a/app/Template/subtask/create.php +++ b/app/Template/subtask/create.php @@ -9,7 +9,8 @@ <?= $this->subtask->selectTitle($values, $errors, array('autofocus')) ?> <?= $this->subtask->selectAssignee($users_list, $values, $errors) ?> <?= $this->subtask->selectTimeEstimated($values, $errors) ?> - + <?= $this->hook->render('template:subtask:form:create', array('values' => $values, 'errors' => $errors)) ?> + <?= $this->form->checkbox('another_subtask', t('Create another sub-task'), 1, isset($values['another_subtask']) && $values['another_subtask'] == 1) ?> <div class="form-actions"> diff --git a/app/Template/subtask/edit.php b/app/Template/subtask/edit.php index 8f256cea..07419f79 100644 --- a/app/Template/subtask/edit.php +++ b/app/Template/subtask/edit.php @@ -11,7 +11,8 @@ <?= $this->subtask->selectAssignee($users_list, $values, $errors) ?> <?= $this->subtask->selectTimeEstimated($values, $errors) ?> <?= $this->subtask->selectTimeSpent($values, $errors) ?> - + <?= $this->hook->render('template:subtask:form:edit', array('values' => $values, 'errors' => $errors)) ?> + <div class="form-actions"> <button type="submit" class="btn btn-blue"><?= t('Save') ?></button> <?= t('or') ?> diff --git a/app/Template/subtask/table.php b/app/Template/subtask/table.php index 5c60df44..bea49aed 100644 --- a/app/Template/subtask/table.php +++ b/app/Template/subtask/table.php @@ -7,6 +7,7 @@ <tr> <th class="column-40"><?= t('Title') ?></th> <th><?= t('Assignee') ?></th> + <?= $this->hook->render('template:subtask:table:header:before-timetracking') ?> <th><?= t('Time tracking') ?></th> <?php if ($editable): ?> <th class="column-5"></th> @@ -29,6 +30,7 @@ <?= $this->text->e($subtask['name'] ?: $subtask['username']) ?> <?php endif ?> </td> + <?= $this->hook->render('template:subtask:table:rows', array('subtask' => $subtask)) ?> <td> <ul class="no-bullet"> <li> diff --git a/app/Template/task_creation/show.php b/app/Template/task_creation/show.php index c2cc4aac..0c267aff 100644 --- a/app/Template/task_creation/show.php +++ b/app/Template/task_creation/show.php @@ -10,13 +10,14 @@ <?= $this->task->selectTitle($values, $errors) ?> <?= $this->task->selectDescription($values, $errors) ?> <?= $this->task->selectTags($project) ?> - + + <?= $this->hook->render('template:task:form:first-column', array('values' => $values, 'errors' => $errors)) ?> + <?php if (! isset($duplicate)): ?> <?= $this->form->checkbox('another_task', t('Create another task'), 1, isset($values['another_task']) && $values['another_task'] == 1) ?> <?= $this->form->checkbox('duplicate_multiple_projects', t('Duplicate to multiple projects'), 1) ?> <?php endif ?> - <?= $this->hook->render('template:task:form:first-column', array('values' => $values, 'errors' => $errors)) ?> </div> <div class="form-column"> |