diff options
| author | Charles <sircharlesaze@gmail.com> | 2020-01-09 10:55:03 +0100 |
|---|---|---|
| committer | Charles <sircharlesaze@gmail.com> | 2020-01-09 13:09:38 +0100 |
| commit | 04d6d5ca99ebfd1cebb8ce06618fb3811fc1a8aa (patch) | |
| tree | 5c691241355c943a3c68ddb06b8cf8c60aa11319 /srcs/phpmyadmin/server_user_groups.php | |
| parent | 7e0d85db834d6351ed85d01e5126ac31dc510b86 (diff) | |
| download | ft_server-04d6d5ca99ebfd1cebb8ce06618fb3811fc1a8aa.tar.gz ft_server-04d6d5ca99ebfd1cebb8ce06618fb3811fc1a8aa.tar.bz2 ft_server-04d6d5ca99ebfd1cebb8ce06618fb3811fc1a8aa.zip | |
phpmyadmin working
Diffstat (limited to 'srcs/phpmyadmin/server_user_groups.php')
| -rw-r--r-- | srcs/phpmyadmin/server_user_groups.php | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/srcs/phpmyadmin/server_user_groups.php b/srcs/phpmyadmin/server_user_groups.php new file mode 100644 index 0000000..cd0b269 --- /dev/null +++ b/srcs/phpmyadmin/server_user_groups.php @@ -0,0 +1,90 @@ +<?php +/* vim: set expandtab sw=4 ts=4 sts=4: */ +/** + * Displays the 'User groups' sub page under 'Users' page. + * + * @package PhpMyAdmin + */ +declare(strict_types=1); + +use PhpMyAdmin\DatabaseInterface; +use PhpMyAdmin\Relation; +use PhpMyAdmin\Response; +use PhpMyAdmin\Server\UserGroups; +use PhpMyAdmin\Server\Users; + +if (! defined('ROOT_PATH')) { + define('ROOT_PATH', __DIR__ . DIRECTORY_SEPARATOR); +} + +require_once ROOT_PATH . 'libraries/common.inc.php'; + +/** @var Response $response */ +$response = $containerBuilder->get(Response::class); + +/** @var DatabaseInterface $dbi */ +$dbi = $containerBuilder->get(DatabaseInterface::class); + +/** @var Relation $relation */ +$relation = $containerBuilder->get('relation'); +$cfgRelation = $relation->getRelationsParam(); +if (! $cfgRelation['menuswork']) { + exit; +} + +$header = $response->getHeader(); +$scripts = $header->getScripts(); +$scripts->addFile('server/user_groups.js'); + +/** + * Only allowed to superuser + */ +if (! $dbi->isSuperuser()) { + $response->addHTML( + PhpMyAdmin\Message::error(__('No Privileges')) + ->getDisplay() + ); + exit; +} + +$response->addHTML('<div>'); +$response->addHTML(Users::getHtmlForSubMenusOnUsersPage('server_user_groups.php')); + +/** + * Delete user group + */ +if (! empty($_POST['deleteUserGroup'])) { + UserGroups::delete($_POST['userGroup']); +} + +/** + * Add a new user group + */ +if (! empty($_POST['addUserGroupSubmit'])) { + UserGroups::edit($_POST['userGroup'], true); +} + +/** + * Update a user group + */ +if (! empty($_POST['editUserGroupSubmit'])) { + UserGroups::edit($_POST['userGroup']); +} + +if (isset($_POST['viewUsers'])) { + // Display users belonging to a user group + $response->addHTML(UserGroups::getHtmlForListingUsersofAGroup($_POST['userGroup'])); +} + +if (isset($_GET['addUserGroup'])) { + // Display add user group dialog + $response->addHTML(UserGroups::getHtmlToEditUserGroup()); +} elseif (isset($_POST['editUserGroup'])) { + // Display edit user group dialog + $response->addHTML(UserGroups::getHtmlToEditUserGroup($_POST['userGroup'])); +} else { + // Display user groups table + $response->addHTML(UserGroups::getHtmlForUserGroupsTable()); +} + +$response->addHTML('</div>'); |
