Template helpers refactoring
This commit is contained in:
@@ -42,6 +42,7 @@ class Acl extends Base
|
||||
'category' => array('index', 'save', 'edit', 'update', 'confirm', 'remove'),
|
||||
'action' => array('index', 'event', 'params', 'create', 'confirm', 'remove'),
|
||||
'analytic' => array('tasks', 'users', 'cfd'),
|
||||
'swimlane' => array('index', 'save', 'change', 'edit', 'update', 'confirm', 'remove', 'disable', 'enable', 'moveup', 'movedown'),
|
||||
);
|
||||
|
||||
/**
|
||||
@@ -96,7 +97,7 @@ class Acl extends Base
|
||||
*/
|
||||
public function isAdminUser()
|
||||
{
|
||||
return isset($_SESSION['user']['is_admin']) && $_SESSION['user']['is_admin'] === true;
|
||||
return isset($this->session['user']['is_admin']) && $this->session['user']['is_admin'] === true;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -107,7 +108,7 @@ class Acl extends Base
|
||||
*/
|
||||
public function isRegularUser()
|
||||
{
|
||||
return isset($_SESSION['user']['is_admin']) && $_SESSION['user']['is_admin'] === false;
|
||||
return isset($this->session['user']['is_admin']) && $this->session['user']['is_admin'] === false;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -118,7 +119,18 @@ class Acl extends Base
|
||||
*/
|
||||
public function getUserId()
|
||||
{
|
||||
return isset($_SESSION['user']['id']) ? (int) $_SESSION['user']['id'] : 0;
|
||||
return isset($this->session['user']['id']) ? (int) $this->session['user']['id'] : 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if the given user_id is the connected user
|
||||
*
|
||||
* @param integer $user_id User id
|
||||
* @return boolean
|
||||
*/
|
||||
public function isCurrentUser($user_id)
|
||||
{
|
||||
return $this->acl->getUserId() == $user_id;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -129,7 +141,7 @@ class Acl extends Base
|
||||
*/
|
||||
public function isLogged()
|
||||
{
|
||||
return ! empty($_SESSION['user']);
|
||||
return ! empty($this->session['user']);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -142,10 +154,10 @@ class Acl extends Base
|
||||
public function isRememberMe($value = null)
|
||||
{
|
||||
if ($value !== null) {
|
||||
$_SESSION['is_remember_me'] = $value;
|
||||
$this->session['is_remember_me'] = $value;
|
||||
}
|
||||
|
||||
return empty($_SESSION['is_remember_me']) ? false : $_SESSION['is_remember_me'];
|
||||
return empty($this->session['is_remember_me']) ? false : $this->session['is_remember_me'];
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -10,6 +10,8 @@ use Pimple\Container;
|
||||
* @package model
|
||||
* @author Frederic Guillot
|
||||
*
|
||||
* @property \Core\Session $session
|
||||
* @property \Core\Template $template
|
||||
* @property \Model\Acl $acl
|
||||
* @property \Model\Action $action
|
||||
* @property \Model\Authentication $authentication
|
||||
|
||||
@@ -76,12 +76,13 @@ class Config extends Base
|
||||
return $value ?: $default_value;
|
||||
}
|
||||
|
||||
if (! isset($_SESSION['config'][$name])) {
|
||||
$_SESSION['config'] = $this->getAll();
|
||||
// Cache config in session
|
||||
if (! isset($this->session['config'][$name])) {
|
||||
$this->session['config'] = $this->getAll();
|
||||
}
|
||||
|
||||
if (! empty($_SESSION['config'][$name])) {
|
||||
return $_SESSION['config'][$name];
|
||||
if (isset($this->session['config'][$name])) {
|
||||
return $this->session['config'][$name];
|
||||
}
|
||||
|
||||
return $default_value;
|
||||
@@ -126,7 +127,7 @@ class Config extends Base
|
||||
*/
|
||||
public function reload()
|
||||
{
|
||||
$_SESSION['config'] = $this->getAll();
|
||||
$this->session['config'] = $this->getAll();
|
||||
$this->setupTranslations();
|
||||
}
|
||||
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
namespace Model;
|
||||
|
||||
use Core\Session;
|
||||
use Core\Template;
|
||||
use Swift_Message;
|
||||
use Swift_Mailer;
|
||||
use Swift_TransportException;
|
||||
@@ -184,8 +183,10 @@ class Notification extends Base
|
||||
*/
|
||||
public function getMailContent($template, array $data)
|
||||
{
|
||||
$tpl = new Template;
|
||||
return $tpl->load('notification/'.$template, $data + array('application_url' => $this->config->get('application_url')));
|
||||
return $this->template->render(
|
||||
'notification/'.$template,
|
||||
$data + array('application_url' => $this->config->get('application_url'))
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -2,8 +2,6 @@
|
||||
|
||||
namespace Model;
|
||||
|
||||
use Core\Template;
|
||||
|
||||
/**
|
||||
* Project activity model
|
||||
*
|
||||
@@ -134,8 +132,10 @@ class ProjectActivity extends Base
|
||||
*/
|
||||
public function getContent(array $params)
|
||||
{
|
||||
$tpl = new Template;
|
||||
return $tpl->load('event/'.str_replace('.', '_', $params['event_name']), $params);
|
||||
return $this->template->render(
|
||||
'event/'.str_replace('.', '_', $params['event_name']),
|
||||
$params
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -264,6 +264,10 @@ class ProjectPermission extends Base
|
||||
*/
|
||||
public function adminAllowed($project_id, $user_id)
|
||||
{
|
||||
if ($this->user->isAdmin($user_id)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if ($this->isUserAllowed($project_id, $user_id) && $this->project->isPrivate($project_id)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -28,6 +28,17 @@ class User extends Base
|
||||
*/
|
||||
const EVERYBODY_ID = -1;
|
||||
|
||||
/**
|
||||
* Return the full name
|
||||
*
|
||||
* @param array $user User properties
|
||||
* @return string
|
||||
*/
|
||||
public function getFullname(array $user)
|
||||
{
|
||||
return $user['name'] ?: $user['username'];
|
||||
}
|
||||
|
||||
/**
|
||||
* Return true is the given user id is administrator
|
||||
*
|
||||
@@ -54,7 +65,7 @@ class User extends Base
|
||||
*/
|
||||
public function getFavoriteProjectId()
|
||||
{
|
||||
return isset($_SESSION['user']['default_project_id']) ? $_SESSION['user']['default_project_id'] : 0;
|
||||
return isset($this->session['user']['default_project_id']) ? $this->session['user']['default_project_id'] : 0;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -65,7 +76,7 @@ class User extends Base
|
||||
*/
|
||||
public function getLastSeenProjectId()
|
||||
{
|
||||
return empty($_SESSION['user']['last_show_project_id']) ? 0 : $_SESSION['user']['last_show_project_id'];
|
||||
return empty($this->session['last_show_project_id']) ? 0 : $this->session['last_show_project_id'];
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -76,7 +87,7 @@ class User extends Base
|
||||
*/
|
||||
public function storeLastSeenProjectId($project_id)
|
||||
{
|
||||
$_SESSION['user']['last_show_project_id'] = (int) $project_id;
|
||||
$this->session['last_show_project_id'] = (int) $project_id;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -276,7 +287,7 @@ class User extends Base
|
||||
$result = $this->db->table(self::TABLE)->eq('id', $values['id'])->update($values);
|
||||
|
||||
// If the user is connected refresh his session
|
||||
if (Session::isOpen() && $_SESSION['user']['id'] == $values['id']) {
|
||||
if (Session::isOpen() && $this->acl->getUserId() == $values['id']) {
|
||||
$this->updateSession();
|
||||
}
|
||||
|
||||
@@ -326,7 +337,7 @@ class User extends Base
|
||||
public function updateSession(array $user = array())
|
||||
{
|
||||
if (empty($user)) {
|
||||
$user = $this->getById($_SESSION['user']['id']);
|
||||
$user = $this->getById($this->acl->getUserId());
|
||||
}
|
||||
|
||||
if (isset($user['password'])) {
|
||||
@@ -338,7 +349,7 @@ class User extends Base
|
||||
$user['is_admin'] = (bool) $user['is_admin'];
|
||||
$user['is_ldap_user'] = (bool) $user['is_ldap_user'];
|
||||
|
||||
$_SESSION['user'] = $user;
|
||||
$this->session['user'] = $user;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -457,7 +468,7 @@ class User extends Base
|
||||
if ($v->execute()) {
|
||||
|
||||
// Check password
|
||||
if ($this->authentication->authenticate($_SESSION['user']['username'], $values['current_password'])) {
|
||||
if ($this->authentication->authenticate($this->session['user']['username'], $values['current_password'])) {
|
||||
return array(true, array());
|
||||
}
|
||||
else {
|
||||
|
||||
Reference in New Issue
Block a user