iMath) - Computer Science Dep. of IME-USP (Brazil) * * License * - http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later * * @see restore_activity_task */ /** * Moodle core defines constant MOODLE_INTERNAL which shall be used to make sure that the script is included and not called directly. */ defined('MOODLE_INTERNAL') || die(); require_once($CFG->dirroot . '/mod/iassign/backup/moodle2/restore_iassign_stepslib.php'); /** * iassign restore task that provides all the settings and steps to perform one complete restore of the activity. */ class restore_iassign_activity_task extends restore_activity_task { /** * Define (add) particular settings this activity can have. */ protected function define_my_settings () { // No particular settings for this activity } /** * Define (add) particular steps this activity can have. */ protected function define_my_steps () { // iAssign only has one structure step $this->add_step(new restore_iassign_activity_structure_step('iassign_structure', 'iassign.xml')); } /** * Define the contents in the activity that must be * processed by the link decoder. * @return array Return a content of activity */ static public function define_decode_contents () { $contents = array(); $contents[] = new restore_decode_content('iassign', array('name'), 'iassign'); return $contents; } /** * Define the decoding rules for links belonging * to the activity to be executed by the link decoder. * @return array Return the restore decode rule. */ static public function define_decode_rules () { $rules = array(); $rules[] = new restore_decode_rule('IASSIGNVIEWBYID', '/mod/iassign/view.php?id=$1', 'course_module'); $rules[] = new restore_decode_rule('IASSIGNINDEX', '/mod/iassign/index.php?id=$1', 'course_module'); return $rules; } /** * Define the restore log rules that will be applied * by the {@link restore_logs_processor} when restoring * iassign logs. It must return one array * of {@link restore_log_rule} objects. * @return array Return the restore log rule. */ static public function define_restore_log_rules () { $rules = array(); $rules[] = new restore_log_rule('iassign', 'add', 'view.php?id={course_module}', '{iassign}'); $rules[] = new restore_log_rule('iassign', 'update', 'view.php?id={course_module}', '{iassign}'); $rules[] = new restore_log_rule('iassign', 'view', 'view.php?id={course_module}', '{iassign}'); $rules[] = new restore_log_rule('iassign', 'view submission', 'view.php?id={course_module}', '{iassign}'); $rules[] = new restore_log_rule('iassign', 'upload', 'view.php?id={course_module}', '{iassign}'); $rules[] = new restore_log_rule('iassign', 'update comment', 'view.php?id={course_module}', '{iassign}'); $rules[] = new restore_log_rule('iassign', 'update submission', 'view.php?id={course_module}', '{iassign}'); $rules[] = new restore_log_rule('iassign', 'delete iassign', 'view.php?id={course_module}', '{iassign}'); $rules[] = new restore_log_rule('iassign', 'add comment', 'view.php?id={course_module}', '{iassign}'); $rules[] = new restore_log_rule('iassign', 'add submission', 'view.php?id={course_module}', '{iassign}'); // more... return $rules; } /** * Define the restore log rules that will be applied * by the {@link restore_logs_processor} when restoring * course logs. It must return one array * of {@link restore_log_rule} objects * * Note this rules are applied when restoring course logs * by the restore final task, but are defined here at * activity level. All them are rules not linked to any module instance (cmid = 0) * * @return array Return the restore log rule of course. */ static public function define_restore_log_rules_for_course () { $rules = array(); return $rules; } }