Acl refactoring

This commit is contained in:
Frédéric Guillot
2014-12-31 12:37:15 -05:00
parent 66f150d887
commit 772804add8
93 changed files with 943 additions and 626 deletions

View File

@@ -1,7 +1,7 @@
<section id="main">
<div class="page-header">
<ul>
<?php if ($this->acl->isAdminUser()): ?>
<?php if ($this->userSession->isAdmin()): ?>
<li><i class="fa fa-plus fa-fw"></i><?= $this->a(t('New project'), 'project', 'create') ?></li>
<?php endif ?>
<li><i class="fa fa-lock fa-fw"></i><?= $this->a(t('New private project'), 'project', 'create', array('private' => 1)) ?></li>

View File

@@ -7,7 +7,7 @@
</div>
<section class="sidebar-container" id="project-section">
<?= $this->render('project/sidebar', array('project' => $project, 'is_owner' => $is_owner)) ?>
<?= $this->render('project/sidebar', array('project' => $project)) ?>
<div class="sidebar-content">
<?= $project_content_for_layout ?>

View File

@@ -5,7 +5,7 @@
<?= $this->a(t('Summary'), 'project', 'show', array('project_id' => $project['id'])) ?>
</li>
<?php if ($this->acl->isAdminUser() || $project['is_private']): ?>
<?php if ($this->acl->isManagerActionAllowed($project['id'])): ?>
<li>
<?= $this->a(t('Public access'), 'project', 'share', array('project_id' => $project['id'])) ?>
</li>
@@ -15,27 +15,23 @@
<li>
<?= $this->a(t('Edit project'), 'project', 'edit', array('project_id' => $project['id'])) ?>
</li>
<li>
<?= $this->a(t('Edit board'), 'board', 'edit', array('project_id' => $project['id'])) ?>
</li>
<li>
<?= $this->a(t('Category management'), 'category', 'index', array('project_id' => $project['id'])) ?>
</li>
<li>
<?= $this->a(t('Swimlanes'), 'swimlane', 'index', array('project_id' => $project['id'])) ?>
</li>
<?php if ($project['is_private'] == 0): ?>
<li>
<?= $this->a(t('User management'), 'project', 'users', array('project_id' => $project['id'])) ?>
</li>
<?php endif ?>
<?php if ($this->acl->isAdminUser() || $is_owner || $project['is_private']): ?>
<li>
<?= $this->a(t('Edit board'), 'board', 'edit', array('project_id' => $project['id'])) ?>
</li>
<li>
<?= $this->a(t('Category management'), 'category', 'index', array('project_id' => $project['id'])) ?>
</li>
<li>
<?= $this->a(t('Swimlanes'), 'swimlane', 'index', array('project_id' => $project['id'])) ?>
</li>
<?php if ($project['is_private'] == 0): ?>
<li>
<?= $this->a(t('User management'), 'project', 'users', array('project_id' => $project['id'])) ?>
</li>
<?php endif ?>
<li>
<?= $this->a(t('Automatic actions'), 'action', 'index', array('project_id' => $project['id'])) ?>
</li>
<?php endif ?>
<?php if ($this->acl->isAdminUser() || $project['is_private']): ?>
<li>
<?= $this->a(t('Automatic actions'), 'action', 'index', array('project_id' => $project['id'])) ?>
</li>
<li>
<?= $this->a(t('Duplicate'), 'project', 'duplicate', array('project_id' => $project['id']), true) ?>
</li>
@@ -46,13 +42,15 @@
<?= $this->a(t('Enable'), 'project', 'enable', array('project_id' => $project['id']), true) ?>
<?php endif ?>
</li>
<li>
<?= $this->a(t('Remove'), 'project', 'remove', array('project_id' => $project['id'])) ?>
</li>
<?php if ($this->userSession->isAdmin()): ?>
<li>
<?= $this->a(t('Remove'), 'project', 'remove', array('project_id' => $project['id'])) ?>
</li>
<?php endif ?>
<?php endif ?>
</ul>
<?php if ($this->acl->isAdminUser() || $project['is_private']): ?>
<?php if ($this->acl->isManagerActionAllowed($project['id'])): ?>
<h2><?= t('Exports') ?></h2>
<ul>
<li>

View File

@@ -18,15 +18,15 @@
<?php foreach ($users['allowed'] as $user_id => $username): ?>
<tr>
<td><?= $this->e($username) ?></td>
<td><?= isset($users['owners'][$user_id]) ? t('Project manager') : t('Project member') ?></td>
<td><?= isset($users['managers'][$user_id]) ? t('Project manager') : t('Project member') ?></td>
<td>
<ul>
<li><?= $this->a(t('Revoke'), 'project', 'revoke', array('project_id' => $project['id'], 'user_id' => $user_id), true) ?></li>
<li>
<?php if (isset($users['owners'][$user_id])): ?>
<?= $this->a(t('Set project member'), 'project', 'setOwner', array('project_id' => $project['id'], 'user_id' => $user_id, 'is_owner' => 0), true) ?>
<?php if (isset($users['managers'][$user_id])): ?>
<?= $this->a(t('Set project member'), 'project', 'role', array('project_id' => $project['id'], 'user_id' => $user_id, 'is_owner' => 0), true) ?>
<?php else: ?>
<?= $this->a(t('Set project manager'), 'project', 'setOwner', array('project_id' => $project['id'], 'user_id' => $user_id, 'is_owner' => 1), true) ?>
<?= $this->a(t('Set project manager'), 'project', 'role', array('project_id' => $project['id'], 'user_id' => $user_id, 'is_owner' => 1), true) ?>
<?php endif ?>
</li>
</ul>