parent
6c39fb51f8
commit
88ff055f39
|
@ -169,16 +169,18 @@ class ConfigController extends Controller
|
|||
}
|
||||
|
||||
/**
|
||||
* Action for listing and reordering user backends
|
||||
* Action for listing user and group backends
|
||||
*/
|
||||
public function userbackendAction()
|
||||
{
|
||||
$this->assertPermission('config/application/userbackend');
|
||||
$this->assertPermission('config/application/usergroupbackend');
|
||||
$form = new UserBackendReorderForm();
|
||||
$form->setIniConfig(Config::app('authentication'));
|
||||
$form->handleRequest();
|
||||
|
||||
$this->view->form = $form;
|
||||
$this->view->backendNames = Config::app('groups');
|
||||
$this->createApplicationTabs()->activate('authentication');
|
||||
$this->render('userbackend/reorder');
|
||||
}
|
||||
|
|
|
@ -29,16 +29,7 @@ class UsergroupbackendController extends Controller
|
|||
*/
|
||||
public function indexAction()
|
||||
{
|
||||
$this->redirectNow('usergroupbackend/list');
|
||||
}
|
||||
|
||||
/**
|
||||
* Show a list of all user group backends
|
||||
*/
|
||||
public function listAction()
|
||||
{
|
||||
$this->view->backendNames = Config::app('groups');
|
||||
$this->createListTabs()->activate('usergroupbackend');
|
||||
$this->redirectNow('config/userbackend');
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -47,7 +38,7 @@ class UsergroupbackendController extends Controller
|
|||
public function createAction()
|
||||
{
|
||||
$form = new UserGroupBackendForm();
|
||||
$form->setRedirectUrl('usergroupbackend/list');
|
||||
$form->setRedirectUrl('config/userbackend');
|
||||
$form->addDescription($this->translate('Create a new backend to associate users and groups with.'));
|
||||
$form->setIniConfig(Config::app('groups'));
|
||||
$form->setOnSuccess(function (UserGroupBackendForm $form) {
|
||||
|
@ -78,7 +69,7 @@ class UsergroupbackendController extends Controller
|
|||
$backendName = $this->params->getRequired('backend');
|
||||
|
||||
$form = new UserGroupBackendForm();
|
||||
$form->setRedirectUrl('usergroupbackend/list');
|
||||
$form->setRedirectUrl('config/userbackend');
|
||||
$form->setIniConfig(Config::app('groups'));
|
||||
$form->setOnSuccess(function (UserGroupBackendForm $form) use ($backendName) {
|
||||
try {
|
||||
|
@ -121,7 +112,7 @@ class UsergroupbackendController extends Controller
|
|||
$backendForm = new UserGroupBackendForm();
|
||||
$backendForm->setIniConfig(Config::app('groups'));
|
||||
$form = new ConfirmRemovalForm();
|
||||
$form->setRedirectUrl('usergroupbackend/list');
|
||||
$form->setRedirectUrl('config/userbackend');
|
||||
$form->setOnSuccess(function (ConfirmRemovalForm $form) use ($backendName, $backendForm) {
|
||||
try {
|
||||
$backendForm->delete($backendName);
|
||||
|
@ -141,23 +132,4 @@ class UsergroupbackendController extends Controller
|
|||
|
||||
$this->renderForm($form, $this->translate('Remove User Group Backend'));
|
||||
}
|
||||
|
||||
/**
|
||||
* Create the tabs for the application configuration
|
||||
*/
|
||||
protected function createListTabs()
|
||||
{
|
||||
$tabs = $this->getTabs();
|
||||
$tabs->add('userbackend', array(
|
||||
'title' => $this->translate('Configure how users authenticate with and log into Icinga Web 2'),
|
||||
'label' => $this->translate('Users'),
|
||||
'url' => 'config/userbackend'
|
||||
));
|
||||
$tabs->add('usergroupbackend', array(
|
||||
'title' => $this->translate('Configure how users are associated with groups by Icinga Web 2'),
|
||||
'label' => $this->translate('User Groups'),
|
||||
'url' => 'usergroupbackend/list'
|
||||
));
|
||||
return $tabs;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -14,4 +14,56 @@
|
|||
)
|
||||
) ?>
|
||||
<?= $form ?>
|
||||
|
||||
<?= $this->qlink(
|
||||
$this->translate('Create a New User Group Backend') ,
|
||||
'usergroupbackend/create',
|
||||
null,
|
||||
array(
|
||||
'class' => 'button-link',
|
||||
'data-base-target' => '_next',
|
||||
'icon' => 'plus',
|
||||
'title' => $this->translate('Create a new user group backend')
|
||||
)
|
||||
) ?>
|
||||
<?php if (! count($backendNames)) { return; } ?>
|
||||
<table class="table-row-selectable common-table" data-base-target="_next">
|
||||
<thead>
|
||||
<tr>
|
||||
<th><?= $this->translate('Backend') ?></th>
|
||||
<th></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php foreach ($backendNames as $backendName => $config):
|
||||
$type = $config->get('backend');
|
||||
?>
|
||||
<tr>
|
||||
<td>
|
||||
<?= $this->qlink(
|
||||
$backendName,
|
||||
'usergroupbackend/edit',
|
||||
array('backend' => $backendName),
|
||||
array(
|
||||
'icon' => $type === 'external' ? 'magic' : ($type === 'ldap' || $type === 'msldap' ? 'sitemap' : 'database'),
|
||||
'title' => sprintf($this->translate('Edit user group backend %s'), $backendName)
|
||||
)
|
||||
); ?>
|
||||
</td>
|
||||
<td class="icon-col text-right">
|
||||
<?= $this->qlink(
|
||||
null,
|
||||
'usergroupbackend/remove',
|
||||
array('backend' => $backendName),
|
||||
array(
|
||||
'class' => 'action-link',
|
||||
'icon' => 'cancel',
|
||||
'title' => sprintf($this->translate('Remove user group backend %s'), $backendName)
|
||||
)
|
||||
) ?>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach ?>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
|
|
@ -1,56 +0,0 @@
|
|||
<div class="controls">
|
||||
<?= $tabs ?>
|
||||
</div>
|
||||
<div class="content">
|
||||
<?= $this->qlink(
|
||||
$this->translate('Create a New User Group Backend') ,
|
||||
'usergroupbackend/create',
|
||||
null,
|
||||
array(
|
||||
'class' => 'button-link',
|
||||
'data-base-target' => '_next',
|
||||
'icon' => 'plus',
|
||||
'title' => $this->translate('Create a new user group backend')
|
||||
)
|
||||
) ?>
|
||||
<?php if (! count($backendNames)) { return; } ?>
|
||||
<table class="table-row-selectable common-table" data-base-target="_next">
|
||||
<thead>
|
||||
<tr>
|
||||
<th><?= $this->translate('Backend') ?></th>
|
||||
<th></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php foreach ($backendNames as $backendName => $config):
|
||||
$type = $config->get('backend');
|
||||
?>
|
||||
<tr>
|
||||
<td>
|
||||
<?= $this->qlink(
|
||||
$backendName,
|
||||
'usergroupbackend/edit',
|
||||
array('backend' => $backendName),
|
||||
array(
|
||||
'icon' => $type === 'external' ? 'magic' : ($type === 'ldap' || $type === 'msldap' ? 'sitemap' : 'database'),
|
||||
'title' => sprintf($this->translate('Edit user group backend %s'), $backendName)
|
||||
)
|
||||
); ?>
|
||||
</td>
|
||||
<td class="icon-col text-right">
|
||||
<?= $this->qlink(
|
||||
null,
|
||||
'usergroupbackend/remove',
|
||||
array('backend' => $backendName),
|
||||
array(
|
||||
'class' => 'action-link',
|
||||
'icon' => 'cancel',
|
||||
'title' => sprintf($this->translate('Remove user group backend %s'), $backendName)
|
||||
)
|
||||
) ?>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach ?>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
Loading…
Reference in New Issue