[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/blocks/calendar_month/db/ -> upgrade.php (source)

   1  <?php
   2  // This file is part of Moodle - http://moodle.org/
   3  //
   4  // Moodle is free software: you can redistribute it and/or modify
   5  // it under the terms of the GNU General Public License as published by
   6  // the Free Software Foundation, either version 3 of the License, or
   7  // (at your option) any later version.
   8  //
   9  // Moodle is distributed in the hope that it will be useful,
  10  // but WITHOUT ANY WARRANTY; without even the implied warranty of
  11  // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  12  // GNU General Public License for more details.
  13  //
  14  // You should have received a copy of the GNU General Public License
  15  // along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
  16  
  17  /**
  18   * This file keeps track of upgrades to the calendar_month block
  19   *
  20   * Sometimes, changes between versions involve alterations to database structures
  21   * and other major things that may break installations.
  22   *
  23   * The upgrade function in this file will attempt to perform all the necessary
  24   * actions to upgrade your older installation to the current version.
  25   *
  26   * If there's something it cannot do itself, it will tell you what you need to do.
  27   *
  28   * The commands in here will all be database-neutral, using the methods of
  29   * database_manager class
  30   *
  31   * Please do not forget to use upgrade_set_timeout()
  32   * before any action that may take longer time to finish.
  33   *
  34   * @since Moodle 2.8
  35   * @package block_calendar_month
  36   * @copyright 2014 Andrew Davis
  37   * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
  38   */
  39  
  40  /**
  41   * Upgrade the calendar_month block
  42   * @param int $oldversion
  43   * @param object $block
  44   */
  45  function xmldb_block_calendar_month_upgrade($oldversion, $block) {
  46      global $DB;
  47  
  48      if ($oldversion < 2014062600) {
  49          // Add this block the default blocks on /my.
  50          $blockname = 'calendar_month';
  51  
  52          // Do not try to add the block if we cannot find the default my_pages entry.
  53          // Private => 1 refers to MY_PAGE_PRIVATE.
  54          if ($systempage = $DB->get_record('my_pages', array('userid' => null, 'private' => 1))) {
  55              $page = new moodle_page();
  56              $page->set_context(context_system::instance());
  57  
  58              // Check to see if this block is already on the default /my page.
  59              $criteria = array(
  60                  'blockname' => $blockname,
  61                  'parentcontextid' => $page->context->id,
  62                  'pagetypepattern' => 'my-index',
  63                  'subpagepattern' => $systempage->id,
  64              );
  65  
  66              if (!$DB->record_exists('block_instances', $criteria)) {
  67                  // Add the block to the default /my.
  68                  $page->blocks->add_region(BLOCK_POS_RIGHT);
  69                  $page->blocks->add_block($blockname, BLOCK_POS_RIGHT, 0, false, 'my-index', $systempage->id);
  70              }
  71          }
  72  
  73          upgrade_block_savepoint(true, 2014062600, $blockname);
  74      }
  75  
  76      // Moodle v2.8.0 release upgrade line.
  77      // Put any upgrade step following this.
  78  
  79      // Moodle v2.9.0 release upgrade line.
  80      // Put any upgrade step following this.
  81  
  82      // Moodle v3.0.0 release upgrade line.
  83      // Put any upgrade step following this.
  84  
  85      // Moodle v3.1.0 release upgrade line.
  86      // Put any upgrade step following this.
  87  
  88      return true;
  89  }


Generated: Thu Aug 11 10:00:09 2016 Cross-referenced by PHPXref 0.7.1