function publicAdminManager_assign_tree($adminidst) { checkPerm('view'); if ($adminidst == 0) { return; } require_once _base_ . '/lib/lib.form.php'; require_once _base_ . '/lib/lib.userselector.php'; require_once $GLOBALS['where_framework'] . '/lib/lib.publicadminmanager.php'; $directory = new UserSelector(); $lang =& DoceboLanguage::createInstance('adminrules', 'framework'); $lang =& DoceboLanguage::createInstance('public_admin_manager', 'framework'); $aclManager = new DoceboACLManager(); $adminManager = new PublicAdminManager(); if (isset($_POST['okselector'])) { $arr_selected = $directory->getSelection($_POST); $arr_unselected = $directory->getUnselected(); foreach ($arr_unselected as $idstTree) { $adminManager->removeAdminTree($idstTree, $adminidst); } foreach ($arr_selected as $idstTree) { $adminManager->addAdminTree($idstTree, $adminidst); } Util::jump_to('index.php?modname=public_admin_manager&op=view'); } elseif (isset($_POST['cancelselector'])) { Util::jump_to('index.php?modname=public_admin_manager&op=view'); } else { if (!isset($_GET['stayon'])) { $directory->resetSelection($adminManager->getAdminTree($adminidst)); } $admin_info = $aclManager->getUser($adminidst, false); $directory->show_user_selector = FALSE; $directory->show_group_selector = TRUE; $directory->show_orgchart_selector = TRUE; $directory->show_orgchart_simple_selector = TRUE; $directory->multi_choice = TRUE; $directory->loadSelector('index.php?modname=public_admin_manager&op=assign_tree&adminidst=' . $adminidst . '&stayon=1', $lang->def('_ASSIGN_USERS', 'adminrules'), '<span class="text_bold">' . substr($admin_info[ACL_INFO_USERID], 1) . '</span>', TRUE); } }
function setRoomViewPerm() { checkPerm('view'); $id_event = importVar('id_event', true, 0); require_once $GLOBALS['where_lms'] . '/lib/lib.reservation_perm.php'; require_once _base_ . '/lib/lib.userselector.php'; $mdir = new UserSelector(); $out =& $GLOBALS["page"]; $out->setWorkingZone("content"); $lang =& DoceboLanguage::createInstance('reservation', 'lms'); $roomperm = new ReservationRoomPermissions(); //$res = getTitleArea($lang->def('_RESERVATION_TITLE'), 'reservation'); $back_url = 'index.php?modname=reservation&op=reservation&active_tab=subscribed_user'; if (isset($_POST['okselector'])) { $arr_selection = $mdir->getSelection($_POST); $arr_unselected = $mdir->getUnselected(); $roomperm->addReservationPerm("view", $id_event, $arr_selection); $roomperm->removeReservationPerm("view", $id_event, $arr_unselected); Util::jump_to(str_replace("&", "&", $back_url)); } else { if (isset($_POST['cancelselector'])) { Util::jump_to(str_replace("&", "&", $back_url)); } else { if (!isset($_GET['stayon'])) { $all_perm = $roomperm->getAllReservationPerm($id_event); if (isset($all_perm["view"])) { $mdir->resetSelection($all_perm["view"]); } } $acl_manager =& Docebo::user()->getAclManager(); $url = 'index.php?modname=reservation&op=set_room_view_perm&id_event=' . $id_event; $mdir->setNFields(0); $mdir->show_group_selector = TRUE; $mdir->show_orgchart_selector = FALSE; $arr_idstGroup = $acl_manager->getGroupsIdstFromBasePath('/lms/course/' . (int) $_SESSION['idCourse'] . '/subscribed/'); $me = array(getLogUserId()); $mdir->setUserFilter('exclude', $me); $mdir->setUserFilter('group', $arr_idstGroup); $mdir->setGroupFilter('path', '/lms/course/' . $_SESSION['idCourse'] . '/group'); $mdir->loadSelector($url, $lang->def('_VIEW_PERMISSION'), "", TRUE); } } }