dirroot.'/grade/export/lib.php'; require_once 'grade_export_xml.php'; $id = required_param('id', PARAM_INT); // course id $feedback = optional_param('feedback', '', PARAM_ALPHA); if (!$course = get_record('course', 'id', $id)) { print_error('nocourseid'); } require_login($course); $context = get_context_instance(CONTEXT_COURSE, $id); require_capability('moodle/grade:export', $context); require_capability('gradeexport/xml:view', $context); $strgrades = get_string('grades', 'grades'); $actionstr = get_string('modulename', 'gradeexport_xml'); $navigation = grade_build_nav(__FILE__, $actionstr, array('courseid' => $course->id)); print_header($course->shortname.': '.get_string('grades'), $course->fullname, $navigation); print_grade_plugin_selector($id, 'export', 'xml'); $mform = new grade_export_form(null, array('idnumberrequired'=>true, 'publishing'=>true)); // process post information if ($data = $mform->get_data()) { $itemids = array(); if ($data->itemids) { foreach ($data->itemids as $itemid=>$selected) { if ($selected) { $itemids[] = $itemid; } } $itemidsurl = implode(",", $itemids); } else { //error? $itemidsurl = ''; } // print the grades on screen for feedbacks $export = new grade_export($id, $itemids, $data->export_letters, !empty($data->key)); $export->display_grades($feedback, $data->previewrows); // this redirect should trigger a download prompt if (empty($data->key)) { print_continue('export.php?id='.$id.'&itemids='.$itemidsurl.'&export_letters='.$data->export_letters); } else { if ($data->key == 1) { $data->key = create_user_key('grade/export', $USER->id, $COURSE->id, $data->iprestriction, $data->validuntil); } $link = $CFG->wwwroot.'/grade/export/xml/dump.php?id='.$id.'&itemids='.$itemidsurl.'&export_letters='.$data->export_letters.'&key='.$data->key; echo '
'; echo ''.$link.''; echo '
'; print_footer(); } exit; } $mform->display(); print_footer(); ?>