summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrederic Guillot <fred@kanboard.net>2015-07-04 20:12:17 -0400
committerFrederic Guillot <fred@kanboard.net>2015-07-04 20:12:17 -0400
commitc231b65cfc54aad8b143a76e19c6aea428f42a5c (patch)
tree0550e6185d8681f354dae42d2d44a2466e37a8af
parent0a9ad08e9e98645b8d8d53a0d4f56558a2aa8a78 (diff)
Display user initials when tasks are in collapsed mode
-rw-r--r--app/Helper/User.php18
-rw-r--r--app/Template/board/task_private.php5
-rw-r--r--tests/units/UserHelperTest.php17
3 files changed, 40 insertions, 0 deletions
diff --git a/app/Helper/User.php b/app/Helper/User.php
index 1cad6042..c1fff8c6 100644
--- a/app/Helper/User.php
+++ b/app/Helper/User.php
@@ -11,6 +11,24 @@ namespace Helper;
class User extends \Core\Base
{
/**
+ * Get initials from a user
+ *
+ * @access public
+ * @param string $name
+ * @return string
+ */
+ public function getInitials($name)
+ {
+ $initials = '';
+
+ foreach (explode(' ', $name) as $string) {
+ $initials .= mb_substr($string, 0, 1);
+ }
+
+ return mb_strtoupper($initials);
+ }
+
+ /**
* Get user id
*
* @access public
diff --git a/app/Template/board/task_private.php b/app/Template/board/task_private.php
index 3cd471d7..48e931c9 100644
--- a/app/Template/board/task_private.php
+++ b/app/Template/board/task_private.php
@@ -11,6 +11,11 @@
<?= $this->render('board/task_menu', array('task' => $task)) ?>
<div class="task-board-collapsed" style="display: none">
+ <?php if (! empty($task['assignee_username'])): ?>
+ <span title="<?= $this->e($task['assignee_name'] ?: $task['assignee_username']) ?>">
+ <?= $this->e($this->user->getInitials($task['assignee_name'] ?: $task['assignee_username'])) ?>
+ </span> -
+ <?php endif ?>
<?= $this->url->link($this->e($task['title']), 'task', 'show', array('task_id' => $task['id'], 'project_id' => $task['project_id']), false, 'task-board-collapsed-title') ?>
</div>
diff --git a/tests/units/UserHelperTest.php b/tests/units/UserHelperTest.php
new file mode 100644
index 00000000..749380c6
--- /dev/null
+++ b/tests/units/UserHelperTest.php
@@ -0,0 +1,17 @@
+<?php
+
+require_once __DIR__.'/Base.php';
+
+use Helper\User;
+
+class UserHelperTest extends Base
+{
+ public function testInitials()
+ {
+ $h = new User($this->container);
+
+ $this->assertEquals('CN', $h->getInitials('chuck norris'));
+ $this->assertEquals('A', $h->getInitials('admin'));
+ $this->assertEquals('漢', $h->getInitials('漢字'));
+ }
+}