Moodle  2.2.1
http://www.collinsharper.com
C:/xampp/htdocs/moodle/mod/survey/backup/moodle2/backup_survey_stepslib.php
Go to the documentation of this file.
00001 <?php
00002 
00003 // This file is part of Moodle - http://moodle.org/
00004 //
00005 // Moodle is free software: you can redistribute it and/or modify
00006 // it under the terms of the GNU General Public License as published by
00007 // the Free Software Foundation, either version 3 of the License, or
00008 // (at your option) any later version.
00009 //
00010 // Moodle is distributed in the hope that it will be useful,
00011 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00012 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00013 // GNU General Public License for more details.
00014 //
00015 // You should have received a copy of the GNU General Public License
00016 // along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
00017 
00032 class backup_survey_activity_structure_step extends backup_activity_structure_step {
00033 
00034     protected function define_structure() {
00035 
00036         // To know if we are including userinfo
00037         $userinfo = $this->get_setting_value('userinfo');
00038 
00039         // Define each element separated
00040         $survey = new backup_nested_element('survey', array('id'), array(
00041             'name', 'intro', 'introformat', 'template',
00042             'questions', 'days', 'timecreated', 'timemodified'));
00043 
00044         $answers = new backup_nested_element('answers');
00045 
00046         $answer = new backup_nested_element('answer', array('id'), array(
00047             'userid', 'question', 'time', 'answer1',
00048             'answer2'));
00049 
00050         $analysis = new backup_nested_element('analysis');
00051 
00052         $analys = new backup_nested_element('analys', array('id'), array(
00053             'userid', 'notes'));
00054 
00055         // Build the tree
00056         $survey->add_child($answers);
00057         $answers->add_child($answer);
00058 
00059         $survey->add_child($analysis);
00060         $analysis->add_child($analys);
00061 
00062         // Define sources
00063         $survey->set_source_table('survey', array('id' => backup::VAR_ACTIVITYID));
00064 
00065         $answer->set_source_table('survey_answers', array('survey' => backup::VAR_PARENTID));
00066 
00067         $analys->set_source_table('survey_analysis', array('survey' => backup::VAR_PARENTID));
00068 
00069         // Define id annotations
00070         $answer->annotate_ids('user', 'userid');
00071         $analys->annotate_ids('user', 'userid');
00072 
00073         // Define file annotations
00074         $survey->annotate_files('mod_survey', 'intro', null); // This file area hasn't itemid
00075 
00076         // Return the root element (survey), wrapped into standard activity structure
00077         return $this->prepare_activity_structure($survey);
00078     }
00079 }
 All Data Structures Namespaces Files Functions Variables Enumerations