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()];
 }
Esempio n. 2
0
 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&amp;op=org_createuser&amp;stayon=1', $this->lang->def('_NEW_USER'), $this->lang->def('_NEW_USERDESCR'), TRUE);
         }
     } else {
         $this->editPerson(FALSE, array());
     }
     $GLOBALS['page']->add('</div>');
 }