summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/Controller/SubtaskController.php23
-rw-r--r--app/Model/SubtaskModel.php2
-rw-r--r--app/Template/board/tooltip_subtasks.php4
-rw-r--r--app/Template/dashboard/subtasks.php2
-rw-r--r--app/Template/subtask/create.php3
-rw-r--r--app/Template/subtask/edit.php3
-rw-r--r--app/Template/subtask/table.php2
-rw-r--r--app/Template/task_creation/show.php5
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">