. /** * This file keeps track of upgrades to the settings block * * Sometimes, changes between versions involve alterations to database structures * and other major things that may break installations. * * The upgrade function in this file will attempt to perform all the necessary * actions to upgrade your older installation to the current version. * * If there's something it cannot do itself, it will tell you what you need to do. * * The commands in here will all be database-neutral, using the methods of * database_manager class * * Please do not forget to use upgrade_set_timeout() * before any action that may take longer time to finish. * * @since 2.0 * @package blocks * @copyright 2009 Sam Hemelryk * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ /** * As of the implementation of this block and the general navigation code * in Moodle 2.0 the body of immediate upgrade work for this block and * settings is done in core upgrade {@see lib/db/upgrade.php} * * There were several reasons that they were put there and not here, both becuase * the process for the two blocks was very similar and because the upgrade process * was complex due to us wanting to remvoe the outmoded blocks that this * block was going to replace. * * @global moodle_database $DB * @param int $oldversion * @param object $block */ function xmldb_block_settings_upgrade($oldversion, $block) { global $DB; // Implemented at 2009082800 if ($oldversion < 2010091400) { $sql = "SELECT bp.id FROM {block_instances} bi LEFT JOIN {block_positions} bp ON bp.blockinstanceid=bi.id WHERE bi.blockname='settings' AND bp.visible=0"; $blockpositions = $DB->get_records_sql($sql); if ($blockpositions) { foreach ($blockpositions as $bp) { $bp->visible = 1; $DB->update_record('block_positions', $bp); } } upgrade_block_savepoint(true, 2010091400, 'settings'); } // Moodle v2.1.0 release upgrade line // Put any upgrade step following this // Moodle v2.2.0 release upgrade line // Put any upgrade step following this return true; }