Add the possibility to remove a task
This commit is contained in:
@@ -881,8 +881,5 @@ tr td.task-orange,
|
|||||||
/* confirmation box */
|
/* confirmation box */
|
||||||
.confirm {
|
.confirm {
|
||||||
max-width: 700px;
|
max-width: 700px;
|
||||||
padding-top: 5px;
|
font-size: 1.1em;
|
||||||
padding-bottom: 5px;
|
|
||||||
padding-left: 15px;
|
|
||||||
border-left: 2px dotted #ddd;
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -289,7 +289,7 @@ abstract class Base
|
|||||||
$hide_comment_form = true;
|
$hide_comment_form = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
$this->response->html($this->template->layout('task_show', array(
|
$this->response->html($this->taskLayout('task_show', array(
|
||||||
'hide_comment_form' => isset($hide_comment_form),
|
'hide_comment_form' => isset($hide_comment_form),
|
||||||
'comment_edit_form' => $comment_edit_form,
|
'comment_edit_form' => $comment_edit_form,
|
||||||
'comment_form' => $comment_form,
|
'comment_form' => $comment_form,
|
||||||
@@ -302,4 +302,19 @@ abstract class Base
|
|||||||
'title' => $task['title'],
|
'title' => $task['title'],
|
||||||
)));
|
)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Common layout for task views
|
||||||
|
*
|
||||||
|
* @access protected
|
||||||
|
* @param string $template Template name
|
||||||
|
* @param array $params Template parameters
|
||||||
|
*/
|
||||||
|
protected function taskLayout($template, array $params)
|
||||||
|
{
|
||||||
|
$content = $this->template->load($template, $params);
|
||||||
|
$params['task_content_for_layout'] = $content;
|
||||||
|
|
||||||
|
return $this->template->layout('task_layout', $params);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -253,7 +253,7 @@ class Task extends Base
|
|||||||
$this->session->flashError(t('Unable to close this task.'));
|
$this->session->flashError(t('Unable to close this task.'));
|
||||||
}
|
}
|
||||||
|
|
||||||
$this->response->redirect('?controller=board&action=show&project_id='.$task['project_id']);
|
$this->response->redirect('?controller=task&action=show&task_id='.$task['id']);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -263,12 +263,12 @@ class Task extends Base
|
|||||||
*/
|
*/
|
||||||
public function confirmClose()
|
public function confirmClose()
|
||||||
{
|
{
|
||||||
$task = $this->task->getById($this->request->getIntegerParam('task_id'));
|
$task = $this->task->getById($this->request->getIntegerParam('task_id'), true);
|
||||||
|
|
||||||
if (! $task) $this->notfound();
|
if (! $task) $this->notfound();
|
||||||
$this->checkProjectPermissions($task['project_id']);
|
$this->checkProjectPermissions($task['project_id']);
|
||||||
|
|
||||||
$this->response->html($this->template->layout('task_close', array(
|
$this->response->html($this->taskLayout('task_close', array(
|
||||||
'task' => $task,
|
'task' => $task,
|
||||||
'menu' => 'tasks',
|
'menu' => 'tasks',
|
||||||
'title' => t('Close a task')
|
'title' => t('Close a task')
|
||||||
@@ -293,7 +293,7 @@ class Task extends Base
|
|||||||
$this->session->flashError(t('Unable to open this task.'));
|
$this->session->flashError(t('Unable to open this task.'));
|
||||||
}
|
}
|
||||||
|
|
||||||
$this->response->redirect('?controller=board&action=show&project_id='.$task['project_id']);
|
$this->response->redirect('?controller=task&action=show&task_id='.$task['id']);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -302,16 +302,56 @@ class Task extends Base
|
|||||||
* @access public
|
* @access public
|
||||||
*/
|
*/
|
||||||
public function confirmOpen()
|
public function confirmOpen()
|
||||||
|
{
|
||||||
|
$task = $this->task->getById($this->request->getIntegerParam('task_id'), true);
|
||||||
|
|
||||||
|
if (! $task) $this->notfound();
|
||||||
|
$this->checkProjectPermissions($task['project_id']);
|
||||||
|
|
||||||
|
$this->response->html($this->taskLayout('task_open', array(
|
||||||
|
'task' => $task,
|
||||||
|
'menu' => 'tasks',
|
||||||
|
'title' => t('Open a task')
|
||||||
|
)));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remove a task
|
||||||
|
*
|
||||||
|
* @access public
|
||||||
|
*/
|
||||||
|
public function remove()
|
||||||
{
|
{
|
||||||
$task = $this->task->getById($this->request->getIntegerParam('task_id'));
|
$task = $this->task->getById($this->request->getIntegerParam('task_id'));
|
||||||
|
|
||||||
if (! $task) $this->notfound();
|
if (! $task) $this->notfound();
|
||||||
$this->checkProjectPermissions($task['project_id']);
|
$this->checkProjectPermissions($task['project_id']);
|
||||||
|
|
||||||
$this->response->html($this->template->layout('task_open', array(
|
if ($this->task->remove($task['id'])) {
|
||||||
|
$this->session->flash(t('Task removed successfully.'));
|
||||||
|
} else {
|
||||||
|
$this->session->flashError(t('Unable to remove this task.'));
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->response->redirect('?controller=board&action=show&project_id='.$task['project_id']);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Confirmation dialog before removing a task
|
||||||
|
*
|
||||||
|
* @access public
|
||||||
|
*/
|
||||||
|
public function confirmRemove()
|
||||||
|
{
|
||||||
|
$task = $this->task->getById($this->request->getIntegerParam('task_id'), true);
|
||||||
|
|
||||||
|
if (! $task) $this->notfound();
|
||||||
|
$this->checkProjectPermissions($task['project_id']);
|
||||||
|
|
||||||
|
$this->response->html($this->taskLayout('task_remove', array(
|
||||||
'task' => $task,
|
'task' => $task,
|
||||||
'menu' => 'tasks',
|
'menu' => 'tasks',
|
||||||
'title' => t('Open a task')
|
'title' => t('Remove a task')
|
||||||
)));
|
)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -305,4 +305,8 @@ return array(
|
|||||||
// 'Login with my Google Account' => '',
|
// 'Login with my Google Account' => '',
|
||||||
// 'Project not found.' => '',
|
// 'Project not found.' => '',
|
||||||
// 'Task #%d' => '',
|
// 'Task #%d' => '',
|
||||||
|
// 'Task removed successfully.' => '',
|
||||||
|
// 'Unable to remove this task.' => '',
|
||||||
|
// 'Remove a task' => '',
|
||||||
|
// 'Do you really want to remove this task: "%s"?' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -305,4 +305,8 @@ return array(
|
|||||||
'Login with my Google Account' => 'Se connecter avec mon compte Google',
|
'Login with my Google Account' => 'Se connecter avec mon compte Google',
|
||||||
'Project not found.' => 'Projet introuvable.',
|
'Project not found.' => 'Projet introuvable.',
|
||||||
'Task #%d' => 'Tâche n°%d',
|
'Task #%d' => 'Tâche n°%d',
|
||||||
|
'Task removed successfully.' => 'Tâche supprimée avec succès.',
|
||||||
|
'Unable to remove this task.' => 'Impossible de supprimer cette tâche.',
|
||||||
|
'Remove a task' => 'Supprimer une tâche',
|
||||||
|
'Do you really want to remove this task: "%s"?' => 'Voulez-vous vraiment supprimer cette tâche « %s » ?',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -310,4 +310,8 @@ return array(
|
|||||||
// 'Login with my Google Account' => '',
|
// 'Login with my Google Account' => '',
|
||||||
// 'Project not found.' => '',
|
// 'Project not found.' => '',
|
||||||
// 'Task #%d' => '',
|
// 'Task #%d' => '',
|
||||||
|
// 'Task removed successfully.' => '',
|
||||||
|
// 'Unable to remove this task.' => '',
|
||||||
|
// 'Remove a task' => '',
|
||||||
|
// 'Do you really want to remove this task: "%s"?' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -306,4 +306,8 @@ return array(
|
|||||||
// 'Login with my Google Account' => '',
|
// 'Login with my Google Account' => '',
|
||||||
// 'Project not found.' => '',
|
// 'Project not found.' => '',
|
||||||
// 'Task #%d' => '',
|
// 'Task #%d' => '',
|
||||||
|
// 'Task removed successfully.' => '',
|
||||||
|
// 'Unable to remove this task.' => '',
|
||||||
|
// 'Remove a task' => '',
|
||||||
|
// 'Do you really want to remove this task: "%s"?' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ class Acl extends Base
|
|||||||
'app' => array('index'),
|
'app' => array('index'),
|
||||||
'board' => array('index', 'show', 'assign', 'assigntask', 'save', 'check'),
|
'board' => array('index', 'show', 'assign', 'assigntask', 'save', 'check'),
|
||||||
'project' => array('tasks', 'index', 'forbidden', 'search'),
|
'project' => array('tasks', 'index', 'forbidden', 'search'),
|
||||||
'task' => array('show', 'create', 'save', 'edit', 'update', 'close', 'confirmclose', 'open', 'confirmopen', 'description', 'duplicate'),
|
'task' => array('show', 'create', 'save', 'edit', 'update', 'close', 'confirmclose', 'open', 'confirmopen', 'description', 'duplicate', 'remove', 'confirmremove'),
|
||||||
'comment' => array('save', 'confirm', 'remove', 'update', 'edit'),
|
'comment' => array('save', 'confirm', 'remove', 'update', 'edit'),
|
||||||
'user' => array('index', 'edit', 'update', 'forbidden', 'logout', 'index', 'unlinkgoogle'),
|
'user' => array('index', 'edit', 'update', 'forbidden', 'logout', 'index', 'unlinkgoogle'),
|
||||||
'config' => array('index', 'removeremembermetoken'),
|
'config' => array('index', 'removeremembermetoken'),
|
||||||
|
|||||||
@@ -1,16 +1,10 @@
|
|||||||
<section id="main">
|
<div class="confirm">
|
||||||
<div class="page-header">
|
<p class="alert alert-info">
|
||||||
<h2><?= t('Close a task') ?></h2>
|
<?= t('Do you really want to close this task: "%s"?', Helper\escape($task['title'])) ?>
|
||||||
</div>
|
</p>
|
||||||
|
|
||||||
<div class="confirm">
|
<div class="form-actions">
|
||||||
<p class="alert alert-info">
|
<a href="?controller=task&action=close&task_id=<?= $task['id'] ?>" class="btn btn-red"><?= t('Yes') ?></a>
|
||||||
<?= t('Do you really want to close this task: "%s"?', Helper\escape($task['title'])) ?>
|
<?= t('or') ?> <a href="?controller=task&action=show&task_id=<?= $task['id'] ?>"><?= t('cancel') ?></a>
|
||||||
</p>
|
|
||||||
|
|
||||||
<div class="form-actions">
|
|
||||||
<a href="?controller=task&action=close&task_id=<?= $task['id'] ?>" class="btn btn-red"><?= t('Yes') ?></a>
|
|
||||||
<?= t('or') ?> <a href="?controller=task&action=show&task_id=<?= $task['id'] ?>"><?= t('cancel') ?></a>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</div>
|
||||||
16
templates/task_layout.php
Normal file
16
templates/task_layout.php
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
<section id="main">
|
||||||
|
<div class="page-header">
|
||||||
|
<h2><?= Helper\escape($task['project_name']) ?> > <?= t('Task #%d', $task['id']) ?></h2>
|
||||||
|
<ul>
|
||||||
|
<li><a href="?controller=board&action=show&project_id=<?= $task['project_id'] ?>"><?= t('Back to the board') ?></a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
<section class="task-show">
|
||||||
|
|
||||||
|
<?= Helper\template('task_sidebar', array('task' => $task)) ?>
|
||||||
|
|
||||||
|
<div class="task-show-main">
|
||||||
|
<?= $task_content_for_layout ?>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
10
templates/task_remove.php
Normal file
10
templates/task_remove.php
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
<div class="confirm">
|
||||||
|
<p class="alert alert-info">
|
||||||
|
<?= t('Do you really want to remove this task: "%s"?', Helper\escape($task['title'])) ?>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div class="form-actions">
|
||||||
|
<a href="?controller=task&action=remove&task_id=<?= $task['id'] ?>" class="btn btn-red"><?= t('Yes') ?></a>
|
||||||
|
<?= t('or') ?> <a href="?controller=task&action=show&task_id=<?= $task['id'] ?>"><?= t('cancel') ?></a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
@@ -1,121 +1,89 @@
|
|||||||
<section id="main">
|
<article class="task task-<?= $task['color_id'] ?> task-show-details">
|
||||||
<div class="page-header">
|
<h2><?= Helper\escape($task['title']) ?></h2>
|
||||||
<h2><?= Helper\escape($task['project_name']) ?> > <?= t('Task #%d', $task['id']) ?></h2>
|
<?php if ($task['score']): ?>
|
||||||
<ul>
|
<span class="task-score"><?= Helper\escape($task['score']) ?></span>
|
||||||
<li><a href="?controller=board&action=show&project_id=<?= $task['project_id'] ?>"><?= t('Back to the board') ?></a></li>
|
<?php endif ?>
|
||||||
</ul>
|
<ul>
|
||||||
|
<li>
|
||||||
|
<?= dt('Created on %B %e, %G at %k:%M %p', $task['date_creation']) ?>
|
||||||
|
</li>
|
||||||
|
<?php if ($task['date_completed']): ?>
|
||||||
|
<li>
|
||||||
|
<?= dt('Completed on %B %e, %G at %k:%M %p', $task['date_completed']) ?>
|
||||||
|
</li>
|
||||||
|
<?php endif ?>
|
||||||
|
<?php if ($task['date_due']): ?>
|
||||||
|
<li>
|
||||||
|
<strong><?= dt('Must be done before %B %e, %G', $task['date_due']) ?></strong>
|
||||||
|
</li>
|
||||||
|
<?php endif ?>
|
||||||
|
<li>
|
||||||
|
<strong>
|
||||||
|
<?php if ($task['username']): ?>
|
||||||
|
<?= t('Assigned to %s', $task['username']) ?>
|
||||||
|
<?php else: ?>
|
||||||
|
<?= t('There is nobody assigned') ?>
|
||||||
|
<?php endif ?>
|
||||||
|
</strong>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<?= t('Column on the board:') ?>
|
||||||
|
<strong><?= Helper\escape($task['column_title']) ?></strong>
|
||||||
|
(<?= Helper\escape($task['project_name']) ?>)
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<?php if ($task['is_active'] == 1): ?>
|
||||||
|
<?= t('Status is open') ?>
|
||||||
|
<?php else: ?>
|
||||||
|
<?= t('Status is closed') ?>
|
||||||
|
<?php endif ?>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</article>
|
||||||
|
|
||||||
|
<h2><?= t('Description') ?></h2>
|
||||||
|
<?php if ($task['description']): ?>
|
||||||
|
<article class="markdown task-show-description">
|
||||||
|
<?= Helper\parse($task['description']) ?: t('There is no description.') ?>
|
||||||
|
</article>
|
||||||
|
<?php else: ?>
|
||||||
|
<form method="post" action="?controller=task&action=description&task_id=<?= $task['id'] ?>" autocomplete="off">
|
||||||
|
|
||||||
|
<?= Helper\form_hidden('id', $description_form['values']) ?>
|
||||||
|
<?= Helper\form_textarea('description', $description_form['values'], $description_form['errors'], array('required', 'placeholder="'.t('Leave a description').'"')) ?><br/>
|
||||||
|
<div class="form-help"><a href="http://kanboard.net/documentation/syntax-guide" target="_blank" rel="noreferrer"><?= t('Write your text in Markdown') ?></a></div>
|
||||||
|
|
||||||
|
<div class="form-actions">
|
||||||
|
<input type="submit" value="<?= t('Save') ?>" class="btn btn-blue"/>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
<?php endif ?>
|
||||||
|
|
||||||
|
<h2><?= t('Comments') ?></h2>
|
||||||
|
<?php if ($comments): ?>
|
||||||
|
<ul id="comments">
|
||||||
|
<?php foreach ($comments as $comment): ?>
|
||||||
|
<?= Helper\template('comment_show', array(
|
||||||
|
'comment' => $comment,
|
||||||
|
'task' => $task,
|
||||||
|
'display_edit_form' => $comment['id'] == $comment_edit_form['values']['id'],
|
||||||
|
'values' => $comment_edit_form['values'] + array('comment' => $comment['comment']),
|
||||||
|
'errors' => $comment_edit_form['errors']
|
||||||
|
)) ?>
|
||||||
|
<?php endforeach ?>
|
||||||
|
</ul>
|
||||||
|
<?php endif ?>
|
||||||
|
|
||||||
|
<?php if (! isset($hide_comment_form) || $hide_comment_form === false): ?>
|
||||||
|
<form method="post" action="?controller=comment&action=save&task_id=<?= $task['id'] ?>" autocomplete="off">
|
||||||
|
|
||||||
|
<?= Helper\form_hidden('task_id', $comment_form['values']) ?>
|
||||||
|
<?= Helper\form_hidden('user_id', $comment_form['values']) ?>
|
||||||
|
<?= Helper\form_textarea('comment', $comment_form['values'], $comment_form['errors'], array('required', 'placeholder="'.t('Leave a comment').'"'), 'comment-textarea') ?><br/>
|
||||||
|
<div class="form-help"><a href="http://kanboard.net/documentation/syntax-guide" target="_blank" rel="noreferrer"><?= t('Write your text in Markdown') ?></a></div>
|
||||||
|
|
||||||
|
<div class="form-actions">
|
||||||
|
<input type="submit" value="<?= t('Post comment') ?>" class="btn btn-blue"/>
|
||||||
</div>
|
</div>
|
||||||
<section class="task-show">
|
</form>
|
||||||
|
<?php endif ?>
|
||||||
<div class="task-show-sidebar">
|
|
||||||
|
|
||||||
<h2><?= t('Actions') ?></h2>
|
|
||||||
<div class="task-show-actions">
|
|
||||||
<ul>
|
|
||||||
<li><a href="?controller=task&action=duplicate&project_id=<?= $task['project_id'] ?>&task_id=<?= $task['id'] ?>"><?= t('Duplicate') ?></a></li>
|
|
||||||
<li><a href="?controller=task&action=edit&task_id=<?= $task['id'] ?>"><?= t('Edit') ?></a></li>
|
|
||||||
<li>
|
|
||||||
<?php if ($task['is_active'] == 1): ?>
|
|
||||||
<a href="?controller=task&action=confirmClose&task_id=<?= $task['id'] ?>"><?= t('Close this task') ?></a>
|
|
||||||
<?php else: ?>
|
|
||||||
<a href="?controller=task&action=confirmOpen&task_id=<?= $task['id'] ?>"><?= t('Open this task') ?></a>
|
|
||||||
<?php endif ?>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="task-show-main">
|
|
||||||
<article class="task task-<?= $task['color_id'] ?> task-show-details">
|
|
||||||
<h2><?= Helper\escape($task['title']) ?></h2>
|
|
||||||
<?php if ($task['score']): ?>
|
|
||||||
<span class="task-score"><?= Helper\escape($task['score']) ?></span>
|
|
||||||
<?php endif ?>
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
<?= dt('Created on %B %e, %G at %k:%M %p', $task['date_creation']) ?>
|
|
||||||
</li>
|
|
||||||
<?php if ($task['date_completed']): ?>
|
|
||||||
<li>
|
|
||||||
<?= dt('Completed on %B %e, %G at %k:%M %p', $task['date_completed']) ?>
|
|
||||||
</li>
|
|
||||||
<?php endif ?>
|
|
||||||
<?php if ($task['date_due']): ?>
|
|
||||||
<li>
|
|
||||||
<strong><?= dt('Must be done before %B %e, %G', $task['date_due']) ?></strong>
|
|
||||||
</li>
|
|
||||||
<?php endif ?>
|
|
||||||
<li>
|
|
||||||
<strong>
|
|
||||||
<?php if ($task['username']): ?>
|
|
||||||
<?= t('Assigned to %s', $task['username']) ?>
|
|
||||||
<?php else: ?>
|
|
||||||
<?= t('There is nobody assigned') ?>
|
|
||||||
<?php endif ?>
|
|
||||||
</strong>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<?= t('Column on the board:') ?>
|
|
||||||
<strong><?= Helper\escape($task['column_title']) ?></strong>
|
|
||||||
(<?= Helper\escape($task['project_name']) ?>)
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<?php if ($task['is_active'] == 1): ?>
|
|
||||||
<?= t('Status is open') ?>
|
|
||||||
<?php else: ?>
|
|
||||||
<?= t('Status is closed') ?>
|
|
||||||
<?php endif ?>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</article>
|
|
||||||
|
|
||||||
<h2><?= t('Description') ?></h2>
|
|
||||||
<?php if ($task['description']): ?>
|
|
||||||
<article class="markdown task-show-description">
|
|
||||||
<?= Helper\parse($task['description']) ?: t('There is no description.') ?>
|
|
||||||
</article>
|
|
||||||
<?php else: ?>
|
|
||||||
<form method="post" action="?controller=task&action=description&task_id=<?= $task['id'] ?>" autocomplete="off">
|
|
||||||
|
|
||||||
<?= Helper\form_hidden('id', $description_form['values']) ?>
|
|
||||||
<?= Helper\form_textarea('description', $description_form['values'], $description_form['errors'], array('required', 'placeholder="'.t('Leave a description').'"')) ?><br/>
|
|
||||||
<div class="form-help"><a href="http://kanboard.net/documentation/syntax-guide" target="_blank" rel="noreferrer"><?= t('Write your text in Markdown') ?></a></div>
|
|
||||||
|
|
||||||
<div class="form-actions">
|
|
||||||
<input type="submit" value="<?= t('Save') ?>" class="btn btn-blue"/>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
<?php endif ?>
|
|
||||||
|
|
||||||
<h2><?= t('Comments') ?></h2>
|
|
||||||
<?php if ($comments): ?>
|
|
||||||
<ul id="comments">
|
|
||||||
<?php foreach ($comments as $comment): ?>
|
|
||||||
<?= Helper\template('comment_show', array(
|
|
||||||
'comment' => $comment,
|
|
||||||
'task' => $task,
|
|
||||||
'display_edit_form' => $comment['id'] == $comment_edit_form['values']['id'],
|
|
||||||
'values' => $comment_edit_form['values'] + array('comment' => $comment['comment']),
|
|
||||||
'errors' => $comment_edit_form['errors']
|
|
||||||
)) ?>
|
|
||||||
<?php endforeach ?>
|
|
||||||
</ul>
|
|
||||||
<?php endif ?>
|
|
||||||
|
|
||||||
<?php if (! isset($hide_comment_form) || $hide_comment_form === false): ?>
|
|
||||||
<form method="post" action="?controller=comment&action=save&task_id=<?= $task['id'] ?>" autocomplete="off">
|
|
||||||
|
|
||||||
<?= Helper\form_hidden('task_id', $comment_form['values']) ?>
|
|
||||||
<?= Helper\form_hidden('user_id', $comment_form['values']) ?>
|
|
||||||
<?= Helper\form_textarea('comment', $comment_form['values'], $comment_form['errors'], array('required', 'placeholder="'.t('Leave a comment').'"'), 'comment-textarea') ?><br/>
|
|
||||||
<div class="form-help"><a href="http://kanboard.net/documentation/syntax-guide" target="_blank" rel="noreferrer"><?= t('Write your text in Markdown') ?></a></div>
|
|
||||||
|
|
||||||
<div class="form-actions">
|
|
||||||
<input type="submit" value="<?= t('Post comment') ?>" class="btn btn-blue"/>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
<?php endif ?>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</section>
|
|
||||||
</section>
|
|
||||||
17
templates/task_sidebar.php
Normal file
17
templates/task_sidebar.php
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
<div class="task-show-sidebar">
|
||||||
|
<h2><?= t('Actions') ?></h2>
|
||||||
|
<div class="task-show-actions">
|
||||||
|
<ul>
|
||||||
|
<li><a href="?controller=task&action=duplicate&project_id=<?= $task['project_id'] ?>&task_id=<?= $task['id'] ?>"><?= t('Duplicate') ?></a></li>
|
||||||
|
<li><a href="?controller=task&action=edit&task_id=<?= $task['id'] ?>"><?= t('Edit') ?></a></li>
|
||||||
|
<li>
|
||||||
|
<?php if ($task['is_active'] == 1): ?>
|
||||||
|
<a href="?controller=task&action=confirmClose&task_id=<?= $task['id'] ?>"><?= t('Close this task') ?></a>
|
||||||
|
<?php else: ?>
|
||||||
|
<a href="?controller=task&action=confirmOpen&task_id=<?= $task['id'] ?>"><?= t('Open this task') ?></a>
|
||||||
|
<?php endif ?>
|
||||||
|
</li>
|
||||||
|
<li><a href="?controller=task&action=confirmRemove&task_id=<?= $task['id'] ?>"><?= t('Remove') ?></a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
Reference in New Issue
Block a user