Handle multiple avatar sizes
This commit is contained in:
@@ -35,6 +35,17 @@ class UserSession extends Base
|
||||
$this->sessionStorage->postAuthenticationValidated = false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get user properties
|
||||
*
|
||||
* @access public
|
||||
* @return array
|
||||
*/
|
||||
public function getAll()
|
||||
{
|
||||
return $this->sessionStorage->user;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get user application role
|
||||
*
|
||||
|
||||
64
app/Helper/AvatarHelper.php
Normal file
64
app/Helper/AvatarHelper.php
Normal file
@@ -0,0 +1,64 @@
|
||||
<?php
|
||||
|
||||
namespace Kanboard\Helper;
|
||||
|
||||
use Kanboard\Core\Base;
|
||||
|
||||
/**
|
||||
* Avatar Helper
|
||||
*
|
||||
* @package helper
|
||||
* @author Frederic Guillot
|
||||
*/
|
||||
class AvatarHelper extends Base
|
||||
{
|
||||
/**
|
||||
* Render user avatar
|
||||
*
|
||||
* @access public
|
||||
* @param string $user_id
|
||||
* @param string $username
|
||||
* @param string $name
|
||||
* @param string $email
|
||||
* @param string $css
|
||||
* @param int $size
|
||||
* @return string
|
||||
*/
|
||||
public function render($user_id, $username, $name, $email, $css = 'avatar-left', $size = 48)
|
||||
{
|
||||
if (empty($user_id) && empty($username)) {
|
||||
$html = $this->avatarManager->renderDefault($size);
|
||||
} else {
|
||||
$html = $this->avatarManager->render($user_id, $username, $name, $email, $size);
|
||||
}
|
||||
|
||||
return '<div class="avatar avatar-'.$size.' '.$css.'">'.$html.'</div>';
|
||||
}
|
||||
|
||||
/**
|
||||
* Render small user avatar
|
||||
*
|
||||
* @access public
|
||||
* @param string $user_id
|
||||
* @param string $username
|
||||
* @param string $name
|
||||
* @param string $email
|
||||
* @return string
|
||||
*/
|
||||
public function small($user_id, $username, $name, $email, $css = '')
|
||||
{
|
||||
return $this->render($user_id, $username, $name, $email, $css, 20);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get a small avatar for the current user
|
||||
*
|
||||
* @access public
|
||||
* @return string
|
||||
*/
|
||||
public function currentUserSmall($css = '')
|
||||
{
|
||||
$user = $this->userSession->getAll();
|
||||
return $this->small($user['id'], $user['username'], $user['name'], $user['email'], $css);
|
||||
}
|
||||
}
|
||||
@@ -156,27 +156,6 @@ class UserHelper extends Base
|
||||
*/
|
||||
public function getFullname(array $user = array())
|
||||
{
|
||||
return $this->user->getFullname(empty($user) ? $this->sessionStorage->user : $user);
|
||||
}
|
||||
|
||||
/**
|
||||
* Display avatar
|
||||
*
|
||||
* @access public
|
||||
* @param string $user_id
|
||||
* @param string $username
|
||||
* @param string $name
|
||||
* @param string $email
|
||||
* @return string
|
||||
*/
|
||||
public function avatar($user_id, $username, $name, $email)
|
||||
{
|
||||
if (empty($user_id) && empty($username)) {
|
||||
$html = $this->avatarManager->renderDefault(48);
|
||||
} else {
|
||||
$html = $this->avatarManager->render($user_id, $username, $name, $email, 48);
|
||||
}
|
||||
|
||||
return '<div class="avatar">'.$html.'</div>';
|
||||
return $this->user->getFullname(empty($user) ? $this->userSession->getAll() : $user);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,6 +26,7 @@ class HelperProvider implements ServiceProviderInterface
|
||||
$container['helper']->register('text', '\Kanboard\Helper\TextHelper');
|
||||
$container['helper']->register('url', '\Kanboard\Helper\UrlHelper');
|
||||
$container['helper']->register('user', '\Kanboard\Helper\UserHelper');
|
||||
$container['helper']->register('avatar', '\Kanboard\Helper\AvatarHelper');
|
||||
|
||||
$container['template'] = new Template($container['helper']);
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<div class="comment <?= isset($preview) ? 'comment-preview' : '' ?>" id="comment-<?= $comment['id'] ?>">
|
||||
|
||||
<?= $this->user->avatar($comment['user_id'], $comment['username'], $comment['name'], $comment['email']) ?>
|
||||
<?= $this->avatar->render($comment['user_id'], $comment['username'], $comment['name'], $comment['email']) ?>
|
||||
|
||||
<div class="comment-title">
|
||||
<?php if (! empty($comment['username'])): ?>
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<?= $this->dt->datetime($event['date_creation']) ?>
|
||||
</p>
|
||||
<div class="activity-content">
|
||||
<?= $this->user->avatar(
|
||||
<?= $this->avatar->render(
|
||||
$event['creator_id'],
|
||||
$event['author_username'],
|
||||
$event['author_name'],
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
<?php endif ?>
|
||||
|
||||
<div class="dropdown">
|
||||
<a href="#" class="dropdown-menu dropdown-menu-link-icon"><i class="fa fa-user fa-fw"></i><i class="fa fa-caret-down"></i></a>
|
||||
<a href="#" class="dropdown-menu dropdown-menu-link-icon"><?= $this->avatar->currentUserSmall('avatar-inline') ?><i class="fa fa-caret-down"></i></a>
|
||||
<ul>
|
||||
<li class="no-hover"><strong><?= $this->text->e($this->user->getFullname()) ?></strong></li>
|
||||
<li>
|
||||
|
||||
Reference in New Issue
Block a user