Commit 25cbcb46 authored by Robert Lyon's avatar Robert Lyon

Bug 1829940: Make placeholder blocktype be active by default

And stop it from being deactivated

behatnotneeded

Change-Id: I26adfb9cff0ffa6f189b44b634ae04f6641a9ced
Signed-off-by: Robert Lyon's avatarRobert Lyon <robertl@catalyst.net.nz>
parent 62e432fb
...@@ -15,7 +15,7 @@ define('JSON', 1); ...@@ -15,7 +15,7 @@ define('JSON', 1);
define('NOSESSKEY', 1); define('NOSESSKEY', 1);
require(dirname(dirname(__FILE__)) . '/init.php'); require(dirname(dirname(__FILE__)) . '/init.php');
require($CFG->docroot.'/blocktype/lib.php'); require_once(get_config('docroot') . 'blocktype/lib.php');
// Close the session to prevent session locking. // Close the session to prevent session locking.
session_write_close(); session_write_close();
......
...@@ -16,3 +16,4 @@ $string['description'] = 'Placeholder block that allows you to select what type ...@@ -16,3 +16,4 @@ $string['description'] = 'Placeholder block that allows you to select what type
$string['placeholdertext'] = 'Please configure the block to choose what type of block this should be'; $string['placeholdertext'] = 'Please configure the block to choose what type of block this should be';
$string['defaulttitledescription'] = 'A default title will be generated if you leave the title field blank'; $string['defaulttitledescription'] = 'A default title will be generated if you leave the title field blank';
$string['contenttypes'] = 'Content types'; $string['contenttypes'] = 'Content types';
$string['placeholderblocktypenotenabled'] = 'The block type "placeholder" needs to be installed and be active. If it is already installed please set it to be active via the database "blocktype_installed" table.';
...@@ -25,6 +25,18 @@ class PluginBlocktypePlaceholder extends MaharaCoreBlocktype { ...@@ -25,6 +25,18 @@ class PluginBlocktypePlaceholder extends MaharaCoreBlocktype {
return array('shortcut' => 500); return array('shortcut' => 500);
} }
public static function is_active() {
return get_field('blocktype_installed', 'active', 'name', 'placeholder');
}
/**
* We want this blocktype to be the default blocktype so we
* will prevent it being disabled.
*/
public static function can_be_disabled() {
return false;
}
public static function render_instance(BlockInstance $instance, $editing=false, $versioning=false) { public static function render_instance(BlockInstance $instance, $editing=false, $versioning=false) {
global $USER, $THEME; global $USER, $THEME;
$configdata = $instance->get('configdata'); $configdata = $instance->get('configdata');
......
...@@ -495,6 +495,14 @@ if (!defined('INSTALLER')) { ...@@ -495,6 +495,14 @@ if (!defined('INSTALLER')) {
throw new ConfigSanityException(get_string('multirecipientnotificationnotenabled', throw new ConfigSanityException(get_string('multirecipientnotificationnotenabled',
'module.multirecipientnotification')); 'module.multirecipientnotification'));
} }
if (!$siteclosedforupgrade) {
// Make sure that placeholder block is installed and active
safe_require('blocktype', 'placeholder');
if (!PluginBlocktypePlaceholder::is_active()) {
throw new ConfigSanityException(get_string('placeholderblocktypenotenabled',
'blocktype.placeholder'));
}
}
} }
} }
......
...@@ -32,7 +32,6 @@ Scenario: ...@@ -32,7 +32,6 @@ Scenario:
And I click on "Show more" And I click on "Show more"
And I click on "Navigation" in the "Content types" property And I click on "Navigation" in the "Content types" property
And I select "Collection UserA_02" from "Collection" And I select "Collection UserA_02" from "Collection"
And I click on "Set a block title"
And I set the field "Block title" to "Nav for collection B" And I set the field "Block title" to "Nav for collection B"
And I enable the switch "Add to all pages" And I enable the switch "Add to all pages"
And I select "Automatically retract" from "Retractable" And I select "Automatically retract" from "Retractable"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment