summaryrefslogtreecommitdiff
path: root/app/Template
diff options
context:
space:
mode:
Diffstat (limited to 'app/Template')
-rw-r--r--app/Template/action/index.php17
-rw-r--r--app/Template/board/filters.php6
-rw-r--r--app/Template/event/events.php2
-rw-r--r--app/Template/event/task_move_swimlane.php19
-rw-r--r--app/Template/event/task_update.php5
-rw-r--r--app/Template/layout.php5
-rw-r--r--app/Template/notification/comment_create.php (renamed from app/Template/notification/comment_creation.php)0
-rw-r--r--app/Template/notification/file_create.php (renamed from app/Template/notification/file_creation.php)0
-rw-r--r--app/Template/notification/footer.php3
-rw-r--r--app/Template/notification/subtask_create.php (renamed from app/Template/notification/subtask_creation.php)0
-rw-r--r--app/Template/notification/task_create.php (renamed from app/Template/notification/task_creation.php)6
-rw-r--r--app/Template/notification/task_move_swimlane.php19
-rw-r--r--app/Template/notification/task_overdue.php (renamed from app/Template/notification/task_due.php)4
-rw-r--r--app/Template/notification/task_update.php41
-rw-r--r--app/Template/task/changes.php78
-rw-r--r--app/Template/task/edit.php26
-rw-r--r--app/Template/task/new.php32
-rw-r--r--app/Template/user/last.php10
-rw-r--r--app/Template/user/notifications.php16
-rw-r--r--app/Template/user/sessions.php12
20 files changed, 203 insertions, 98 deletions
diff --git a/app/Template/action/index.php b/app/Template/action/index.php
index 9e98554c..ca9c6543 100644
--- a/app/Template/action/index.php
+++ b/app/Template/action/index.php
@@ -7,16 +7,25 @@
<h3><?= t('Defined actions') ?></h3>
<table>
<tr>
- <th><?= t('Event name') ?></th>
- <th><?= t('Action name') ?></th>
+ <th><?= t('Automatic actions') ?></th>
<th><?= t('Action parameters') ?></th>
<th><?= t('Action') ?></th>
</tr>
<?php foreach ($actions as $action): ?>
<tr>
- <td><?= $this->text->in($action['event_name'], $available_events) ?></td>
- <td><?= $this->text->in($action['action_name'], $available_actions) ?></td>
+ <td>
+ <ul>
+ <li>
+ <?= t('Event name') ?> =
+ <strong><?= $this->text->in($action['event_name'], $available_events) ?></strong>
+ </li>
+ <li>
+ <?= t('Action name') ?> =
+ <strong><?= $this->text->in($action['action_name'], $available_actions) ?></strong>
+ </li>
+ <ul>
+ </td>
<td>
<ul>
<?php foreach ($action['params'] as $param): ?>
diff --git a/app/Template/board/filters.php b/app/Template/board/filters.php
index bf2adfac..b80234a0 100644
--- a/app/Template/board/filters.php
+++ b/app/Template/board/filters.php
@@ -27,13 +27,13 @@
</span>
</li>
<li>
- <?= $this->form->select('user_id', $users, array(), array(), array('data-placeholder="'.t('Filter by user').'"', 'data-notfound="'.t('No results match:').'"'), 'apply-filters chosen-select') ?>
+ <?= $this->form->select('user_id', $users, array(), array(), array('data-placeholder="'.t('Filter by user').'"', 'data-notfound="'.t('No results match:').'"', 'tabindex=="-1"'), 'apply-filters chosen-select') ?>
</li>
<li>
- <?= $this->form->select('category_id', $categories, array(), array(), array('data-placeholder="'.t('Filter by category').'"', 'data-notfound="'.t('No results match:').'"'), 'apply-filters chosen-select') ?>
+ <?= $this->form->select('category_id', $categories, array(), array(), array('data-placeholder="'.t('Filter by category').'"', 'data-notfound="'.t('No results match:').'"', 'tabindex=="-1"'), 'apply-filters chosen-select') ?>
</li>
<li>
- <select id="more-filters" multiple data-placeholder="<?= t('More filters') ?>" data-notfound="<?= t('No results match:') ?>" class="apply-filters hide-mobile">
+ <select id="more-filters" multiple data-placeholder="<?= t('More filters') ?>" data-notfound="<?= t('No results match:') ?>" class="apply-filters hide-mobile" tabindex="-1">
<option value=""></option>
<option value="filter-due-date"><?= t('Filter by due date') ?></option>
<option value="filter-recent"><?= t('Filter recently updated') ?></option>
diff --git a/app/Template/event/events.php b/app/Template/event/events.php
index 2dc79871..971f6587 100644
--- a/app/Template/event/events.php
+++ b/app/Template/event/events.php
@@ -7,6 +7,8 @@
<p class="activity-datetime">
<?php if ($this->text->contains($event['event_name'], 'subtask')): ?>
<i class="fa fa-tasks"></i>
+ <?php elseif ($this->text->contains($event['event_name'], 'task.move')): ?>
+ <i class="fa fa-arrows-alt"></i>
<?php elseif ($this->text->contains($event['event_name'], 'task')): ?>
<i class="fa fa-newspaper-o"></i>
<?php elseif ($this->text->contains($event['event_name'], 'comment')): ?>
diff --git a/app/Template/event/task_move_swimlane.php b/app/Template/event/task_move_swimlane.php
new file mode 100644
index 00000000..ca440dbf
--- /dev/null
+++ b/app/Template/event/task_move_swimlane.php
@@ -0,0 +1,19 @@
+<?= $this->user->avatar($email, $author) ?>
+
+<p class="activity-title">
+ <?php if ($task['swimlane_id'] == 0): ?>
+ <?= e('%s moved the task %s to the first swimlane',
+ $this->e($author),
+ $this->url->link(t('#%d', $task['id']), 'task', 'show', array('task_id' => $task['id'], 'project_id' => $task['project_id']))
+ ) ?>
+ <?php else: ?>
+ <?= e('%s moved the task %s to the swimlane "%s"',
+ $this->e($author),
+ $this->url->link(t('#%d', $task['id']), 'task', 'show', array('task_id' => $task['id'], 'project_id' => $task['project_id'])),
+ $this->e($task['swimlane_name'])
+ ) ?>
+ <?php endif ?>
+</p>
+<p class="activity-description">
+ <em><?= $this->e($task['title']) ?></em>
+</p> \ No newline at end of file
diff --git a/app/Template/event/task_update.php b/app/Template/event/task_update.php
index 7d036d43..e8254bcb 100644
--- a/app/Template/event/task_update.php
+++ b/app/Template/event/task_update.php
@@ -8,4 +8,9 @@
</p>
<p class="activity-description">
<em><?= $this->e($task['title']) ?></em>
+ <?php if (isset($changes)): ?>
+ <div class="activity-changes">
+ <?= $this->render('task/changes', array('changes' => $changes, 'task' => $task)) ?>
+ </div>
+ <?php endif ?>
</p> \ No newline at end of file
diff --git a/app/Template/layout.php b/app/Template/layout.php
index cf74c8ab..0d9326f4 100644
--- a/app/Template/layout.php
+++ b/app/Template/layout.php
@@ -5,6 +5,7 @@
<meta name="viewport" content="width=device-width">
<meta name="mobile-web-app-capable" content="yes">
<meta name="robots" content="noindex,nofollow">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
<?php if (isset($board_public_refresh_interval)): ?>
<meta http-equiv="refresh" content="<?= $board_public_refresh_interval ?>">
@@ -37,7 +38,7 @@
<?php else: ?>
<header>
<nav>
- <h1><?= $this->url->link('K<span>B</span>', 'app', 'index', array(), false, 'logo', t('Dashboard')).' '.$this->text->truncate($this->e($title)) ?>
+ <h1><?= $this->url->link('K<span>B</span>', 'app', 'index', array(), false, 'logo', t('Dashboard')).' '.$this->e($title) ?>
<?php if (! empty($description)): ?>
<span class="column-tooltip" title='<?= $this->e($this->text->markdown($description)) ?>'>
<i class="fa fa-info-circle"></i>
@@ -47,7 +48,7 @@
<ul>
<?php if (isset($board_selector) && ! empty($board_selector)): ?>
<li>
- <select id="board-selector" data-notfound="<?= t('No results match:') ?>" data-placeholder="<?= t('Display another project') ?>" data-board-url="<?= $this->url->href('board', 'show', array('project_id' => 'PROJECT_ID')) ?>">
+ <select id="board-selector" tabindex=="-1" data-notfound="<?= t('No results match:') ?>" data-placeholder="<?= t('Display another project') ?>" data-board-url="<?= $this->url->href('board', 'show', array('project_id' => 'PROJECT_ID')) ?>">
<option value=""></option>
<?php foreach($board_selector as $board_id => $board_name): ?>
<option value="<?= $board_id ?>"><?= $this->e($board_name) ?></option>
diff --git a/app/Template/notification/comment_creation.php b/app/Template/notification/comment_create.php
index 747c4f43..747c4f43 100644
--- a/app/Template/notification/comment_creation.php
+++ b/app/Template/notification/comment_create.php
diff --git a/app/Template/notification/file_creation.php b/app/Template/notification/file_create.php
index 63f7d1b8..63f7d1b8 100644
--- a/app/Template/notification/file_creation.php
+++ b/app/Template/notification/file_create.php
diff --git a/app/Template/notification/footer.php b/app/Template/notification/footer.php
index 7041c43b..69d2cf82 100644
--- a/app/Template/notification/footer.php
+++ b/app/Template/notification/footer.php
@@ -2,5 +2,6 @@
Kanboard
<?php if (isset($application_url) && ! empty($application_url)): ?>
- - <a href="<?= $application_url.$this->url->href('task', 'show', array('task_id' => $task['id'], 'project_id' => $task['project_id'])) ?>"><?= t('view the task on Kanboard') ?></a>.
+ - <a href="<?= $application_url.$this->url->href('task', 'show', array('task_id' => $task['id'], 'project_id' => $task['project_id'])) ?>"><?= t('view the task on Kanboard') ?></a>
+ - <a href="<?= $application_url.$this->url->href('board', 'show', array('project_id' => $task['project_id'])) ?>"><?= t('view the board on Kanboard') ?></a>
<?php endif ?>
diff --git a/app/Template/notification/subtask_creation.php b/app/Template/notification/subtask_create.php
index e1c62b73..e1c62b73 100644
--- a/app/Template/notification/subtask_creation.php
+++ b/app/Template/notification/subtask_create.php
diff --git a/app/Template/notification/task_creation.php b/app/Template/notification/task_create.php
index 0905d3f5..1d834d44 100644
--- a/app/Template/notification/task_creation.php
+++ b/app/Template/notification/task_create.php
@@ -9,14 +9,14 @@
<strong><?= dt('Must be done before %B %e, %Y', $task['date_due']) ?></strong>
</li>
<?php endif ?>
- <?php if ($task['creator_username']): ?>
+ <?php if (! empty($task['creator_username'])): ?>
<li>
<?= t('Created by %s', $task['creator_name'] ?: $task['creator_username']) ?>
</li>
<?php endif ?>
<li>
<strong>
- <?php if ($task['assignee_username']): ?>
+ <?php if (! empty($task['assignee_username'])): ?>
<?= t('Assigned to %s', $task['assignee_name'] ?: $task['assignee_username']) ?>
<?php else: ?>
<?= t('There is nobody assigned') ?>
@@ -28,7 +28,7 @@
<strong><?= $this->e($task['column_title']) ?></strong>
</li>
<li><?= t('Task position:').' '.$this->e($task['position']) ?></li>
- <?php if ($task['category_name']): ?>
+ <?php if (! empty($task['category_name'])): ?>
<li>
<?= t('Category:') ?> <strong><?= $this->e($task['category_name']) ?></strong>
</li>
diff --git a/app/Template/notification/task_move_swimlane.php b/app/Template/notification/task_move_swimlane.php
new file mode 100644
index 00000000..04de7cc6
--- /dev/null
+++ b/app/Template/notification/task_move_swimlane.php
@@ -0,0 +1,19 @@
+<h2><?= $this->e($task['title']) ?> (#<?= $task['id'] ?>)</h2>
+
+<ul>
+ <li>
+ <?php if ($task['swimlane_id'] == 0): ?>
+ <?= t('The task have been moved to the first swimlane') ?>
+ <?php else: ?>
+ <?= t('The task have been moved to another swimlane:') ?>
+ <strong><?= $this->e($task['swimlane_name']) ?></strong>
+ <?php endif ?>
+ </li>
+ <li>
+ <?= t('Column on the board:') ?>
+ <strong><?= $this->e($task['column_title']) ?></strong>
+ </li>
+ <li><?= t('Task position:').' '.$this->e($task['position']) ?></li>
+</ul>
+
+<?= $this->render('notification/footer', array('task' => $task, 'application_url' => $application_url)) ?> \ No newline at end of file
diff --git a/app/Template/notification/task_due.php b/app/Template/notification/task_overdue.php
index 7482424a..dc2659dc 100644
--- a/app/Template/notification/task_due.php
+++ b/app/Template/notification/task_overdue.php
@@ -1,4 +1,4 @@
-<h2><?= t('List of due tasks for the project "%s"', $project) ?></h2>
+<h2><?= t('Overdue tasks for the project "%s"', $project_name) ?></h2>
<ul>
<?php foreach ($tasks as $task): ?>
@@ -16,5 +16,3 @@
</li>
<?php endforeach ?>
</ul>
-
-<?= $this->render('notification/footer', array('task' => $task)) ?>
diff --git a/app/Template/notification/task_update.php b/app/Template/notification/task_update.php
index ffea49cd..54f5c6d1 100644
--- a/app/Template/notification/task_update.php
+++ b/app/Template/notification/task_update.php
@@ -1,43 +1,4 @@
<h2><?= $this->e($task['title']) ?> (#<?= $task['id'] ?>)</h2>
-<ul>
- <li>
- <?= dt('Created on %B %e, %Y at %k:%M %p', $task['date_creation']) ?>
- </li>
- <?php if ($task['date_due']): ?>
- <li>
- <strong><?= dt('Must be done before %B %e, %Y', $task['date_due']) ?></strong>
- </li>
- <?php endif ?>
- <?php if ($task['creator_username']): ?>
- <li>
- <?= t('Created by %s', $task['creator_name'] ?: $task['creator_username']) ?>
- </li>
- <?php endif ?>
- <li>
- <strong>
- <?php if ($task['assignee_username']): ?>
- <?= t('Assigned to %s', $task['assignee_name'] ?: $task['assignee_username']) ?>
- <?php else: ?>
- <?= t('There is nobody assigned') ?>
- <?php endif ?>
- </strong>
- </li>
- <li>
- <?= t('Column on the board:') ?>
- <strong><?= $this->e($task['column_title']) ?></strong>
- </li>
- <li><?= t('Task position:').' '.$this->e($task['position']) ?></li>
- <?php if ($task['category_name']): ?>
- <li>
- <?= t('Category:') ?> <strong><?= $this->e($task['category_name']) ?></strong>
- </li>
- <?php endif ?>
-</ul>
-
-<?php if (! empty($task['description'])): ?>
- <h2><?= t('Description') ?></h2>
- <?= $this->text->markdown($task['description']) ?: t('There is no description.') ?>
-<?php endif ?>
-
+<?= $this->render('task/changes', array('changes' => $changes, 'task' => $task)) ?>
<?= $this->render('notification/footer', array('task' => $task, 'application_url' => $application_url)) ?> \ No newline at end of file
diff --git a/app/Template/task/changes.php b/app/Template/task/changes.php
new file mode 100644
index 00000000..c7fc0d52
--- /dev/null
+++ b/app/Template/task/changes.php
@@ -0,0 +1,78 @@
+<?php if (! empty($changes)): ?>
+ <ul>
+ <?php
+
+ foreach ($changes as $field => $value) {
+
+ switch ($field) {
+ case 'title':
+ echo '<li>'.t('New title: %s', $task['title']).'</li>';
+ break;
+ case 'owner_id':
+ if (empty($task['owner_id'])) {
+ echo '<li>'.t('The task is not assigned anymore').'</li>';
+ }
+ else {
+ echo '<li>'.t('New assignee: %s', $task['assignee_name'] ?: $task['assignee_username']).'</li>';
+ }
+ break;
+ case 'category_id':
+ if (empty($task['category_id'])) {
+ echo '<li>'.t('There is no category now').'</li>';
+ }
+ else {
+ echo '<li>'.t('New category: %s', $task['category_name']).'</li>';
+ }
+ break;
+ case 'color_id':
+ echo '<li>'.t('New color: %s', $this->text->in($task['color_id'], $this->task->getColors())).'</li>';
+ break;
+ case 'score':
+ echo '<li>'.t('New complexity: %d', $task['score']).'</li>';
+ break;
+ case 'date_due':
+ if (empty($task['date_due'])) {
+ echo '<li>'.t('The due date have been removed').'</li>';
+ }
+ else {
+ echo '<li>'.dt('New due date: %B %e, %Y', $task['date_due']).'</li>';
+ }
+ break;
+ case 'description':
+ if (empty($task['description'])) {
+ echo '<li>'.t('There is no description anymore').'</li>';
+ }
+ break;
+ case 'recurrence_status':
+ case 'recurrence_trigger':
+ case 'recurrence_factor':
+ case 'recurrence_timeframe':
+ case 'recurrence_basedate':
+ case 'recurrence_parent':
+ case 'recurrence_child':
+ echo '<li>'.t('Recurrence settings have been modified').'</li>';
+ break;
+ case 'time_spent':
+ echo '<li>'.t('Time spent changed: %sh', $task['time_spent']).'</li>';
+ break;
+ case 'time_estimated':
+ echo '<li>'.t('Time estimated changed: %sh', $task['time_estimated']).'</li>';
+ break;
+ case 'date_started':
+ if ($value != 0) {
+ echo '<li>'.dt('Start date changed: %B %e, %Y', $task['date_started']).'</li>';
+ }
+ break;
+ default:
+ echo '<li>'.t('The field "%s" have been updated', $field).'</li>';
+ }
+ }
+
+ ?>
+ </ul>
+
+ <?php if (! empty($changes['description'])): ?>
+ <p><?= t('The description have been modified') ?></p>
+ <div class="markdown"><?= $this->text->markdown($task['description']) ?></div>
+ <?php endif ?>
+<?php endif ?> \ No newline at end of file
diff --git a/app/Template/task/edit.php b/app/Template/task/edit.php
index 2900b739..359df779 100644
--- a/app/Template/task/edit.php
+++ b/app/Template/task/edit.php
@@ -9,11 +9,17 @@
<div class="form-column">
<?= $this->form->label(t('Title'), 'title') ?>
- <?= $this->form->text('title', $values, $errors, array('required', 'maxlength="200"')) ?><br/>
+ <?= $this->form->text('title', $values, $errors, array('autofocus', 'required', 'maxlength="200"', 'tabindex="1"')) ?><br/>
<?= $this->form->label(t('Description'), 'description') ?>
<div class="form-tabs">
+ <div class="write-area">
+ <?= $this->form->textarea('description', $values, $errors, array('placeholder="'.t('Leave a description').'"', 'tabindex="2"')) ?>
+ </div>
+ <div class="preview-area">
+ <div class="markdown"></div>
+ </div>
<ul class="form-tabs-nav">
<li class="form-tab form-tab-selected">
<i class="fa fa-pencil-square-o fa-fw"></i><a id="markdown-write" href="#"><?= t('Write') ?></a>
@@ -22,12 +28,6 @@
<a id="markdown-preview" href="#"><i class="fa fa-eye fa-fw"></i><?= t('Preview') ?></a>
</li>
</ul>
- <div class="write-area">
- <?= $this->form->textarea('description', $values, $errors, array('placeholder="'.t('Leave a description').'"')) ?>
- </div>
- <div class="preview-area">
- <div class="markdown"></div>
- </div>
</div>
<div class="form-help"><a href="http://kanboard.net/documentation/syntax-guide" target="_blank" rel="noreferrer"><?= t('Write your text in Markdown') ?></a></div>
@@ -39,24 +39,24 @@
<?= $this->form->hidden('project_id', $values) ?>
<?= $this->form->label(t('Assignee'), 'owner_id') ?>
- <?= $this->form->select('owner_id', $users_list, $values, $errors) ?><br/>
+ <?= $this->form->select('owner_id', $users_list, $values, $errors, array('tabindex="3"')) ?><br/>
<?= $this->form->label(t('Category'), 'category_id') ?>
- <?= $this->form->select('category_id', $categories_list, $values, $errors) ?><br/>
+ <?= $this->form->select('category_id', $categories_list, $values, $errors, array('tabindex="4"')) ?><br/>
<?= $this->form->label(t('Color'), 'color_id') ?>
- <?= $this->form->select('color_id', $colors_list, $values, $errors) ?><br/>
+ <?= $this->form->select('color_id', $colors_list, $values, $errors, array('tabindex="5"')) ?><br/>
<?= $this->form->label(t('Complexity'), 'score') ?>
- <?= $this->form->number('score', $values, $errors) ?><br/>
+ <?= $this->form->number('score', $values, $errors, array('tabindex="6"')) ?><br/>
<?= $this->form->label(t('Due Date'), 'date_due') ?>
- <?= $this->form->text('date_due', $values, $errors, array('placeholder="'.$this->text->in($date_format, $date_formats).'"'), 'form-date') ?><br/>
+ <?= $this->form->text('date_due', $values, $errors, array('placeholder="'.$this->text->in($date_format, $date_formats).'"', 'tabindex="7"'), 'form-date') ?><br/>
<div class="form-help"><?= t('Others formats accepted: %s and %s', date('Y-m-d'), date('Y_m_d')) ?></div>
</div>
<div class="form-actions">
- <input type="submit" value="<?= t('Save') ?>" class="btn btn-blue"/>
+ <input type="submit" value="<?= t('Save') ?>" class="btn btn-blue" tabindex="10">
<?= t('or') ?>
<?php if ($ajax): ?>
<?= $this->url->link(t('cancel'), 'board', 'show', array('project_id' => $task['project_id']), false, 'close-popover') ?>
diff --git a/app/Template/task/new.php b/app/Template/task/new.php
index bd00d347..181b82bf 100644
--- a/app/Template/task/new.php
+++ b/app/Template/task/new.php
@@ -17,11 +17,17 @@
<div class="form-column">
<?= $this->form->label(t('Title'), 'title') ?>
- <?= $this->form->text('title', $values, $errors, array('autofocus', 'required', 'maxlength="200"'), 'form-input-large') ?><br/>
+ <?= $this->form->text('title', $values, $errors, array('autofocus', 'required', 'maxlength="200"', 'tabindex="1"'), 'form-input-large') ?><br/>
<?= $this->form->label(t('Description'), 'description') ?>
<div class="form-tabs">
+ <div class="write-area">
+ <?= $this->form->textarea('description', $values, $errors, array('placeholder="'.t('Leave a description').'"', 'tabindex="2"')) ?>
+ </div>
+ <div class="preview-area">
+ <div class="markdown"></div>
+ </div>
<ul class="form-tabs-nav">
<li class="form-tab form-tab-selected">
<i class="fa fa-pencil-square-o fa-fw"></i><a id="markdown-write" href="#"><?= t('Write') ?></a>
@@ -30,12 +36,6 @@
<a id="markdown-preview" href="#"><i class="fa fa-eye fa-fw"></i><?= t('Preview') ?></a>
</li>
</ul>
- <div class="write-area">
- <?= $this->form->textarea('description', $values, $errors, array('placeholder="'.t('Leave a description').'"')) ?>
- </div>
- <div class="preview-area">
- <div class="markdown"></div>
- </div>
</div>
<div class="form-help"><a href="http://kanboard.net/documentation/syntax-guide" target="_blank" rel="noreferrer"><?= t('Write your text in Markdown') ?></a></div>
@@ -49,35 +49,35 @@
<?= $this->form->hidden('project_id', $values) ?>
<?= $this->form->label(t('Assignee'), 'owner_id') ?>
- <?= $this->form->select('owner_id', $users_list, $values, $errors) ?><br/>
+ <?= $this->form->select('owner_id', $users_list, $values, $errors, array('tabindex="3"')) ?><br/>
<?= $this->form->label(t('Category'), 'category_id') ?>
- <?= $this->form->select('category_id', $categories_list, $values, $errors) ?><br/>
+ <?= $this->form->select('category_id', $categories_list, $values, $errors, array('tabindex="4"')) ?><br/>
<?php if (! (count($swimlanes_list) === 1 && key($swimlanes_list) === 0)): ?>
<?= $this->form->label(t('Swimlane'), 'swimlane_id') ?>
- <?= $this->form->select('swimlane_id', $swimlanes_list, $values, $errors) ?><br/>
+ <?= $this->form->select('swimlane_id', $swimlanes_list, $values, $errors, array('tabindex="5"')) ?><br/>
<?php endif ?>
<?= $this->form->label(t('Column'), 'column_id') ?>
- <?= $this->form->select('column_id', $columns_list, $values, $errors) ?><br/>
+ <?= $this->form->select('column_id', $columns_list, $values, $errors, array('tabindex="6"')) ?><br/>
<?= $this->form->label(t('Color'), 'color_id') ?>
- <?= $this->form->select('color_id', $colors_list, $values, $errors) ?><br/>
+ <?= $this->form->select('color_id', $colors_list, $values, $errors, array('tabindex="7"')) ?><br/>
<?= $this->form->label(t('Complexity'), 'score') ?>
- <?= $this->form->number('score', $values, $errors) ?><br/>
+ <?= $this->form->number('score', $values, $errors, array('tabindex="8"')) ?><br/>
<?= $this->form->label(t('Original estimate'), 'time_estimated') ?>
- <?= $this->form->numeric('time_estimated', $values, $errors) ?> <?= t('hours') ?><br/>
+ <?= $this->form->numeric('time_estimated', $values, $errors, array('tabindex="9"')) ?> <?= t('hours') ?><br/>
<?= $this->form->label(t('Due Date'), 'date_due') ?>
- <?= $this->form->text('date_due', $values, $errors, array('placeholder="'.$this->text->in($date_format, $date_formats).'"'), 'form-date') ?><br/>
+ <?= $this->form->text('date_due', $values, $errors, array('placeholder="'.$this->text->in($date_format, $date_formats).'"', 'tabindex="10"'), 'form-date') ?><br/>
<div class="form-help"><?= t('Others formats accepted: %s and %s', date('Y-m-d'), date('Y_m_d')) ?></div>
</div>
<div class="form-actions">
- <input type="submit" value="<?= t('Save') ?>" class="btn btn-blue"/>
+ <input type="submit" value="<?= t('Save') ?>" class="btn btn-blue" tabindex="11"/>
<?= t('or') ?> <?= $this->url->link(t('cancel'), 'board', 'show', array('project_id' => $values['project_id']), false, 'close-popover') ?>
</div>
</form>
diff --git a/app/Template/user/last.php b/app/Template/user/last.php
index ab25f79b..8097d6f1 100644
--- a/app/Template/user/last.php
+++ b/app/Template/user/last.php
@@ -5,11 +5,11 @@
<?php if (empty($last_logins)): ?>
<p class="alert"><?= t('Never connected.') ?></p>
<?php else: ?>
- <table class="table-small">
+ <table class="table-small table-fixed">
<tr>
- <th><?= t('Login date') ?></th>
- <th><?= t('Authentication method') ?></th>
- <th><?= t('IP address') ?></th>
+ <th class="column-20"><?= t('Login date') ?></th>
+ <th class="column-15"><?= t('Authentication method') ?></th>
+ <th class="column-15"><?= t('IP address') ?></th>
<th><?= t('User agent') ?></th>
</tr>
<?php foreach($last_logins as $login): ?>
@@ -17,7 +17,7 @@
<td><?= dt('%B %e, %Y at %k:%M %p', $login['date_creation']) ?></td>
<td><?= $this->e($login['auth_type']) ?></td>
<td><?= $this->e($login['ip']) ?></td>
- <td><?= $this->e($this->text->truncate($login['user_agent'])) ?></td>
+ <td><?= $this->e($login['user_agent']) ?></td>
</tr>
<?php endforeach ?>
</table>
diff --git a/app/Template/user/notifications.php b/app/Template/user/notifications.php
index df5cbb9b..a425705d 100644
--- a/app/Template/user/notifications.php
+++ b/app/Template/user/notifications.php
@@ -5,15 +5,27 @@
<form method="post" action="<?= $this->url->href('user', 'notifications', array('user_id' => $user['id'])) ?>" autocomplete="off">
<?= $this->form->csrf() ?>
+ <?= $this->form->checkbox('notifications_enabled', t('Enable email notifications'), '1', $notifications['notifications_enabled'] == 1) ?><br>
- <?= $this->form->checkbox('notifications_enabled', t('Enable email notifications'), '1', $notifications['notifications_enabled'] == 1) ?><br/>
+ <hr>
+
+ <?= t('I want to receive notifications for:') ?>
+
+ <?= $this->form->radios('notifications_filter', array(
+ \Model\Notification::FILTER_NONE => t('All tasks'),
+ \Model\Notification::FILTER_ASSIGNEE => t('Only for tasks assigned to me'),
+ \Model\Notification::FILTER_CREATOR => t('Only for tasks created by me'),
+ \Model\Notification::FILTER_BOTH => t('Only for tasks created by me and assigned to me'),
+ ), $notifications) ?><br>
+
+ <hr>
<?php if (! empty($projects)): ?>
<p><?= t('I want to receive notifications only for those projects:') ?><br/><br/></p>
<div class="form-checkbox-group">
<?php foreach ($projects as $project_id => $project_name): ?>
- <?= $this->form->checkbox('projects['.$project_id.']', $project_name, '1', isset($notifications['project_'.$project_id])) ?><br/>
+ <?= $this->form->checkbox('projects['.$project_id.']', $project_name, '1', isset($notifications['project_'.$project_id])) ?><br>
<?php endforeach ?>
</div>
<?php endif ?>
diff --git a/app/Template/user/sessions.php b/app/Template/user/sessions.php
index a7504a7a..67b2c8cd 100644
--- a/app/Template/user/sessions.php
+++ b/app/Template/user/sessions.php
@@ -5,20 +5,20 @@
<?php if (empty($sessions)): ?>
<p class="alert"><?= t('No session.') ?></p>
<?php else: ?>
- <table class="table-small">
+ <table class="table-small table-fixed">
<tr>
- <th><?= t('Creation date') ?></th>
- <th><?= t('Expiration date') ?></th>
- <th><?= t('IP address') ?></th>
+ <th class="column-20"><?= t('Creation date') ?></th>
+ <th class="column-20"><?= t('Expiration date') ?></th>
+ <th class="column-15"><?= t('IP address') ?></th>
<th><?= t('User agent') ?></th>
- <th><?= t('Action') ?></th>
+ <th class="column-10"><?= t('Action') ?></th>
</tr>
<?php foreach($sessions as $session): ?>
<tr>
<td><?= dt('%B %e, %Y at %k:%M %p', $session['date_creation']) ?></td>
<td><?= dt('%B %e, %Y at %k:%M %p', $session['expiration']) ?></td>
<td><?= $this->e($session['ip']) ?></td>
- <td><?= $this->e($this->text->truncate($session['user_agent'])) ?></td>
+ <td><?= $this->e($session['user_agent']) ?></td>
<td><?= $this->url->link(t('Remove'), 'user', 'removeSession', array('user_id' => $user['id'], 'id' => $session['id']), true) ?></td>
</tr>
<?php endforeach ?>