Show number of tasks for each column across all swimlanes

This commit is contained in:
Frederic Guillot
2015-09-26 20:41:14 -04:00
parent 625a84d174
commit 6c03925f23
7 changed files with 19 additions and 12 deletions

View File

@@ -252,16 +252,22 @@ class Board extends Base
$swimlanes[$i]['columns'] = $columns; $swimlanes[$i]['columns'] = $columns;
$swimlanes[$i]['nb_columns'] = $nb_columns; $swimlanes[$i]['nb_columns'] = $nb_columns;
$swimlanes[$i]['nb_tasks'] = 0; $swimlanes[$i]['nb_tasks'] = 0;
$swimlanes[$i]['nb_swimlanes'] = $ilen;
for ($j = 0; $j < $nb_columns; $j++) { for ($j = 0; $j < $nb_columns; $j++) {
$column_id = $columns[$j]['id']; $column_id = $columns[$j]['id'];
$swimlane_id = $swimlanes[$i]['id']; $swimlane_id = $swimlanes[$i]['id'];
if (! isset($swimlanes[0]['columns'][$j]['nb_column_tasks'])) {
$swimlanes[0]['columns'][$j]['nb_column_tasks'] = 0;
}
$swimlanes[$i]['columns'][$j]['tasks'] = $callback === null ? $this->taskFinder->getTasksByColumnAndSwimlane($project_id, $column_id, $swimlane_id) : $callback($project_id, $column_id, $swimlane_id); $swimlanes[$i]['columns'][$j]['tasks'] = $callback === null ? $this->taskFinder->getTasksByColumnAndSwimlane($project_id, $column_id, $swimlane_id) : $callback($project_id, $column_id, $swimlane_id);
$swimlanes[$i]['columns'][$j]['nb_tasks'] = count($swimlanes[$i]['columns'][$j]['tasks']); $swimlanes[$i]['columns'][$j]['nb_tasks'] = count($swimlanes[$i]['columns'][$j]['tasks']);
$swimlanes[$i]['columns'][$j]['score'] = $this->getColumnSum($swimlanes[$i]['columns'][$j]['tasks'], 'score'); $swimlanes[$i]['columns'][$j]['score'] = $this->getColumnSum($swimlanes[$i]['columns'][$j]['tasks'], 'score');
$swimlanes[$i]['nb_tasks'] += $swimlanes[$i]['columns'][$j]['nb_tasks']; $swimlanes[$i]['nb_tasks'] += $swimlanes[$i]['columns'][$j]['nb_tasks'];
$swimlanes[0]['columns'][$j]['nb_column_tasks'] += $swimlanes[$i]['columns'][$j]['nb_tasks'];
} }
} }

View File

@@ -7,7 +7,7 @@
<!-- column in collapsed mode --> <!-- column in collapsed mode -->
<div class="board-column-collapsed"> <div class="board-column-collapsed">
<span title="<?= t('Task count') ?>" class="board-column-header-task-count" title="<?= t('Show this column') ?>"> <span title="<?= t('Task count') ?>" class="board-column-header-task-count" title="<?= t('Show this column') ?>">
<span id="task-number-column-<?= $column['id'] ?>"><?= $column['nb_tasks'] ?></span> <span id="task-number-column-<?= $column['id'] ?>"><?= $column['nb_column_tasks'] ?></span>
</span> </span>
</div> </div>
@@ -35,13 +35,13 @@
</span> </span>
<?php endif ?> <?php endif ?>
<span title="<?= t('Total number of tasks in this column across all swimlanes') ?>" class="board-column-header-task-count">
(<span id="task-number-column-<?= $column['id'] ?>"><?= $column['nb_column_tasks'] ?></span>)
</span>
<?php if ($column['task_limit']): ?> <?php if ($column['task_limit']): ?>
<span title="<?= t('Task limit') ?>"> <span title="<?= t('Task limit') ?>">
(<span id="task-number-column-<?= $column['id'] ?>"><?= $column['nb_tasks'] ?></span>/<?= $this->e($column['task_limit']) ?>) (<span id="task-number-column-<?= $column['id'] ?>"><?= $this->e($column['task_limit']) ?></span>)
</span>
<?php else: ?>
<span title="<?= t('Task count') ?>" class="board-column-header-task-count">
(<span id="task-number-column-<?= $column['id'] ?>"><?= $column['nb_tasks'] ?></span>)
</span> </span>
<?php endif ?> <?php endif ?>
</div> </div>

View File

@@ -13,7 +13,6 @@
> >
<?php endif ?> <?php endif ?>
<?php $nb_swimlanes = count($swimlanes) ?>
<?php foreach ($swimlanes as $index => $swimlane): ?> <?php foreach ($swimlanes as $index => $swimlane): ?>
<?php if (empty($swimlane['columns'])): ?> <?php if (empty($swimlane['columns'])): ?>
<p class="alert alert-error"><?= t('There is no column in your project!') ?></p> <p class="alert alert-error"><?= t('There is no column in your project!') ?></p>
@@ -26,7 +25,7 @@
)) ?> )) ?>
<?php endif ?> <?php endif ?>
<?php if ($nb_swimlanes > 1): ?> <?php if ($swimlane['nb_swimlanes'] > 1): ?>
<?= $this->render('board/table_swimlane', array( <?= $this->render('board/table_swimlane', array(
'project' => $project, 'project' => $project,
'swimlane' => $swimlane, 'swimlane' => $swimlane,

View File

@@ -1,7 +1,10 @@
<!-- task row --> <!-- task row -->
<tr class="board-swimlane swimlane-row-<?= $swimlane['id'] ?>"> <tr class="board-swimlane swimlane-row-<?= $swimlane['id'] ?>">
<?php foreach ($swimlane['columns'] as $column): ?> <?php foreach ($swimlane['columns'] as $column): ?>
<td class="board-column-<?= $column['id'] ?> <?= $column['task_limit'] && $column['nb_tasks'] > $column['task_limit'] ? 'board-task-list-limit' : '' ?>"> <td class="
board-column-<?= $column['id'] ?>
<?= $column['task_limit'] > 0 && $column['nb_tasks'] > $column['task_limit'] ? 'board-task-list-limit' : '' ?>
">
<!-- tasks list --> <!-- tasks list -->
<div class="board-task-list board-column-expanded" data-column-id="<?= $column['id'] ?>" data-swimlane-id="<?= $swimlane['id'] ?>" data-task-limit="<?= $column['task_limit'] ?>"> <div class="board-task-list board-column-expanded" data-column-id="<?= $column['id'] ?>" data-swimlane-id="<?= $swimlane['id'] ?>" data-task-limit="<?= $column['task_limit'] ?>">

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -35,7 +35,6 @@ div.task-board-status-closed {
overflow: hidden; overflow: hidden;
white-space: nowrap; white-space: nowrap;
text-overflow: ellipsis; text-overflow: ellipsis;
display: inline;
} }
a.task-board-collapsed-title { a.task-board-collapsed-title {