getName(); } try { $objRole->addMember($strUsername); $g_strInfoMessage .= sprintf(gettext('info_add_member').'
', $strUsername, $strRole); } catch(com_borealis_acl_exception_SQLException $objError) { $g_strErrorAddUser .= sprintf(gettext('error_exist_role_member').'
', $strUsername, $strRole); } } } } /** * Suppression du user * * @return void */ function deleteUser() { global $g_strInfoMessage; global $g_objArrayUsers; $objRole = com_borealis_acl_object_Role::getByName($_REQUEST['role']); $objRole->removeMember($_REQUEST['username']); $strUsername = $_REQUEST['username']; if (isset($g_objArrayUsers[$_REQUEST['username']])) { $strUsername = $g_objArrayUsers[$_REQUEST['username']]->getName(); } $g_strInfoMessage = sprintf(gettext('info_delete_member'), $strUsername, $objRole->getName()); } /** * Suppression de plusieur user * * @return void */ function deleteUsers() { global $g_strInfoMessage; global $g_objArrayUsers; if (isset($_REQUEST['role_user'])) { foreach ($_REQUEST['role_user'] as $strRoleUser) { $objInfo = explode('_', $strRoleUser, 2); $strRoleID = $objInfo[0]; $strUsername = $objInfo[1]; $objRole = com_borealis_acl_object_Role::getByID((int)$strRoleID); $objRole->removeMember($strUsername); if (isset($g_objArrayUsers[$strUsername])) { $strUsername = $g_objArrayUsers[$strUsername]->getName(); } $g_strInfoMessage .= sprintf(gettext('info_delete_member').'
', $strUsername, $objRole->getName()); } } } /** * Création du tableau associatif de user trier * * @return void */ function loadInfo() { global $g_objArrayUsers; global $g_objArrayRoles; $objArrayUsers = com_borealis_users_UsersManager::getUsers(); // Trier en ordre de nom usort($objArrayUsers, "cmpUser"); foreach ($objArrayUsers as $objUser) { $g_objArrayUsers[$objUser->getUsername()] = $objUser; } } /** * Fonction de comparaison de User pour le trie (usort) * * @param com_borealis_users_User $pobjUserA user1 * @param com_borealis_users_User $pobjUserB user2 * * @return int */ function cmpUser(com_borealis_users_User $pobjUserA, com_borealis_users_User $pobjUserB) { return strcmp($pobjUserA->getName(), $pobjUserB->getName()); } loadInfo(); if (isset($_REQUEST['action'])) { switch($_REQUEST['action']) { case 'add_user': addUser(); break; case 'delete_user': deleteUser(); break; case 'delete_users': deleteUsers(); break; } } // ----------------------------------------------- // --- Smarty display // ----------------------------------------------- $g_objSmarty->assign('errorAddUser', $g_strErrorAddUser); $g_objSmarty->assign('roles', com_borealis_acl_object_Role::getAll()); $g_objSmarty->assign('users', $g_objArrayUsers); $g_objSmarty->assign('infoMessage', $g_strInfoMessage); $g_objSmarty->display('rolesuser.tpl'); ?>