mirror of
https://github.com/Karaka-Management/oms-Admin.git
synced 2026-02-16 12:28:41 +00:00
Fix #63
This commit is contained in:
parent
eeea5b0b2e
commit
e3970e3e53
|
|
@ -20,9 +20,11 @@ use phpOMS\Account\AccountStatus;
|
||||||
use phpOMS\Account\AccountType;
|
use phpOMS\Account\AccountType;
|
||||||
use Modules\Admin\Models\AccountMapper;
|
use Modules\Admin\Models\AccountMapper;
|
||||||
use Modules\Admin\Models\AccountPermissionMapper;
|
use Modules\Admin\Models\AccountPermissionMapper;
|
||||||
|
use Modules\Admin\Models\NullAccountPermission;
|
||||||
use Modules\Admin\Models\Group;
|
use Modules\Admin\Models\Group;
|
||||||
use Modules\Admin\Models\GroupMapper;
|
use Modules\Admin\Models\GroupMapper;
|
||||||
use Modules\Admin\Models\GroupPermissionMapper;
|
use Modules\Admin\Models\GroupPermissionMapper;
|
||||||
|
use Modules\Admin\Models\NullGroupPermission;
|
||||||
use phpOMS\Account\GroupStatus;
|
use phpOMS\Account\GroupStatus;
|
||||||
use phpOMS\Message\RequestAbstract;
|
use phpOMS\Message\RequestAbstract;
|
||||||
use phpOMS\Message\ResponseAbstract;
|
use phpOMS\Message\ResponseAbstract;
|
||||||
|
|
@ -174,7 +176,7 @@ class Controller extends ModuleAbstract implements WebInterface
|
||||||
|
|
||||||
$permissions = AccountPermissionMapper::getFor((int) $request->getData('id'), 'account');
|
$permissions = AccountPermissionMapper::getFor((int) $request->getData('id'), 'account');
|
||||||
|
|
||||||
if(!isset($permissions)) {
|
if(!isset($permissions) || $permissions instanceof NullAccountPermission) {
|
||||||
$permissions = [];
|
$permissions = [];
|
||||||
} elseif(!is_array($permissions)) {
|
} elseif(!is_array($permissions)) {
|
||||||
$permissions = [$permissions];
|
$permissions = [$permissions];
|
||||||
|
|
@ -245,7 +247,7 @@ class Controller extends ModuleAbstract implements WebInterface
|
||||||
|
|
||||||
$permissions = GroupPermissionMapper::getFor((int) $request->getData('id'), 'group');
|
$permissions = GroupPermissionMapper::getFor((int) $request->getData('id'), 'group');
|
||||||
|
|
||||||
if(!isset($permissions)) {
|
if(!isset($permissions) || $permissions instanceof NullGroupPermission) {
|
||||||
$permissions = [];
|
$permissions = [];
|
||||||
} elseif(!is_array($permissions)) {
|
} elseif(!is_array($permissions)) {
|
||||||
$permissions = [$permissions];
|
$permissions = [$permissions];
|
||||||
|
|
|
||||||
|
|
@ -46,6 +46,21 @@ class AccountMapper extends DataMapperAbstract
|
||||||
'account_created_at' => ['name' => 'account_created_at', 'type' => 'DateTime', 'internal' => 'createdAt'],
|
'account_created_at' => ['name' => 'account_created_at', 'type' => 'DateTime', 'internal' => 'createdAt'],
|
||||||
];
|
];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Has many relation.
|
||||||
|
*
|
||||||
|
* @var array
|
||||||
|
* @since 1.0.0
|
||||||
|
*/
|
||||||
|
protected static $hasMany = [
|
||||||
|
'groups' => [
|
||||||
|
'mapper' => GroupMapper::class,
|
||||||
|
'table' => 'account_group',
|
||||||
|
'dst' => 'account_group_account',
|
||||||
|
'src' => 'account_group_group',
|
||||||
|
],
|
||||||
|
];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Primary table.
|
* Primary table.
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,6 @@
|
||||||
declare(strict_types=1);
|
declare(strict_types=1);
|
||||||
namespace Modules\Admin\Models;
|
namespace Modules\Admin\Models;
|
||||||
|
|
||||||
class NullAccountPermission extends Group
|
class NullAccountPermission extends AccountPermission
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -67,12 +67,13 @@ echo $this->getData('nav')->render(); ?>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<td><?= $this->getHtml('ID', 0, 0); ?>
|
<td><?= $this->getHtml('ID', 0, 0); ?>
|
||||||
<td>Name
|
<td class="wf-100"><?= $this->getHtml('Name') ?>
|
||||||
<tbody>
|
<tbody>
|
||||||
<?php $c = 0; foreach ([] as $key => $value) : $c++; ?>
|
<?php $c = 0; $groups = $account->getGroups(); foreach ($groups as $key => $value) : $c++;
|
||||||
<tr>
|
$url = \phpOMS\Uri\UriFactory::build('{/base}/{/lang}/backend/admin/group/settings?{?}&id=' . $value->getId()); ?>
|
||||||
<td>
|
<tr data-href="<?= $url; ?>">
|
||||||
<td>
|
<td><a href="<?= $url; ?>"><?= $this->printHtml($value->getId()); ?></a>
|
||||||
|
<td><a href="<?= $url; ?>"><?= $this->printHtml($value->getName()); ?></a>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
<?php if($c === 0) : ?>
|
<?php if($c === 0) : ?>
|
||||||
<tr><td colspan="2" class="empty"><?= $this->getHtml('Empty', 0, 0); ?>
|
<tr><td colspan="2" class="empty"><?= $this->getHtml('Empty', 0, 0); ?>
|
||||||
|
|
@ -118,11 +119,11 @@ echo $this->getData('nav')->render(); ?>
|
||||||
<td><?= $value->getElement(); ?>
|
<td><?= $value->getElement(); ?>
|
||||||
<td><?= $value->getComponent(); ?>
|
<td><?= $value->getComponent(); ?>
|
||||||
<td>
|
<td>
|
||||||
<?= \phpOMS\Account\PermissionType::CREATE | $permission === $permission ? 'C' : ''; ?>
|
<?= (\phpOMS\Account\PermissionType::CREATE | $permission) === $permission ? 'C' : ''; ?>
|
||||||
<?= \phpOMS\Account\PermissionType::READ | $permission === $permission ? 'R' : ''; ?>
|
<?= (\phpOMS\Account\PermissionType::READ | $permission) === $permission ? 'R' : ''; ?>
|
||||||
<?= \phpOMS\Account\PermissionType::MODIFY | $permission === $permission ? 'U' : ''; ?>
|
<?= (\phpOMS\Account\PermissionType::MODIFY | $permission) === $permission ? 'U' : ''; ?>
|
||||||
<?= \phpOMS\Account\PermissionType::DELETE | $permission === $permission ? 'D' : ''; ?>
|
<?= (\phpOMS\Account\PermissionType::DELETE | $permission) === $permission ? 'D' : ''; ?>
|
||||||
<?= \phpOMS\Account\PermissionType::PERMISSION | $permission === $permission ? 'P' : ''; ?>
|
<?= (\phpOMS\Account\PermissionType::PERMISSION | $permission) === $permission ? 'P' : ''; ?>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
<?php if($c === 0) : ?>
|
<?php if($c === 0) : ?>
|
||||||
<tr><td colspan="8" class="empty"><?= $this->getHtml('Empty', 0, 0); ?>
|
<tr><td colspan="8" class="empty"><?= $this->getHtml('Empty', 0, 0); ?>
|
||||||
|
|
|
||||||
|
|
@ -17,6 +17,7 @@
|
||||||
|
|
||||||
$group = $this->getData('group');
|
$group = $this->getData('group');
|
||||||
$permissions = $this->getData('permissions');
|
$permissions = $this->getData('permissions');
|
||||||
|
$accounts = $this->getData('accounts');
|
||||||
|
|
||||||
echo $this->getData('nav')->render(); ?>
|
echo $this->getData('nav')->render(); ?>
|
||||||
|
|
||||||
|
|
@ -104,11 +105,11 @@ echo $this->getData('nav')->render(); ?>
|
||||||
<td><?= $value->getElement(); ?>
|
<td><?= $value->getElement(); ?>
|
||||||
<td><?= $value->getComponent(); ?>
|
<td><?= $value->getComponent(); ?>
|
||||||
<td>
|
<td>
|
||||||
<?= \phpOMS\Account\PermissionType::CREATE | $permission === $permission ? 'C' : ''; ?>
|
<?= (\phpOMS\Account\PermissionType::CREATE | $permission) === $permission ? 'C' : ''; ?>
|
||||||
<?= \phpOMS\Account\PermissionType::READ | $permission === $permission ? 'R' : ''; ?>
|
<?= (\phpOMS\Account\PermissionType::READ | $permission) === $permission ? 'R' : ''; ?>
|
||||||
<?= \phpOMS\Account\PermissionType::MODIFY | $permission === $permission ? 'U' : ''; ?>
|
<?= (\phpOMS\Account\PermissionType::MODIFY | $permission) === $permission ? 'U' : ''; ?>
|
||||||
<?= \phpOMS\Account\PermissionType::DELETE | $permission === $permission ? 'D' : ''; ?>
|
<?= (\phpOMS\Account\PermissionType::DELETE | $permission) === $permission ? 'D' : ''; ?>
|
||||||
<?= \phpOMS\Account\PermissionType::PERMISSION | $permission === $permission ? 'P' : ''; ?>
|
<?= (\phpOMS\Account\PermissionType::PERMISSION | $permission) === $permission ? 'P' : ''; ?>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
<?php if($c === 0) : ?>
|
<?php if($c === 0) : ?>
|
||||||
<tr><td colspan="8" class="empty"><?= $this->getHtml('Empty', 0, 0); ?>
|
<tr><td colspan="8" class="empty"><?= $this->getHtml('Empty', 0, 0); ?>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user