It appears that backup_scheduled.php was not sending the instances to the module backup functions. The following patch seems to be working for me:
Index: backup/backup_scheduled.php
===================================================================
— backup/backup_scheduled.php (revision 1023)
+++ backup/backup_scheduled.php (working copy)
@@ -423,9 +423,13 @@
$preferences->mods[$mod->modname]->instances = array(); // avoid warnings
}
$preferences->mods[$mod->modname]->instances[$mod->instance]>backup = $preferences>mods[$mod->modname]->backup;
+ // backuplib.php expects userinfo
+ // The modules seem to want userdata
$preferences->mods[$mod->modname]->instances[$mod->instance]>userinfo = $preferences>mods[$mod->modname]->userinfo;
+ $preferences->mods[$mod->modname]->instances[$mod->instance]>userdata = $preferences>mods[$mod->modname]->userinfo;
// there isn't really a nice way to do this...
$preferences->mods[$mod->modname]->instances[$mod->instance]>name = get_field($mod>modname,'name','id',$mod->instance);
+ $preferences->mods[$mod->modname]->instances[$mod->instance]>id = $mod>instance;
}
}
}
@@ -492,6 +496,10 @@
foreach ($allmods as $mod) {
$modname = $mod->name;
$modbackup = $modname."_backup_mods";
+ $instances = null;
+ if (isset($preferences->mods[$modname]->instances)) {
+ $instances = $preferences->mods[$modname]->instances;
+ }
//If exists the lib & function
$var = "exists_".$modname;
if (isset($$var) && $$var) {
@@ -503,7 +511,7 @@
//Call the check function to show more info
$modcheckbackup = $modname."_check_backup_mods";
schedule_backup_log($starttime,$course->id," $modname");
- $modcheckbackup($course->id,$$var,$backup_unique_code);
+ $modcheckbackup($course->id,$$var,$backup_unique_code,$instances);
}
}
}
It appears that backup_scheduled.php was not sending the instances to the module backup functions. The following patch seems to be working for me:
Index: backup/backup_scheduled.php
===================================================================
— backup/backup_scheduled.php (revision 1023)
+++ backup/backup_scheduled.php (working copy)
@@ -423,9 +423,13 @@
$preferences->mods[$mod->modname]->instances = array(); // avoid warnings
}
$preferences->mods[$mod->modname]->instances[$mod->instance]
>backup = $preferences>mods[$mod->modname]->backup;+ // backuplib.php expects userinfo
+ // The modules seem to want userdata
$preferences->mods[$mod->modname]->instances[$mod->instance]
>userinfo = $preferences>mods[$mod->modname]->userinfo;+ $preferences->mods[$mod->modname]->instances[$mod->instance]
>userdata = $preferences>mods[$mod->modname]->userinfo;// there isn't really a nice way to do this...
$preferences->mods[$mod->modname]->instances[$mod->instance]
>name = get_field($mod>modname,'name','id',$mod->instance);+ $preferences->mods[$mod->modname]->instances[$mod->instance]
>id = $mod>instance;}
}
}
@@ -492,6 +496,10 @@
foreach ($allmods as $mod) {
$modname = $mod->name;
$modbackup = $modname."_backup_mods";
+ $instances = null;
+ if (isset($preferences->mods[$modname]->instances)) { + $instances = $preferences->mods[$modname]->instances; + }
//If exists the lib & function
$var = "exists_".$modname;
if (isset($$var) && $$var) { @@ -503,7 +511,7 @@ //Call the check function to show more info $modcheckbackup = $modname."_check_backup_mods"; schedule_backup_log($starttime,$course->id," $modname"); - $modcheckbackup($course->id,$$var,$backup_unique_code); + $modcheckbackup($course->id,$$var,$backup_unique_code,$instances); }
}
}
>backup = $preferences>mods[$mod->modname]->backup; + // backuplib.php expects userinfo + // The modules seem to want userdata $preferences->mods[$mod->modname]->instances[$mod->instance]>userinfo = $preferences>mods[$mod->modname]->userinfo; + $preferences->mods[$mod->modname]->instances[$mod->instance]>userdata = $preferences>mods[$mod->modname]->userinfo; // there isn't really a nice way to do this... $preferences->mods[$mod->modname]->instances[$mod->instance]>name = get_field($mod>modname,'name','id',$mod->instance); + $preferences->mods[$mod->modname]->instances[$mod->instance]>id = $mod>instance; } } } @@ -492,6 +496,10 @@ foreach ($allmods as $mod) { $modname = $mod->name; $modbackup = $modname."_backup_mods"; + $instances = null; + if (isset($preferences->mods[$modname]->instances)) { + $instances = $preferences->mods[$modname]->instances; + } //If exists the lib & function $var = "exists_".$modname; if (isset($$var) && $$var) { @@ -503,7 +511,7 @@ //Call the check function to show more info $modcheckbackup = $modname."_check_backup_mods"; schedule_backup_log($starttime,$course->id," $modname"); - $modcheckbackup($course->id,$$var,$backup_unique_code); + $modcheckbackup($course->id,$$var,$backup_unique_code,$instances); } } }