From f456c349a03f83cc493a4ecf37033ce106e34103 Mon Sep 17 00:00:00 2001 From: Peter Dias Date: Fri, 25 Feb 2022 13:56:36 +0800 Subject: [PATCH] MDL-72092 recentlyaccesseditems: Change the default block location Add/Change the default location of the block on /my pages --- blocks/recentlyaccesseditems/db/upgrade.php | 34 +++++++++++++++++++++ blocks/recentlyaccesseditems/version.php | 2 +- 2 files changed, 35 insertions(+), 1 deletion(-) diff --git a/blocks/recentlyaccesseditems/db/upgrade.php b/blocks/recentlyaccesseditems/db/upgrade.php index 0a178d3c667..3c36d085246 100644 --- a/blocks/recentlyaccesseditems/db/upgrade.php +++ b/blocks/recentlyaccesseditems/db/upgrade.php @@ -75,5 +75,39 @@ function xmldb_block_recentlyaccesseditems_upgrade($oldversion, $block) { // Automatically generated Moodle v3.9.0 release upgrade line. // Put any upgrade step following this. + if ($oldversion < 2022030200) { + $context = context_system::instance(); + + // Begin looking for any and all customised /my pages. + $pageselect = 'name = :name and private = :private'; + $pageparams['name'] = '__default'; + $pageparams['private'] = 1; + $pages = $DB->get_recordset_select('my_pages', $pageselect, $pageparams); + foreach ($pages as $subpage) { + $blockinstance = $DB->get_record('block_instances', ['blockname' => 'recentlyaccesseditems', + 'pagetypepattern' => 'my-index', 'subpagepattern' => $subpage->id]); + + if (!$blockinstance) { + // Insert the recentlyaccesseditems into the default index page. + $blockinstance = new stdClass; + $blockinstance->blockname = 'recentlyaccesseditems'; + $blockinstance->parentcontextid = $context->id; + $blockinstance->showinsubcontexts = false; + $blockinstance->pagetypepattern = 'my-index'; + $blockinstance->subpagepattern = $subpage->id; + $blockinstance->defaultregion = 'side-post'; + $blockinstance->defaultweight = -10; + $blockinstance->timecreated = time(); + $blockinstance->timemodified = time(); + $DB->insert_record('block_instances', $blockinstance); + } else if ($blockinstance->defaultregion !== 'side-post') { + $blockinstance->defaultregion = 'side-post'; + $DB->update_record('block_instances', $blockinstance); + } + } + $pages->close(); + upgrade_block_savepoint(true, 2022030200, 'recentlyaccesseditems', false); + } + return true; } diff --git a/blocks/recentlyaccesseditems/version.php b/blocks/recentlyaccesseditems/version.php index 0760701fbf6..392ebd0b130 100644 --- a/blocks/recentlyaccesseditems/version.php +++ b/blocks/recentlyaccesseditems/version.php @@ -22,6 +22,6 @@ */ defined('MOODLE_INTERNAL') || die(); -$plugin->version = 2021052500; // The current plugin version (Date: YYYYMMDDXX). +$plugin->version = 2022030200; // The current plugin version (Date: YYYYMMDDXX). $plugin->requires = 2021052500; // Requires this Moodle version. $plugin->component = 'block_recentlyaccesseditems'; // Full name of the plugin (used for diagnostics).