Disabled Youtube repository and Youtube Tag Block on new Moodle installations.
--- /dev/null
+<?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/>.
+
+/**
+ * Tag Youtube block installation.
+ *
+ * @package block_tag_youtube
+ * @copyright 2015 Jun Pataleta
+ * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
+ */
+
+/**
+ * Sets the install values for the tag_youtube entry in the block table.
+ *
+ * @return void
+ */
+function xmldb_block_tag_youtube_install() {
+ global $DB;
+
+ // Disable this block by default.
+ $DB->set_field('block', 'visible', 0, array('name' => 'tag_youtube'));
+}
+
--- /dev/null
+<?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/>.
+
+/**
+ * Block Tag Youtube tests
+ *
+ * @package block_tag_youtube
+ * @category test
+ * @copyright 2015 Jun Pataleta
+ * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
+ */
+
+defined('MOODLE_INTERNAL') || die();
+
+/**
+ * Block Tag Youtube test class.
+ *
+ * @package block_tag_youtube
+ * @category test
+ * @copyright 2015 Jun Pataleta
+ * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
+ */
+class core_block_tag_youtube_testcase extends advanced_testcase {
+
+ /**
+ * Testing the tag youtube block's initial state after a new installation.
+ *
+ * @return void
+ */
+ public function test_after_install() {
+ global $DB;
+
+ $this->resetAfterTest(true);
+
+ // Assert that tag_youtube entry exists and that its visible attribute is set to 0 (disabled).
+ $this->assertTrue($DB->record_exists('block', array('name' => 'tag_youtube', 'visible' => 0)));
+ }
+}
'user', 'webdav', 'wikimedia', 'youtube');
// The ones enabled during installation.
- $alreadyenabled = array('local', 'recent', 'upload', 'url', 'user', 'wikimedia', 'youtube');
+ $alreadyenabled = array('local', 'recent', 'upload', 'url', 'user', 'wikimedia');
// Enable all the repositories which are not enabled yet.
foreach ($all as $type) {
*/
/**
- * Create a default instance of the youtube repository
+ * This was supposed to be the installer script for the Youtube repository.
*
- * @return bool A status indicating success or failure
+ * However, since the Youtube repository is disabled in new Moodle installations from 3.0, and since we cannot
+ * just delete this file, the function's contents has been replaced to just return true.
+ * See https://tracker.moodle.org/browse/MDL-50572 for more details.
+ *
+ * @return bool Return true.
*/
function xmldb_repository_youtube_install() {
- global $CFG;
- $result = true;
- require_once($CFG->dirroot.'/repository/lib.php');
- $youtubeplugin = new repository_type('youtube', array(), true);
- if(!$id = $youtubeplugin->create(true)) {
- $result = false;
- }
- return $result;
+ return true;
}