diff --git a/Controller.php b/Controller.php
index 989dcc9..24791b6 100644
--- a/Controller.php
+++ b/Controller.php
@@ -20,9 +20,11 @@ use phpOMS\Account\AccountStatus;
use phpOMS\Account\AccountType;
use Modules\Admin\Models\AccountMapper;
use Modules\Admin\Models\AccountPermissionMapper;
+use Modules\Admin\Models\NullAccountPermission;
use Modules\Admin\Models\Group;
use Modules\Admin\Models\GroupMapper;
use Modules\Admin\Models\GroupPermissionMapper;
+use Modules\Admin\Models\NullGroupPermission;
use phpOMS\Account\GroupStatus;
use phpOMS\Message\RequestAbstract;
use phpOMS\Message\ResponseAbstract;
@@ -173,8 +175,8 @@ class Controller extends ModuleAbstract implements WebInterface
$view->addData('account', AccountMapper::get((int) $request->getData('id')));
$permissions = AccountPermissionMapper::getFor((int) $request->getData('id'), 'account');
-
- if(!isset($permissions)) {
+
+ if(!isset($permissions) || $permissions instanceof NullAccountPermission) {
$permissions = [];
} elseif(!is_array($permissions)) {
$permissions = [$permissions];
@@ -245,7 +247,7 @@ class Controller extends ModuleAbstract implements WebInterface
$permissions = GroupPermissionMapper::getFor((int) $request->getData('id'), 'group');
- if(!isset($permissions)) {
+ if(!isset($permissions) || $permissions instanceof NullGroupPermission) {
$permissions = [];
} elseif(!is_array($permissions)) {
$permissions = [$permissions];
diff --git a/Models/AccountMapper.php b/Models/AccountMapper.php
index 4c180d1..d7882ba 100644
--- a/Models/AccountMapper.php
+++ b/Models/AccountMapper.php
@@ -46,6 +46,21 @@ class AccountMapper extends DataMapperAbstract
'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.
*
diff --git a/Models/NullAccountPermission.php b/Models/NullAccountPermission.php
index 26eb268..0de9640 100644
--- a/Models/NullAccountPermission.php
+++ b/Models/NullAccountPermission.php
@@ -14,6 +14,6 @@
declare(strict_types=1);
namespace Modules\Admin\Models;
-class NullAccountPermission extends Group
+class NullAccountPermission extends AccountPermission
{
}
diff --git a/Theme/Backend/accounts-single.tpl.php b/Theme/Backend/accounts-single.tpl.php
index 7c2c623..3d6d264 100644
--- a/Theme/Backend/accounts-single.tpl.php
+++ b/Theme/Backend/accounts-single.tpl.php
@@ -67,12 +67,13 @@ echo $this->getData('nav')->render(); ?>
= $this->getHtml('ID', 0, 0); ?>
- Name
+ = $this->getHtml('Name') ?>