Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
<?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/>./*** Install script for plugin.** @package quizaccess_seb* @author Andrew Madden <andrewmadden@catalyst-au.net>* @copyright 2019 Catalyst IT* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later*/defined('MOODLE_INTERNAL') || die();require_once($CFG->dirroot . '/mod/quiz/accessrule/seb/lib.php');/*** Custom code to be run on installing the plugin.*/function xmldb_quizaccess_seb_install() {global $DB;// Reconfigure all existing quizzes to use a new quizaccess_seb.$params = ['browsersecurity' => 'safebrowser'];$total = $DB->count_records('quiz', $params);if ($total > 0) {$rs = $DB->get_recordset('quiz', $params);$i = 0;$pbar = new progress_bar('updatequizrecords', 500, true);foreach ($rs as $quiz) {if (!$DB->record_exists('quizaccess_seb_quizsettings', ['quizid' => $quiz->id])) {$cm = get_coursemodule_from_instance('quiz', $quiz->id, $quiz->course);$sebsettings = new stdClass();$sebsettings->quizid = $quiz->id;$sebsettings->cmid = $cm->id;$sebsettings->templateid = 0;$sebsettings->requiresafeexambrowser = \quizaccess_seb\settings_provider::USE_SEB_CLIENT_CONFIG;$sebsettings->showsebtaskbar = null;$sebsettings->showwificontrol = null;$sebsettings->showreloadbutton = null;$sebsettings->showtime = null;$sebsettings->showkeyboardlayout = null;$sebsettings->allowuserquitseb = null;$sebsettings->quitpassword = null;$sebsettings->linkquitseb = null;$sebsettings->userconfirmquit = null;$sebsettings->enableaudiocontrol = null;$sebsettings->muteonstartup = null;$sebsettings->allowspellchecking = null;$sebsettings->allowreloadinexam = null;$sebsettings->activateurlfiltering = null;$sebsettings->filterembeddedcontent = null;$sebsettings->expressionsallowed = null;$sebsettings->regexallowed = null;$sebsettings->expressionsblocked = null;$sebsettings->regexblocked = null;$sebsettings->allowedbrowserexamkeys = null;$sebsettings->showsebdownloadlink = 1;$sebsettings->usermodified = get_admin()->id;$sebsettings->timecreated = time();$sebsettings->timemodified = time();$DB->insert_record('quizaccess_seb_quizsettings', $sebsettings);$quiz->browsersecurity = '-';$DB->update_record('quiz', $quiz);}$i++;$pbar->update($i, $total, "Reconfiguring existing quizzes to use a new SEB plugin - $i/$total.");}$rs->close();}return true;}