|
Moodle
2.2.1
http://www.collinsharper.com
|
00001 <?php 00002 00003 require_once("../../config.php"); 00004 require_once("lib.php"); 00005 require_once($CFG->libdir . '/completionlib.php'); 00006 require_once($CFG->libdir . '/plagiarismlib.php'); 00007 00008 $id = optional_param('id', 0, PARAM_INT); // Course Module ID 00009 $a = optional_param('a', 0, PARAM_INT); // Assignment ID 00010 00011 $url = new moodle_url('/mod/assignment/view.php'); 00012 if ($id) { 00013 if (! $cm = get_coursemodule_from_id('assignment', $id)) { 00014 print_error('invalidcoursemodule'); 00015 } 00016 00017 if (! $assignment = $DB->get_record("assignment", array("id"=>$cm->instance))) { 00018 print_error('invalidid', 'assignment'); 00019 } 00020 00021 if (! $course = $DB->get_record("course", array("id"=>$assignment->course))) { 00022 print_error('coursemisconf', 'assignment'); 00023 } 00024 $url->param('id', $id); 00025 } else { 00026 if (!$assignment = $DB->get_record("assignment", array("id"=>$a))) { 00027 print_error('invalidid', 'assignment'); 00028 } 00029 if (! $course = $DB->get_record("course", array("id"=>$assignment->course))) { 00030 print_error('coursemisconf', 'assignment'); 00031 } 00032 if (! $cm = get_coursemodule_from_instance("assignment", $assignment->id, $course->id)) { 00033 print_error('invalidcoursemodule'); 00034 } 00035 $url->param('a', $a); 00036 } 00037 00038 $PAGE->set_url($url); 00039 require_login($course, true, $cm); 00040 00041 $PAGE->requires->js('/mod/assignment/assignment.js'); 00042 00043 require ("$CFG->dirroot/mod/assignment/type/$assignment->assignmenttype/assignment.class.php"); 00044 $assignmentclass = "assignment_$assignment->assignmenttype"; 00045 $assignmentinstance = new $assignmentclass($cm->id, $assignment, $cm, $course); 00046 00048 $completion=new completion_info($course); 00049 $completion->set_module_viewed($cm); 00050 00051 $assignmentinstance->view(); // Actually display the assignment!