iMath) - Computer Science Dep. of IME-USP (Brazil) * * License * - http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ require_once("../../config.php"); require_once("lib.php"); require_once($CFG->libdir . '/completionlib.php'); require_once($CFG->libdir . '/plagiarismlib.php'); //Parameters GET e POST (parĂ¢metros GET e POST) $id = optional_param('id', 0, PARAM_INT); // Course Module ID $a = optional_param('a', 0, PARAM_INT); // iAssign instance id (from table 'iassign') $mood_url = new moodle_url('/mod/iassign/view.php'); if ($id) { // ./lib/datalib.php : function get_coursemodule_from_id($modulename, $cmid, $courseid=0, $sectionnum=false, $strictness=IGNORE_MISSING): returns 'course_modules.*' and 'modules.name' $cm = get_coursemodule_from_id('iassign', $id); if (!$cm) { // Moodle function 'get_coursemodule_from_id(...)' returns the object from table '*_iassign_statement' print_error('invalidcoursemodule'); } $iassign = $DB->get_record("iassign", array("id" => $cm->instance)); if (!$iassign) { // 'course_modules.instance = iassign.id' print_error('invalidid', 'iassign'); } $course = $DB->get_record("course", array("id" => $iassign->course)); if (!$course) { print_error('coursemisconf', 'iassign'); } $mood_url->param('id', $id); } else { $iassign = $DB->get_record("iassign", array("id" => $a)); if (!$iassign) { print_error('invalidid', 'iassign'); } $course = $DB->get_record("course", array("id" => $iassign->course)); if (!$course) { print_error('coursemisconf', 'iassign'); } $cm = get_coursemodule_from_instance("iassign", $iassign->id, $course->id); if (!$cm) { print_error('invalidcoursemodule'); } $mood_url->param('a', $a); } $PAGE->set_url($mood_url); require_login($course, true, $cm); $PAGE->set_title(format_string($iassign->name)); $PAGE->set_heading($course->fullname); // Mark viewed by user (if required) $completion = new completion_info($course); $completion->set_module_viewed($cm); // About each object // - $iassing :: object from table '*_iassign_statement' // - $cm :: object from table '*_course_modules' // - $course :: object from table '*_course_modules_completion' $write_solution = 1; //$iassigninstance = new iassign($iassign, $cm, $course, array('write_solution' => 1)); // locallib.php : class iassign : function __construct ($iassign, $cm, $course) $iassigninstance = new iassign($iassign, $cm, $course); // locallib.php : class iassign : function __construct ($iassign, $cm, $course) $iassigninstance->view(); // ./mod/iassign/locallib.php : actually who display the iAssign whose id is '$id'! (this function ignores parameters)