libdir.'/uploadlib.php'); require_once($CFG->libdir.'/xmlize.php'); require_once('preset_class.php'); $id = optional_param('id', 0, PARAM_INT); // course module id $d = optional_param('d', 0, PARAM_INT); // database activity id $action = optional_param('action', 'base', PARAM_ALPHANUM); // current action $fullname = optional_param('fullname', '', PARAM_PATH); // directory the preset is in $file = optional_param('file', '', PARAM_FILE); // uploaded file // find out preset owner userid and shortname $parts = explode('/', $fullname); $userid = empty($parts[0]) ? 0 : (int)$parts[0]; $shortname = empty($parts[1]) ? '' : $parts[1]; unset($parts); unset($fullname); if ($id) { if (! $cm = get_coursemodule_from_id('data', $id)) { print_error('invalidcoursemodule'); } if (! $course = $DB->get_record('course', array('id'=>$cm->course))) { print_error('coursemisconf'); } if (! $data = $DB->get_record('data', array('id'=>$cm->instance))) { print_error('invalidid', 'data'); } } else if ($d) { if (! $data = $DB->get_record('data', array('id'=>$d))) { print_error('invalidid', 'data'); } if (! $course = $DB->get_record('course', array('id'=>$data->course))) { print_error('coursemisconf'); } if (! $cm = get_coursemodule_from_instance('data', $data->id, $course->id)) { print_error('invalidcoursemodule'); } } else { print_error('missingparameter'); } if (!$context = get_context_instance(CONTEXT_MODULE, $cm->id)) { print_error('cannotfindcontext'); } require_login($course->id, false, $cm); require_capability('mod/data:managetemplates', $context); if ($userid && ($userid != $USER->id) && !has_capability('mod/data:viewalluserpresets', $context)) { print_error('cannotaccesspresentsother', 'data'); } /* Need sesskey security check here for import instruction */ $sesskey = sesskey(); /********************************************************************/ /* Output */ data_print_header($course, $cm, $data, 'presets'); $preset = new Data_Preset($shortname, $data->id, null, $userid); echo $preset->process_action($action, compact('shortname', 'fullname', 'data', 'userid', 'file', 'course', 'sesskey')); $presets = data_get_available_presets($context); $strimport = get_string('import'); $strfromfile = get_string('fromfile', 'data'); $strchooseorupload = get_string('chooseorupload', 'data'); $strusestandard = get_string('usestandard', 'data'); $strchoose = get_string('choose'); $strexport = get_string('export', 'data'); $strexportaszip = get_string('exportaszip', 'data'); $strsaveaspreset = get_string('saveaspreset', 'data'); $strsave = get_string('save', 'data'); $strdelete = get_string('delete'); echo '
'.$strexport.' | |
'; helpbutton('exportzip', '', 'data'); echo ' | '; $options = new object(); $options->action = 'export'; $options->d = $data->id; $options->sesskey = sesskey(); print_single_button('preset.php', $options, $strexport, 'post'); echo ' |
'; helpbutton('savepreset', '', 'data'); echo ' | '; $options = new object(); $options->action = 'save1'; $options->d = $data->id; $options->sesskey = sesskey(); print_single_button('preset.php', $options, $strsave, 'post'); echo ' |
'.$strimport.' | |
'; helpbutton('importfromfile', '', 'data'); echo ' | '; echo ''; echo ' |
'; helpbutton('usepreset', '', 'data'); echo ' | '; echo ''; echo ' |