]> git.mjollnir.org Git - moodle.git/commitdiff
fixed some notices in scheduled backup; merged from MOODLE_16_STABLE
authorskodak <skodak>
Mon, 21 Aug 2006 20:40:07 +0000 (20:40 +0000)
committerskodak <skodak>
Mon, 21 Aug 2006 20:40:07 +0000 (20:40 +0000)
backup/backuplib.php

index f91d6479b5da1652dd0b2b2fdbaee91f534e9dea..7473383640732a659013ce580b7569c28c192895 100644 (file)
             fwrite ($bf,full_tag("INCLUDED",4,false,$included));
             fwrite ($bf,full_tag("USERINFO",4,false,$userinfo));
 
-            if (is_array($preferences->mods[$element->name]->instances)
+            if (isset($preferences->mods[$element->name]->instances)
+                && is_array($preferences->mods[$element->name]->instances)
                 && count($preferences->mods[$element->name]->instances)) {
                 fwrite ($bf, start_tag("INSTANCES",4,true));
                 foreach ($preferences->mods[$element->name]->instances as $id => $object) {
                     //See if it is a valid module to backup
                     if ($log->module == "course" or 
                         $log->module == "user" or
-                        $preferences->mods[$log->module]->backup == 1) {
+                        (array_key_exists($log->module, $preferences->mods) and $preferences->mods[$log->module]->backup == 1)) {
+                        // logs with 'upload' in module field are ignored, there is no restore code anyway 
                         //Begin log tag
                          fwrite ($bf,start_tag("LOG",3,true));
     
 
         require_once($CFG->dirroot.'/mod/'.$module.'/backuplib.php');
 
-        if (is_array($preferences->mods[$module]->instances)) {
+        if (isset($preferences->mods[$module]->instances)
+            && is_array($preferences->mods[$module]->instances)) {
             $onemodbackup = $module.'_backup_one_mod';
             if (function_exists($onemodbackup)) {
                 foreach ($preferences->mods[$module]->instances as $instance => $object) {