59 lines
2.0 KiB
PHTML
59 lines
2.0 KiB
PHTML
<?php
|
|
|
|
/**
|
|
* @var array $values
|
|
* @var string|null $formId
|
|
* @var bool $detailsOpenAll
|
|
* @var bool $isReadOnly
|
|
*/
|
|
|
|
use MintyPHP\Session;
|
|
|
|
$values = $values ?? [];
|
|
$formId = $formId ?? 'role-form';
|
|
$detailsOpenAll = $detailsOpenAll ?? false;
|
|
$isReadOnly = $isReadOnly ?? false;
|
|
$detailsOpenAttr = $detailsOpenAll ? 'open' : '';
|
|
$readonlyAttr = $isReadOnly ? 'readonly' : '';
|
|
$disabledAttr = $isReadOnly ? 'disabled' : '';
|
|
|
|
?>
|
|
<form id="<?php e($formId); ?>" method="post">
|
|
<details name="basic-data" open>
|
|
<summary>Stammdaten</summary>
|
|
<hr>
|
|
<label for="description">
|
|
<span><?php e(t('Description')); ?></span>
|
|
<input required type="text" name="description" id="description" value="<?php e($values['description'] ?? ''); ?>" <?php e($readonlyAttr); ?> />
|
|
</label>
|
|
<div class="grid">
|
|
<label for="code">
|
|
<span><?php e(t('Code')); ?></span>
|
|
<input type="text" name="code" id="code" value="<?php e($values['code'] ?? ''); ?>" <?php e($readonlyAttr); ?> />
|
|
</label>
|
|
<label for="active">
|
|
<span><?php e(t('Status')); ?></span>
|
|
<?php $statusValue = (string) ($values['active'] ?? '1'); ?>
|
|
<select name="active" id="active" <?php e($disabledAttr); ?>>
|
|
<option value="1" <?php if ($statusValue === '1') { ?>selected<?php } ?>>
|
|
<?php e(t('Active')); ?>
|
|
</option>
|
|
<option value="0" <?php if ($statusValue === '0') { ?>selected<?php } ?>>
|
|
<?php e(t('Inactive')); ?>
|
|
</option>
|
|
</select>
|
|
</label>
|
|
</div>
|
|
</details>
|
|
<hr>
|
|
<?php if (!empty($permissions)): ?>
|
|
<details name="permissions" <?php e($detailsOpenAttr); ?>>
|
|
<summary><?php e(t('Permissions')); ?></summary>
|
|
<hr>
|
|
<?php multiSelectForm('role-permissions', 'permission_ids', 'Assigned permissions', 'Select permissions', $permissions, $selectedPermissionIds ?? [], $isReadOnly, ['description', 'key']); ?>
|
|
</details>
|
|
<hr>
|
|
<?php endif; ?>
|
|
<?php Session::getCsrfInput(); ?>
|
|
</form>
|