MDL-73342 feedback: Disable the block by default

Co-authored by: Amaia Anabitarte <amaia@moodle.com>
This commit is contained in:
Sara Arjona 2021-12-16 17:16:00 +01:00
parent b1a772d1ad
commit 219d8ec4a4
4 changed files with 70 additions and 2 deletions

View File

@ -22,8 +22,13 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
/**
* Perform the post-install procedures.
*/
function xmldb_block_feedback_install() {
global $DB;
}
// Disable feedback on new installs by default.
$DB->set_field('block', 'visible', 0, ['name' => 'feedback']);
}

View File

@ -0,0 +1,62 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* This file keeps track of upgrades to the feedback 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.
*
* @package block_feedback
* @copyright 2021 Sara Arjona (sara@moodle.com)
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
/**
* Handles upgrading instances of this block.
*
* @param int $oldversion
* @param object $block
*/
function xmldb_block_feedback_upgrade($oldversion, $block) {
global $CFG, $DB;
if ($oldversion < 2021121600) {
// From Moodle 4.0, this block has been disabled by default in new installations.
// If the site has no instances of this block, it will disabled during the upgrading process too.
$totalcount = $DB->count_records('block_instances', ['blockname' => 'feedback']);
if ($totalcount == 0) {
$DB->set_field('block', 'visible', 0, ['name' => 'feedback']);
}
upgrade_block_savepoint(true, 2021121600, 'feedback', false);
}
return true;
}

View File

@ -24,7 +24,7 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2021052500; // The current plugin version (Date: YYYYMMDDXX).
$plugin->version = 2021121600; // The current plugin version (Date: YYYYMMDDXX).
$plugin->requires = 2021052500; // Requires this Moodle version.
$plugin->component = 'block_feedback'; // Full name of the plugin (used for diagnostics)

View File

@ -34,6 +34,7 @@ Feature: Mapping courses in a feedback
| activity | name | course | idnumber | anonymous | publish_stats | section |
| feedback | Course feedback | Acceptance test site | feedback0 | 1 | 1 | 1 |
| feedback | Another feedback | C1 | feedback1 | 1 | 1 | 0 |
And I enable "feedback" "block" plugin
When I log in as "manager"
And I am on site homepage
And I follow "Course feedback"