MDL-31006 fix various notices in PHP54
authorPetr Skoda <commits@skodak.org>
Sun, 15 Jan 2012 12:37:53 +0000 (13:37 +0100)
committerEloy Lafuente (stronk7) <stronk7@moodle.org>
Wed, 18 Jan 2012 00:03:20 +0000 (01:03 +0100)
PHP54 compatibility

34 files changed:
admin/blocks.php
admin/enrol.php
admin/modules.php
admin/qbehaviours.php
admin/qtypes.php
admin/tool/timezoneimport/index.php
blocks/admin_bookmarks/block_admin_bookmarks.php
blocks/comments/block_comments.php
blocks/glossary_random/block_glossary_random.php
blocks/html/edit_form.php
blocks/login/block_login.php
blocks/mentees/block_mentees.php
blocks/navigation/block_navigation.php
blocks/private_files/block_private_files.php
blocks/settings/block_settings.php
blocks/tags/block_tags.php
calendar/lib.php
course/format/weeks/format.php
course/index.php
course/lib.php
lib/blocklib.php
lib/datalib.php
lib/filelib.php
lib/filterlib.php
lib/formslib.php
lib/moodlelib.php
login/index.php
message/lib.php
mod/chat/lib.php
mod/feedback/lib.php
mod/forum/lib.php
mod/forum/post.php
report/participation/index.php
user/index.php

