diff --git a/application/controllers/ConfigController.php b/application/controllers/ConfigController.php index ce8440749..c1d75b711 100644 --- a/application/controllers/ConfigController.php +++ b/application/controllers/ConfigController.php @@ -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'); } diff --git a/application/controllers/UsergroupbackendController.php b/application/controllers/UsergroupbackendController.php index 2f134cddd..14456fc01 100644 --- a/application/controllers/UsergroupbackendController.php +++ b/application/controllers/UsergroupbackendController.php @@ -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; - } } diff --git a/application/views/scripts/config/userbackend/reorder.phtml b/application/views/scripts/config/userbackend/reorder.phtml index a065b6005..02eec6b1d 100644 --- a/application/views/scripts/config/userbackend/reorder.phtml +++ b/application/views/scripts/config/userbackend/reorder.phtml @@ -14,4 +14,56 @@ ) ) ?> + + 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') + ) + ) ?> + + + + + + + + + + $config): + $type = $config->get('backend'); +?> + + + + + + +
translate('Backend') ?>
+ 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) + ) + ); ?> + + qlink( + null, + 'usergroupbackend/remove', + array('backend' => $backendName), + array( + 'class' => 'action-link', + 'icon' => 'cancel', + 'title' => sprintf($this->translate('Remove user group backend %s'), $backendName) + ) + ) ?> +
diff --git a/application/views/scripts/usergroupbackend/list.phtml b/application/views/scripts/usergroupbackend/list.phtml deleted file mode 100644 index 5ce1df90f..000000000 --- a/application/views/scripts/usergroupbackend/list.phtml +++ /dev/null @@ -1,56 +0,0 @@ -
- -
-
- 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') - ) - ) ?> - - - - - - - - - - $config): - $type = $config->get('backend'); -?> - - - - - - -
translate('Backend') ?>
- 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) - ) - ); ?> - - qlink( - null, - 'usergroupbackend/remove', - array('backend' => $backendName), - array( - 'class' => 'action-link', - 'icon' => 'cancel', - 'title' => sprintf($this->translate('Remove user group backend %s'), $backendName) - ) - ) ?> -
-