function assignrule(&$url) { checkPerm('mod'); require_once $GLOBALS['where_lms'] . '/lib/lib.course_managment.php'; $id_rule = importVar('id_rule', true, 0); require_once $GLOBALS['where_lms'] . '/lib/lib.preassessment.php'; $assess_man = new AssessmentList(); $rule_man = new AssessmentRule(); $lang =& DoceboLanguage::createInstance('preassessment'); // recover assessment $rule = $rule_man->getRule($id_rule); $id_assessment = $rule[RULE_ID_ASSESS]; $assess = $assess_man->getAssessment($id_assessment); $sel = new Course_Manager(); $sel->show_catalogue_selector = false; $sel->setLink($url->getUrl('op=assignrule')); if (isset($_POST['cancel_assign'])) { Util::jump_to($url->getUrl('&op=modrule&id_assess=' . $id_assessment)); } if (isset($_GET['load'])) { $effects = $rule_man->parseEffects($rule[RULE_EFFECT]); if (isset($_GET['load'])) { $sel->resetCourseSelection($effects['course']); $sel->resetCoursePathSelection($effects['coursepath']); } } if (isset($_POST['save_selection'])) { $re = true; $course = $sel->getCourseSelection($_POST); $coursepath = $sel->getCoursePathSelection($_POST); $re = $rule_man->setEffects($id_rule, $course, $coursepath); Util::jump_to($url->getUrl('&op=modrule&id_assess=' . $id_assessment . '&result=' . ($re ? 'ok_rule' : 'err_rule'))); } $rule_name = $rule_man->resolveRuleTypePhrase($lang, $rule); $GLOBALS['page']->addStart(getTitleArea(array($url->getUrl() => $lang->def('_ASSESSMENT'), $url->getUrl('&op=modrule&id_assess=' . $id_assessment) => $lang->def('_RULES') . ': ' . $assess['name'], '"' . $rule_name . '"'), 'preassessment') . '<div class="std_block">' . Form::openForm('man_assign_rule', $url->getUrl('op=assignrule')) . Form::getHidden('id_rule', 'id_rule', $id_rule), 'content'); $GLOBALS['page']->addEnd(Form::openButtonSpace() . Form::getButton('save_selection', 'save_selection', $lang->def('_SAVE')) . Form::getButton('cancel_assign', 'cancel_assign', $lang->def('_UNDO')) . Form::closeButtonSpace() . Form::closeForm() . '</div>', 'content'); $sel->loadSelector(); }