function getTreeTranslation($groupid) { require_once $GLOBALS["where_framework"] . '/modules/org_chart/tree.org_chart.php'; $repoDb = new TreeDb_OrgDb($GLOBALS['prefix_fw'] . '_org_chart_tree'); $pos = strpos($groupid, '_'); $arr_translations = $repoDb->getFolderTranslations(substr($groupid, $pos + 1)); return $arr_translations[getLanguage()]; }
function org_createUser($treeid = FALSE) { checkPerm('createuser_org_chart', false, 'directory', 'framework'); require_once _base_ . '/lib/lib.form.php'; $title_page = array($this->lang->def('_USERS'), $this->lang->def('_NEW_USER')); $control_view = 1; $data = new GroupDataRetriever($GLOBALS['dbConn'], $GLOBALS['prefix_fw']); $rend = new Table(Get::sett('visuItem')); $lv = new GroupListView('', $data, $rend, 'groupdirectory'); $group_count = $lv->getTotalRows(); $query_org_chart = "SELECT COUNT(*)" . " FROM " . $GLOBALS['prefix_fw'] . "_org_chart_tree"; list($number_of_folder) = sql_fetch_row(sql_query($query_org_chart)); if ($number_of_folder == 0 && $group_count == 0) { $control_view = 0; } $GLOBALS['page']->add(getTitleArea($title_page, 'directory_people') . '<div class="std_block">'); if ($control_view && (Get::sett('use_org_chart') == '1' || $GLOBALS['use_groups'] == '1')) { if (isset($_POST['okselector'])) { // go to user creation with folders selected require_once dirname(__FILE__) . '/../modules/org_chart/tree.org_chart.php'; $repoDb = new TreeDb_OrgDb($GLOBALS['prefix_fw'] . '_org_chart_tree'); $arr_selection = $this->getSelection($_POST); if (count($arr_selection) > 0) { $arr_selection = array_merge($arr_selection, $repoDb->getDescendantsSTFromST($arr_selection)); } $arr_selection = array_merge($arr_selection, $this->aclManager->getArrGroupST(array('/oc_0', '/ocd_0'))); $this->editPerson(FALSE, $arr_selection); } elseif (isset($_POST['cancelselector'])) { Util::jump_to('index.php?modname=directory&op=org_chart'); } else { if (!isset($_GET['stayon'])) { if ($treeid === FALSE && isset($_GET['treeid'])) { $treeid = (int) $_GET['treeid']; } if ($treeid != 0) { require_once dirname(__FILE__) . '/../modules/org_chart/tree.org_chart.php'; $repoDb = new TreeDb_OrgDb($GLOBALS['prefix_fw'] . '_org_chart_tree'); $idst = $repoDb->getGroupST($treeid); $this->resetSelection(array($idst)); } else { $this->resetSelection(array()); } } $this->show_user_selector = FALSE; if ($group_count == 0) { $this->show_group_selector = FALSE; } else { $this->show_group_selector = TRUE; } if (Get::sett('use_org_chart') == '1' && $number_of_folder != 0) { $this->show_orgchart_selector = TRUE; $this->show_orgchart_simple_selector = TRUE; } else { $this->show_orgchart_selector = FALSE; } if (Docebo::user()->getUserLevelId() === '/framework/level/admin') { require_once $GLOBALS['where_framework'] . '/lib/lib.adminmanager.php'; $adminManager = new AdminManager(); $this->setGroupFilter('group', $adminManager->getAdminTree(getLogUserId())); } $this->loadSelector('index.php?modname=directory&op=org_createuser&stayon=1', $this->lang->def('_NEW_USER'), $this->lang->def('_NEW_USERDESCR'), TRUE); } } else { $this->editPerson(FALSE, array()); } $GLOBALS['page']->add('</div>'); }