. /** * Various workshop maintainance utilities * * @package mod * @subpackage workshop * @copyright 2010 David Mudrak * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ require_once(dirname(dirname(dirname(__FILE__))).'/config.php'); require_once(dirname(__FILE__).'/locallib.php'); $id = required_param('id', PARAM_INT); // course_module ID $tool = required_param('tool', PARAM_ALPHA); $cm = get_coursemodule_from_id('workshop', $id, 0, false, MUST_EXIST); $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST); $workshop = $DB->get_record('workshop', array('id' => $cm->instance), '*', MUST_EXIST); require_login($course, false, $cm); $workshop = new workshop($workshop, $cm, $course); require_sesskey(); switch ($tool) { case 'clearaggregatedgrades': require_capability('mod/workshop:overridegrades', $workshop->context); $workshop->log('update clear aggregated grades'); $workshop->clear_submission_grades(); $workshop->clear_grading_grades(); break; case 'clearassessments': require_capability('mod/workshop:overridegrades', $workshop->context); $workshop->log('update clear assessments'); $workshop->clear_assessments(); break; } redirect($workshop->view_url());