diff options
author | Frederic Guillot <fred@kanboard.net> | 2016-08-28 22:30:48 -0400 |
---|---|---|
committer | Frederic Guillot <fred@kanboard.net> | 2016-08-28 22:30:48 -0400 |
commit | 08bdb708e7698c21b0e6fc9f21d19996fc3d593d (patch) | |
tree | b7ab229dfd1568bb9435e40b20c77aa783eefcc2 /app/Template | |
parent | b51c693cda1cfbda115e315de58b15c0ef275972 (diff) |
Add the possibility to move tasks without drag and drop
Diffstat (limited to 'app/Template')
-rw-r--r-- | app/Template/task/sidebar.php | 16 | ||||
-rw-r--r-- | app/Template/task_move_position/show.php | 43 |
2 files changed, 54 insertions, 5 deletions
diff --git a/app/Template/task/sidebar.php b/app/Template/task/sidebar.php index 728741ba..de0750ff 100644 --- a/app/Template/task/sidebar.php +++ b/app/Template/task/sidebar.php @@ -78,15 +78,21 @@ <i class="fa fa-clone fa-fw"></i> <?= $this->url->link(t('Move to another project'), 'TaskDuplicationController', 'move', array('task_id' => $task['id'], 'project_id' => $task['project_id']), false, 'popover') ?> </li> - <li> - <?php if ($task['is_active'] == 1): ?> + <?php if ($task['is_active'] == 1): ?> + <li> + <i class="fa fa-arrows fa-fw"></i> + <?= $this->url->link(t('Move position'), 'TaskMovePositionController', 'show', array('task_id' => $task['id'], 'project_id' => $task['project_id']), false, 'popover') ?> + </li> + <li> <i class="fa fa-times fa-fw"></i> <?= $this->url->link(t('Close this task'), 'TaskStatusController', 'close', array('task_id' => $task['id'], 'project_id' => $task['project_id']), false, 'popover') ?> - <?php else: ?> + </li> + <?php else: ?> + <li> <i class="fa fa-check-square-o fa-fw"></i> <?= $this->url->link(t('Open this task'), 'TaskStatusController', 'open', array('task_id' => $task['id'], 'project_id' => $task['project_id']), false, 'popover') ?> - <?php endif ?> - </li> + </li> + <?php endif ?> <?php if ($this->user->canRemoveTask($task)): ?> <li> <i class="fa fa-trash-o fa-fw"></i> diff --git a/app/Template/task_move_position/show.php b/app/Template/task_move_position/show.php new file mode 100644 index 00000000..29e1bcb1 --- /dev/null +++ b/app/Template/task_move_position/show.php @@ -0,0 +1,43 @@ +<div class="page-header"> + <h2><?= t('Move task to another position on the board') ?></h2> +</div> + +<script type="x/templates" id="template-task-move-position"> + <?= $this->form->label(t('Swimlane'), 'swimlane') ?> + <select v-model="swimlaneId" @change="onChangeSwimlane()" id="form-swimlane"> + <option v-for="swimlane in board" v-bind:value="swimlane.id"> + {{ swimlane.name }} + </option> + </select> + + <div v-if="columns.length > 0"> + <?= $this->form->label(t('Column'), 'column') ?> + <select v-model="columnId" @change="onChangeColumn()" id="form-column"> + <option v-for="column in columns" v-bind:value="column.id"> + {{ column.title }} + </option> + </select> + </div> + + <div v-if="tasks.length > 0"> + <?= $this->form->label(t('Position'), 'position') ?> + <select v-model="position" id="form-position"> + <option v-for="task in tasks" v-bind:value="task.position"> + #{{ task.id }} - {{ task.title }} + </option> + </select> + <label><input type="radio" value="before" v-model="positionChoice"><?= t('Insert before this task') ?></label> + <label><input type="radio" value="after" v-model="positionChoice"><?= t('Insert after this task') ?></label> + </div> + + <div class="form-actions"> + <input type="button" value="<?= t('Save') ?>" class="btn btn-blue" @click="onSubmit"> + <?= t('or') ?> + <?= $this->url->link(t('cancel'), 'TaskViewController', 'show', array('task_id' => $task['id'], 'project_id' => $task['project_id']), false, 'close-popover') ?> + </div> +</script> + +<task-move-position + save-url="<?= $this->url->href('TaskMovePositionController', 'save', array('task_id' => $task['id'], 'project_id' => $task['project_id'])) ?>" + :board='<?= json_encode($board, JSON_HEX_APOS) ?>' +></task-move-position> |