function adminManager_edit_course()
{
    checkPerm('view');
    require_once $GLOBALS['where_lms'] . '/lib/lib.course_managment.php';
    $lang =& DoceboLanguage::createInstance('adminrules', 'framework');
    $adminidst = importVar('adminidst', true, 0);
    $out =& $GLOBALS['page'];
    $out->setWorkingZone('content');
    $sel = new Course_Manager();
    $sel->setLink('index.php?modname=admin_manager&op=edit_course');
    if (isset($_GET['load']) || isset($_POST['save_selection'])) {
        $course_initial_sel = array();
        $coursepath_initial_sel = array();
        $catalogue_initial_sel = array();
        $query = "\r\n\t\tSELECT id_entry, type_of_entry\r\n\t\tFROM " . $GLOBALS['prefix_fw'] . "_admin_course\r\n\t\tWHERE idst_user = '******'";
        $re_entry = sql_query($query);
        while (list($id, $type) = sql_fetch_row($re_entry)) {
            switch ($type) {
                case "course":
                    $course_initial_sel[$id] = $id;
                    break;
                case "coursepath":
                    $coursepath_initial_sel[$id] = $id;
                    break;
                case "catalogue":
                    $catalogue_initial_sel[$id] = $id;
                    break;
            }
        }
        if (isset($_GET['load'])) {
            $sel->resetCourseSelection($course_initial_sel);
            $sel->resetCoursePathSelection($coursepath_initial_sel);
            $sel->resetCatalogueSelection($catalogue_initial_sel);
        }
    }
    if (isset($_POST['save_selection'])) {
        $re = true;
        $course = $sel->getCourseSelection($_POST);
        $re &= updateEntry($course, $course_initial_sel, 'course', $adminidst);
        $coursepath = $sel->getCoursePathSelection($_POST);
        $re &= updateEntry($coursepath, $coursepath_initial_sel, 'coursepath', $adminidst);
        $catalogue = $sel->getCatalogueSelection($_POST);
        $re &= updateEntry($catalogue, $catalogue_initial_sel, 'catalogue', $adminidst);
        Util::jump_to('index.php?modname=admin_manager&op=view&result=' . ($re ? 'ok' : 'err'));
    }
    if (isset($_POST['undo_pref'])) {
        Util::jump_to('index.php?modname=admin_manager&op=view');
    }
    $out->addStart(getTitleArea($lang->def('_ADMIN_MANAGMENT'), 'admin_managmer', $lang->def('_ADMIN_MANAGMENT')) . '<div class="std_block">' . Form::openForm('admin_menu_editing', 'index.php?modname=admin_manager&amp;op=edit_course') . Form::getHidden('adminidst', 'adminidst', $adminidst), 'content');
    $out->addEnd(Form::openButtonSpace() . Form::getButton('save_selection', 'save_selection', $lang->def('_SAVE')) . Form::getButton('undo_pref', 'undo_pref', $lang->def('_UNDO')) . Form::closeButtonSpace() . Form::closeForm() . '</div>', 'content');
    $sel->loadSelector();
}
 public function courses()
 {
     $id_user = Get::req('id_user', DOTY_INT, 0);
     require_once _base_ . '/lib/lib.form.php';
     require_once _lms_ . '/lib/lib.course.php';
     require_once _lms_ . '/lib/lib.course_managment.php';
     $course_selector = new Course_Manager();
     $course_selector->setLink('index.php?r=adm/adminmanager/courses&id_user='******'undo'])) {
         Util::jump_to('index.php?r=adm/adminmanager/show');
     }
     if (isset($_POST['save'])) {
         $course_selected = $course_selector->getCourseSelection($_POST);
         $coursepath_selected = $course_selector->getCoursePathSelection($_POST);
         $catalogue_selected = $course_selector->getCatalogueSelection($_POST);
         if (isset($_POST['all_courses']) && $_POST['all_courses'] == 1) {
             $course_selected = array(0);
         }
         if (isset($_POST['all_courses']) && $_POST['all_courses'] == -1) {
             $course_selected = array(-1);
         }
         if ($this->model->saveCoursesAssociation($id_user, $course_selected, $coursepath_selected, $catalogue_selected)) {
             Util::jump_to('index.php?r=adm/adminmanager/show&res=ok_ins');
         }
         Util::jump_to('index.php?r=adm/adminmanager/show&res=err_ins');
     } else {
         $all_courses = 0;
         if (isset($_GET['load'])) {
             $old_association = $this->model->loadCourseSelectorSelection($id_user);
             if (isset($old_association['course'][0])) {
                 $all_courses = 1;
             } elseif (isset($old_association['course'][-1])) {
                 $all_courses = -1;
             } else {
                 $course_selector->resetCourseSelection($old_association['course']);
                 $course_selector->resetCoursePathSelection($old_association['coursepath']);
                 $course_selector->resetCatalogueSelection($old_association['catalogue']);
             }
         }
         $this->render('courses', array('id_user' => $id_user, 'all_courses' => $all_courses, 'course_selector' => $course_selector, 'model' => $this->model));
     }
 }