Example #1
0
function editmodule($load = false)
{
    checkPerm('mod');
    require_once _base_ . '/lib/lib.form.php';
    Util::get_js(Get::rel_path('base') . '/lib/js_utils.js', true, true);
    $lang =& DoceboLanguage::createInstance('manmenu', 'framework');
    $menu_lang =& DoceboLanguage::createInstance('menu_course', 'lms');
    $out =& $GLOBALS['page'];
    $out->setWorkingZone('content');
    $id_main = Get::req('id_main', DOTY_INT, 0);
    $id_module = Get::req('id_module', DOTY_INT, 0);
    $acl_man =& Docebo::user()->getAclManager();
    $perm = array();
    // Load module info
    $query_module = "\r\n\tSELECT module_name, default_name, file_name, class_name \r\n\tFROM " . $GLOBALS['prefix_lms'] . "_module \r\n\tWHERE idModule = '" . $id_module . "'";
    list($module_name, $name_db, $file_name, $class_name) = sql_fetch_row(sql_query($query_module));
    $module_obj =& createModule($module_name);
    // Standard name
    $name = Lang::t($name_db, 'menu_course', false, false, $name_db);
    $my_name = '';
    $query_module = "\r\n\tSELECT default_op \r\n\tFROM " . $GLOBALS['prefix_lms'] . "_module \r\n\tWHERE idModule = '" . $id_module . "'";
    list($module_op) = sql_fetch_row(sql_query($query_module));
    // Load info
    if ($load) {
        // Find personalized name
        $query_seq = "\r\n\t\tSELECT u.my_name, m.default_op \r\n\t\tFROM " . $GLOBALS['prefix_lms'] . "_menucourse_under AS u JOIN\r\n\t\t\t" . $GLOBALS['prefix_lms'] . "_module AS m \r\n\t\tWHERE u.idModule = m.idModule AND u.idMain = '" . $id_main . "' AND u.idModule = '" . $id_module . "'";
        list($my_name, $def_op) = sql_fetch_row(sql_query($query_seq));
        // Load actual module permission
        $levels = CourseLevel::getLevels();
        $tokens = $module_obj->getAllToken($module_op);
        $map_level_idst =& getCourseLevelSt($_SESSION['idCourse']);
        $map_all_role =& getModuleRoleSt($module_name, $tokens, TRUE);
        $group_idst_roles =& getAllModulesPermissionSt($map_level_idst, $map_all_role);
        $perm =& fromStToToken($group_idst_roles, $map_all_role);
    }
    $query_mains = "\r\n\tSELECT idMain, name \r\n\tFROM " . $GLOBALS['prefix_lms'] . "_menucourse_main \r\n\tWHERE idCourse = '" . $_SESSION['idCourse'] . "'\r\n\tORDER BY sequence";
    $re_mains = sql_query($query_mains);
    while (list($id_db_main, $main_name) = sql_fetch_row($re_mains)) {
        $mains[$id_db_main] = $main_name;
        if ($id_db_main == $id_main) {
            $title_main = $main_name;
        }
    }
    // Form
    $page_title = array('index.php?modname=manmenu&op=manmenu' => $lang->def('_TITLE_MANMENU'), 'index.php?modname=manmenu&op=manmodule&id_main=' . $id_main => $title_main, $my_name != '' ? $my_name : $name);
    $out->add(getTitleArea($page_title, 'manmenu') . '<div class="std_block">' . getBackUi('index.php?modname=manmenu&amp;op=manmodule&amp;id_main=' . $id_main, $lang->def('_BACK')) . Form::openForm('module_permission', 'index.php?modname=manmenu&amp;op=upmodule&amp;id_main=' . $id_main . '&amp;id_module=' . $id_module) . Form::getHidden('id_main', 'id_main', $id_main) . Form::getHidden('id_module', 'id_module', $id_module) . ($load ? Form::getHidden('load', 'load', '1') : '') . Form::getTextfield($lang->def('_MY_NAME'), 'my_name', 'my_name', 255, $load ? $my_name : '') . Form::getDropdown($lang->def('_TITLE_MENUVOICE'), 'new_id_main', 'new_id_main', $mains, $id_main) . Form::getBreakRow() . $module_obj->getPermissionUi('module_permission', $perm, $module_op) . Form::getBreakRow() . Form::openButtonSpace() . Form::getButton('saveperm', 'saveperm', $load ? $lang->def('_SAVE') : $lang->def('_IMPORT')) . Form::getButton('undo', 'undo', $lang->def('_UNDO')) . Form::closeButtonSpace() . Form::closeForm() . '</div>');
}
Example #2
0
function editmodule($load = false)
{
    if ($load) {
        checkPerm('mod');
    } else {
        checkPerm('mod');
    }
    require_once _base_ . '/lib/lib.form.php';
    Util::get_js(Get::rel_path('base') . '/lib/js_utils.js', true, true);
    $lang =& DoceboLanguage::createInstance('manmenu');
    $menu_lang =& DoceboLanguage::createInstance('menu_course', 'lms');
    $out =& $GLOBALS['page'];
    $id_main = importVar('id_main', true, 0);
    $id_module = importVar('id_module', true, 0);
    $acl_man =& Docebo::user()->getAclManager();
    $perm = array();
    // Load module info
    $query_module = "\r\n\tSELECT module_name, default_name, file_name, class_name \r\n\tFROM " . $GLOBALS['prefix_lms'] . "_module \r\n\tWHERE idModule = '" . $id_module . "'";
    list($module_name, $name_db, $file_name, $class_name) = sql_fetch_row(sql_query($query_module));
    $module_obj =& createLmsModule($module_name);
    // Standard name
    //$name = ( Lang::isDef($name_db, 'menu_course') ? Lang::t($name_db, 'menu_course') : $name_db );
    $name = Lang::t($name_db, 'menu_course', false, false, $name_db);
    // Load info
    $query_module = "\r\n\tSELECT default_op \r\n\tFROM " . $GLOBALS['prefix_lms'] . "_module \r\n\tWHERE idModule = '" . $id_module . "'";
    list($module_op) = sql_fetch_row(sql_query($query_module));
    if ($load) {
        // Find personalized name
        $query_seq = "\r\n\t\tSELECT idCustom, my_name\r\n\t\tFROM " . $GLOBALS['prefix_lms'] . "_menucustom_under \r\n\t\tWHERE idMain = '" . $id_main . "' AND idModule = '" . $id_module . "'";
        list($id_custom, $my_name) = sql_fetch_row(sql_query($query_seq));
        // Load actual module permission
        $levels = CourseLevel::getLevels();
        $tokens = $module_obj->getAllToken($module_op);
        $map_level_idst =& getCustomLevelSt($id_custom);
        $map_all_role =& getModuleRoleSt($module_name, $tokens, TRUE);
        $group_idst_roles =& getAllModulesPermissionSt($map_level_idst, $map_all_role);
        $perm =& fromStToToken($group_idst_roles, $map_all_role);
    } else {
        if (method_exists($module_obj, 'getPermissionsForMenu')) {
            $perm = $module_obj->getPermissionsForMenu($module_op);
        }
    }
    // Find personalized name
    $id_custom = getIdCustomFromMain($id_main);
    $query_custom = "\r\n\tSELECT title \r\n\tFROM " . $GLOBALS['prefix_lms'] . "_menucustom \r\n\tWHERE idCustom = '" . $id_custom . "'";
    list($custom_name) = sql_fetch_row(sql_query($query_custom));
    $query_mains = "\r\n\tSELECT idMain, name \r\n\tFROM " . $GLOBALS['prefix_lms'] . "_menucustom_main \r\n\tWHERE idCustom = '" . $id_custom . "'\r\n\tORDER BY sequence";
    $re_mains = sql_query($query_mains);
    while (list($id_db_main, $main_name) = sql_fetch_row($re_mains)) {
        $mains[$id_db_main] = $main_name;
        if ($id_db_main == $id_main) {
            $title_main = $main_name;
        }
    }
    $page_title = array('index.php?modname=amanmenu&amp;op=mancustom' => $lang->def('_TITLE_MANMENU'), 'index.php?modname=amanmenu&amp;op=manmenu&amp;id_custom=' . $id_custom => $custom_name, 'index.php?modname=amanmenu&amp;op=manmodule&amp;id_main=' . $id_main => $title_main, ($load ? $lang->def('_YOURE_WORKING_ON_MODULE') : $lang->def('_YOURE_IMPORTING')) . ' : ' . $name);
    // Form
    $out->add(getTitleArea($page_title, 'manmenu') . '<div class="std_block">' . getBackUi('index.php?modname=amanmenu&amp;op=manmodule&amp;id_main=' . $id_main, $lang->def('_BACK')) . '<div class="box_evidence">' . '<span class="text_bold">' . ($load ? $lang->def('_YOURE_WORKING_ON_MODULE') : $lang->def('_YOURE_IMPORTING')) . ' : </span>' . $name . '</div>' . Form::openForm('module_permission', 'index.php?modname=amanmenu&amp;op=upmodule&amp;id_main=' . $id_main . '&amp;id_module=' . $id_module) . Form::getHidden('id_main', 'id_main', $id_main) . Form::getHidden('id_module', 'id_module', $id_module) . ($load ? Form::getHidden('load', 'load', '1') : '') . Form::getTextfield($lang->def('_MY_NAME'), 'my_name', 'my_name', 255, $load ? $my_name : $lang->def('_DEFAULT_MY_NAME')) . Form::getDropdown($lang->def('_TITLE_MENUVOICE'), 'new_id_main', 'new_id_main', $mains, $id_main) . Form::getBreakRow() . $module_obj->getPermissionUi('module_permission', $perm, $module_op) . Form::getBreakRow() . Form::openButtonSpace() . Form::getButton('saveperm', 'saveperm', $load ? $lang->def('_SAVE') : $lang->def('_IMPORT')) . Form::getButton('undo', 'undo', $lang->def('_UNDO')) . Form::closeButtonSpace() . Form::closeForm() . '</div>');
}