index ca9633d..b1c53df 100644 (file)
         } else {
             uninstall_plugin('block', $block->name);
 
+            $a = new stdClass();
             $a->block = $strblockname;
             $a->directory = $CFG->dirroot.'/blocks/'.$block->name;
             notice(get_string('blockdeletefiles', '', $a), 'blocks.php');
index 2d53db9..ab14a23 100644 (file)
@@ -31,6 +31,7 @@ $enrol   = required_param('enrol', PARAM_PLUGIN);
 $confirm = optional_param('confirm', 0, PARAM_BOOL);
 
 $PAGE->set_url('/admin/enrol.php');
+$PAGE->set_context(context_system::instance());
 
 require_login();
 require_capability('moodle/site:config', get_context_instance(CONTEXT_SYSTEM));
@@ -112,6 +113,7 @@ switch ($action) {
             uninstall_plugin('enrol', $enrol);
             $syscontext->mark_dirty(); // resets all enrol caches
 
+            $a = new stdClass();
             $a->plugin = $strplugin;
             $a->directory = "$CFG->dirroot/enrol/$enrol";
             echo $OUTPUT->notification(get_string('uninstalldeletefiles', 'enrol', $a), 'notifysuccess');
index 45f7a57..2290612 100644 (file)
@@ -92,6 +92,7 @@
             }
 
             uninstall_plugin('mod', $delete);
+            $a = new stdClass();
             $a->module = $strmodulename;
             $a->directory = "$CFG->dirroot/mod/$delete";
             echo $OUTPUT->notification(get_string("moduledeletefiles", "", $a), 'notifysuccess');
index 2ae5f08..ce81b13 100644 (file)
@@ -191,6 +191,7 @@ if (($delete = optional_param('delete', '', PARAM_PLUGIN)) && confirm_sesskey())
     // Remove event handlers and dequeue pending events
     events_uninstall('qbehaviour_' . $delete);
 
+    $a = new stdClass();
     $a->behaviour = $behaviourname;
     $a->directory = get_plugin_directory('qbehaviour', $delete);
     echo $OUTPUT->box(get_string('qbehaviourdeletefiles', 'question', $a), 'generalbox', 'notice');
index 79bcf68..cbe828f 100644 (file)
@@ -171,6 +171,7 @@ if (($delete = optional_param('delete', '', PARAM_PLUGIN)) && confirm_sesskey())
     // Remove event handlers and dequeue pending events
     events_uninstall('qtype_' . $delete);
 
+    $a = new stdClass();
     $a->qtype = $qtypename;
     $a->directory = $qtypes[$delete]->plugin_dir();
     echo $OUTPUT->box(get_string('qtypedeletefiles', 'question', $a), 'generalbox', 'notice');
index 8319f83..478ca4c 100644 (file)
 /// That's it!
 
     if ($importdone) {
-        $a = null;
+        $a = new stdClass();
         $a->count = count($timezones);
         $a->source  = $importdone;
         echo $OUTPUT->heading(get_string('importtimezonescount', 'tool_timezoneimport', $a), 3);
index 856b9b8..331f353 100644 (file)
@@ -79,6 +79,7 @@ class block_admin_bookmarks extends block_base {
         if ($this->contentgenerated === true) {
             return $this->content;
         }
+        $this->content = new stdClass();
 
         if (get_user_preferences('admin_bookmarks')) {
             require_once($CFG->libdir.'/adminlib.php');
index a00cd09..527d020 100644 (file)
@@ -48,21 +48,23 @@ class block_comments extends block_base {
 
     function get_content() {
         global $CFG, $PAGE;
+        if ($this->content !== NULL) {
+            return $this->content;
+        }
         if (!$CFG->usecomments) {
+            $this->content = new stdClass();
             $this->content->text = '';
             if ($this->page->user_is_editing()) {
                 $this->content->text = get_string('disabledcomments');
             }
             return $this->content;
         }
-        if ($this->content !== NULL) {
-            return $this->content;
-        }
-        if (empty($this->instance)) {
-            return null;
-        }
+        $this->content = new stdClass();
         $this->content->footer = '';
         $this->content->text = '';
+        if (empty($this->instance)) {
+            return $this->content;
+        }
         list($context, $course, $cm) = get_context_info_array($PAGE->context->id);
 
         $args = new stdClass;
index 72fc75b..649cd77 100644 (file)
@@ -119,6 +119,7 @@ class block_glossary_random extends block_base {
         global $USER, $CFG, $DB;
 
         if (empty($this->config->glossary)) {
+            $this->content = new stdClass();
             $this->content->text   = get_string('notyetconfigured','block_glossary_random');
             $this->content->footer = '';
             return $this->content;
@@ -153,7 +154,7 @@ class block_glossary_random extends block_base {
             return $this->content;
         }
 
-        $this->content = new stdClass;
+        $this->content = new stdClass();
         $this->content->text = $this->config->cache;
 
         // place link to glossary in the footer if the glossary is visible
index 30c005d..aa7b466 100644 (file)
@@ -72,6 +72,9 @@ class block_html_edit_form extends block_edit_form {
         unset($this->block->config->text);
         parent::set_data($defaults);
         // restore $text
+        if (!isset($this->block->config)) {
+            $this->block->config = new stdClass();
+        }
         $this->block->config->text = $text;
         if (isset($title)) {
             // Reset the preserved title
index 516a5fa..2d92009 100644 (file)
@@ -43,6 +43,7 @@ class block_login extends block_base {
 
         $username = get_moodle_cookie();
 
+        $this->content = new stdClass();
         $this->content->footer = '';
         $this->content->text = '';
 
index 45d9463..aa340af 100644 (file)
@@ -25,6 +25,8 @@ class block_mentees extends block_base {
             return $this->content;
         }
 
+        $this->content = new stdClass();
+
         // get all the mentees, i.e. users you have a direct assignment to
         if ($usercontexts = $DB->get_records_sql("SELECT c.instanceid, c.instanceid, u.firstname, u.lastname
                                                     FROM {role_assignments} ra, {context} c, {user} u
index 79b8086..00f06cf 100644 (file)
@@ -195,6 +195,7 @@ class block_navigation extends block_base {
         
         // Grab the items to display
         $renderer = $this->page->get_renderer('block_navigation');
+        $this->content = new stdClass();
         $this->content->text = $renderer->navigation_tree($navigation, $expansionlimit, $options);
 
         // Set content generated to true so that we know it has been done
index a552dd9..32e1282 100644 (file)
@@ -51,6 +51,7 @@ class block_private_files extends block_base {
             return null;
         }
 
+        $this->content = new stdClass();
         $this->content->text = '';
         $this->content->footer = '';
         if (isloggedin() && !isguestuser()) {   // Show the block
index 89706f6..3e2aea8 100644 (file)
@@ -129,6 +129,7 @@ class block_settings extends block_base {
         }
 
         $renderer = $this->page->get_renderer('block_settings');
+        $this->content = new stdClass();
         $this->content->text = $renderer->settings_tree($this->page->settingsnav);
 
         // only do search if you have moodle/site:config
index 0a35df1..b7a35fd 100644 (file)
@@ -47,6 +47,10 @@ class block_tags extends block_base {
             return $this->content;
         }
 
+        if (!isset($this->config)) {
+            $this->config = new stdClass();
+        }
+
         if (empty($this->config->numberoftags)) {
             $this->config->numberoftags = 80;
         }
index c60e6b6..8b9e480 100644 (file)
@@ -1540,6 +1540,7 @@ function calendar_set_event_type_display($type, $display = null, $user = null) {
 
 function calendar_get_allowed_types(&$allowed, $course = null) {
     global $USER, $CFG, $DB;
+    $allowed = new stdClass();
     $allowed->user = has_capability('moodle/calendar:manageownentries', get_system_context());
     $allowed->groups = false; // This may change just below
     $allowed->courses = false; // This may change just below
index 74fb964..c5c78fa 100644 (file)
@@ -141,7 +141,7 @@ defined('MOODLE_INTERNAL') || die();
             $thissection = $sections[$section];
 
         } else {
-            unset($thissection);
+            $thissection = new stdClass();
             $thissection->course = $course->id;   // Create a new week structure
             $thissection->section = $section;
             $thissection->name    = null;
index f0a0c10..e873128 100644 (file)
@@ -373,6 +373,7 @@ function print_category_edit($category, $displaylist, $parentslist, $depth=-1, $
         echo '</td>';
         echo '</tr>';
     } else {
+        $category = new stdClass();
         $category->id = '0';
     }
 
index e5dc991..eae0bee 100644 (file)
@@ -1074,6 +1074,7 @@ function get_array_of_activities($courseid) {
                    if (empty($rawmods[$seq])) {
                        continue;
                    }
+                   $mod[$seq] = new stdClass();
                    $mod[$seq]->id               = $rawmods[$seq]->instance;
                    $mod[$seq]->cm               = $rawmods[$seq]->id;
                    $mod[$seq]->mod              = $rawmods[$seq]->modname;
@@ -2127,6 +2128,7 @@ function print_whole_category_list($category=NULL, $displaylist=NULL, $parentsli
         }
 
     } else {
+        $category = new stdClass();
         $category->id = "0";
     }
 
@@ -2500,7 +2502,7 @@ function print_course($course, $highlightterms = '') {
     echo html_writer::end_tag('div'); // End of info div
 
     echo html_writer::start_tag('div', array('class'=>'summary'));
-    $options = NULL;
+    $options = new stdClass();
     $options->noclean = true;
     $options->para = false;
     $options->overflowdiv = true;
@@ -2647,7 +2649,7 @@ function print_remote_course($course, $width="100%") {
         . format_string($course->cat_name) . ' : '
         . format_string($course->shortname). '</div>';
     echo '</div><div class="summary">';
-    $options = NULL;
+    $options = new stdClass();
     $options->noclean = true;
     $options->para = false;
     $options->overflowdiv = true;
index 508b94c..90d990c 100644 (file)
@@ -1675,7 +1675,7 @@ function generate_page_type_patterns($pagetype, $parentcontext = null, $currentc
 
     // Ensure that the * pattern is always available if editing block 'at distance', so
     // we always can 'bring back' it to the original context. MDL-30340
-    if ($currentcontext->id != $parentcontext->id && !isset($patterns['*'])) {
+    if ((!isset($currentcontext) or !isset($parentcontext) or $currentcontext->id != $parentcontext->id) && !isset($patterns['*'])) {
         // TODO: We could change the string here, showing its 'bring back' meaning
         $patterns['*'] = get_string('page-x', 'pagetype');
     }
index 91d97bd..7cc195e 100644 (file)
@@ -1260,7 +1260,7 @@ function get_my_remotehosts() {
 function make_default_scale() {
     global $DB;
 
-    $defaultscale = NULL;
+    $defaultscale = new stdClass();
     $defaultscale->courseid = 0;
     $defaultscale->userid = 0;
     $defaultscale->name  = get_string('separateandconnected');
index ee4db2f..1c3ddf3 100644 (file)
@@ -128,6 +128,9 @@ function file_prepare_standard_editor($data, $field, array $options, $context=nu
     if (is_null($itemid) or is_null($context)) {
         $contextid = null;
         $itemid = null;
+        if (!isset($data)) {
+            $data = new stdClass();
+        }
         if (!isset($data->{$field})) {
             $data->{$field} = '';
         }
index bb5ed88..3496f37 100644 (file)
@@ -829,6 +829,10 @@ function filter_get_all_local_settings($contextid) {
 function filter_get_active_in_context($context) {
     global $DB, $FILTERLIB_PRIVATE;
 
+    if (!isset($FILTERLIB_PRIVATE)) {
+        $FILTERLIB_PRIVATE = new stdClass();
+    }
+
     // Use cache (this is a within-request cache only) if available. See
     // function filter_preload_activities.
     if (isset($FILTERLIB_PRIVATE->active) &&
@@ -877,6 +881,10 @@ function filter_get_active_in_context($context) {
 function filter_preload_activities(course_modinfo $modinfo) {
     global $DB, $FILTERLIB_PRIVATE;
 
+    if (!isset($FILTERLIB_PRIVATE)) {
+        $FILTERLIB_PRIVATE = new stdClass();
+    }
+
     // Don't repeat preload
     if (!isset($FILTERLIB_PRIVATE->preloaded)) {
         $FILTERLIB_PRIVATE->preloaded = array();
index 003e121..0818fbe 100644 (file)
@@ -2466,6 +2466,10 @@ class MoodleQuickForm_Rule_Required extends HTML_QuickForm_Rule {
         if (is_array($value) && array_key_exists('text', $value)) {
             $value = $value['text'];
         }
+        if (is_array($value)) {
+            // nasty guess - there has to be something in the array, hopefully nobody invents arrays in arrays
+            $value = implode('', $value);
+        }
         $stripvalues = array(
             '#</?(?!img|canvas|hr).*?>#im', // all tags except img, canvas and hr
             '#(\xc2|\xa0|\s|&nbsp;)#', //any whitespaces actually
index 0b718aa..41ddf85 100644 (file)
@@ -1318,7 +1318,7 @@ function get_config($plugin, $name = NULL) {
         if ($localcfg) {
             return (object)$localcfg;
         } else {
-            return null;
+            return new stdClass();
         }
 
     } else {
@@ -1869,6 +1869,7 @@ function make_timestamp($year, $month=1, $day=1, $hour=0, $minute=0, $second=0,
     $totalsecs = abs($totalsecs);
 
     if (!$str) {  // Create the str structure the slow way
+        $str = new stdClass();
         $str->day   = get_string('day');
         $str->days  = get_string('days');
         $str->hour  = get_string('hour');
index b1b3138..faa3d9f 100644 (file)
@@ -299,6 +299,10 @@ $PAGE->verify_https_required();
 
 /// Generate the login page with forms
 
+if (!isset($frm) or !is_object($frm)) {
+    $frm = new stdClass();
+}
+
 if (empty($frm->username) && $authsequence[0] != 'shibboleth') {  // See bug 5184
     if (!empty($_GET["username"])) {
         $frm->username = clean_param($_GET["username"], PARAM_RAW); // we do not want data from _POST here
index 8fe66be..9026b23 100644 (file)
@@ -1344,6 +1344,7 @@ function message_contact_link($userid, $linktype='add', $return=false, $script=n
     }
 
     if (empty($str->blockcontact)) {
+       $str = new stdClass();
        $str->blockcontact   =  get_string('blockcontact', 'message');
        $str->unblockcontact =  get_string('unblockcontact', 'message');
        $str->removecontact  =  get_string('removecontact', 'message');
index fbab4dc..283c99a 100644 (file)
@@ -112,7 +112,7 @@ function chat_add_instance($chat) {
 
     $returnid = $DB->insert_record("chat", $chat);
 
-    $event = NULL;
+    $event = new stdClass();
     $event->name        = $chat->name;
     $event->description = format_module_intro('chat', $chat, $chat->coursemodule);
     $event->courseid    = $chat->course;
index 495606f..10c033e 100644 (file)
@@ -709,7 +709,7 @@ function feedback_set_events($feedback) {
 
     // the open-event
     if ($feedback->timeopen > 0) {
-        $event = null;
+        $event = new stdClass();
         $event->name         = get_string('start', 'feedback').' '.$feedback->name;
         $event->description  = format_module_intro('feedback', $feedback, $feedback->coursemodule);
         $event->courseid     = $feedback->course;
@@ -731,7 +731,7 @@ function feedback_set_events($feedback) {
 
     // the close-event
     if ($feedback->timeclose > 0) {
-        $event = null;
+        $event = new stdClass();
         $event->name         = get_string('stop', 'feedback').' '.$feedback->name;
         $event->description  = format_module_intro('feedback', $feedback, $feedback->coursemodule);
         $event->courseid     = $feedback->course;
index 9a49a63..b32e281 100644 (file)
@@ -2921,6 +2921,7 @@ function forum_get_course_forum($courseid, $type) {
     }
 
     // Doesn't exist, so create one now.
+    $forum = new stdClass();
     $forum->course = $courseid;
     $forum->type = "$type";
     switch ($forum->type) {
index f3f2f82..f3fd922 100644 (file)
@@ -792,6 +792,7 @@ if ($post->discussion) {
         print_error('cannotfindparentpost', 'forum', '', $post->id);
     }
 } else {
+    $toppost = new stdClass();
     $toppost->subject = ($forum->type == "news") ? get_string("addanewtopic", "forum") :
                                                    get_string("addanewdiscussion", "forum");
 }
index b320055..f5246b0 100644 (file)
@@ -270,6 +270,7 @@ if (!empty($instanceid) && !empty($roleid)) {
 
     $data = array();
 
+    $a = new stdClass();
     $a->count = $totalcount;
     $a->items = $role->name;
 
index 9ec3f4e..1d25f42 100644 (file)
 
     $strnever = get_string('never');
 
+    $datestring = new stdClass();
     $datestring->year  = get_string('year');
     $datestring->years = get_string('years');
     $datestring->day   = get_string('day');
     }
 
     if ($roleid > 0) {
+        $a = new stdClass();
         $a->number = $totalcount;
         $a->role = $rolenames[$roleid];
         $heading = format_string(get_string('xuserswiththerole', 'role', $a));
         }
 
         $heading .= ": $a->number";
+
         if (user_can_assign($context, $roleid)) {
             $heading .= ' <a href="'.$CFG->wwwroot.'/'.$CFG->admin.'/roles/assign.php?roleid='.$roleid.'&amp;contextid='.$context->id.'">';
             $heading .= '<img src="'.$OUTPUT->pix_url('i/edit') . '" class="icon" alt="" /></a>';