Note: You are currently viewing documentation for Moodle 1.9. Up-to-date documentation for the latest stable version is available here: Backup.

Development:Backup

From MoodleDocs

Please add backup and restore documentation for new developers here...

Back Up for your Module

Your backup functions should sit in a file called backuplib.php in your module folder. As a minimum you should write the following functions:

  • MODULENAME_backup_mods($bf,$preferences) - backs up all instances of your module
  • MODULENAME_backup_one_mod($bf,$preferences,$scefcentre) - backs up a single instance of your module
  • MODULENAME_check_backup_mods($course,$user_data=false,$backup_unique_code,$instances=null) - generates an array of course and user data information used to select which instances to backup (and whether to include user data or not). This includes details at [0][0] and [0][1] about the course module name and number of instances for the course and at [1][0] and [1][1] with the module name and count of user information.
  • MODULENAME_check_backup_mods_instances($instance,$backup_unique_code) - generates an array of course and user data information for a specific instance.
  • MODULENAME__encode_content_links ($content,$preferences) - recode links to ensure they work when reimported.

MODULENAME_backup_one_mod should generate XML output by calling the fwrite() function. This XML should cover all fields in the database:

//Start mod fwrite ($bf,start_tag("MOD",3,true));

//generate XML representing the DB fwrite ($bf,full_tag("ID",4,false, 'VALUE_GOES_HERE')); fwrite ($bf,full_tag("TEXT",4,false, 'VALUE_GOES_HERE'));

//End mod $status =fwrite ($bf,end_tag("MOD",3,true));

See also

Using Moodle forum discussions: