Rev 1 | 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/>.namespace mod_bigbluebuttonbn\local\extension;use stdClass;/*** A class for the main mod form extension** @package mod_bigbluebuttonbn* @copyright 2023 onwards, Blindside Networks Inc* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later* @author Laurent David (laurent@call-learning.fr)*/abstract class mod_form_addons {/*** @var \MoodleQuickForm|null moodle form*/protected $mform = null;/*** @var stdClass|null $bigbluebuttonbndata BigBlueButton data if any*/protected $bigbluebuttonbndata = null;/*** @var string|null $suffix suffix for form elements*/protected $suffix = null;/*** Constructor** @param \MoodleQuickForm $mform* @param stdClass|null $bigbluebuttonbndata* @param string|null $suffix*/public function __construct(\MoodleQuickForm &$mform, ?stdClass $bigbluebuttonbndata = null, ?string $suffix = null) {$this->mform = $mform;$this->bigbluebuttonbndata = $bigbluebuttonbndata;$this->suffix = $suffix;}/*** Add new form field definition*/abstract public function add_fields(): void;/*** Validate form and returns an array of errors indexed by field name** @param array $data* @param array $files* @return array*/abstract public function validation(array $data, array $files): array;/*** Allows modules to modify the data returned by form get_data().* This method is also called in the bulk activity completion form.** Only available on moodleform_mod.** @param stdClass $data passed by reference*/abstract public function data_postprocessing(\stdClass &$data): void;/*** Can be overridden to add custom completion rules if the module wishes* them. If overriding this, you should also override completion_rule_enabled.* <p>* Just add elements to the form as needed and return the list of IDs. The* system will call disabledIf and handle other behaviour for each returned* ID.** @return string[] Array of string IDs of added items, empty array if none*/abstract public function add_completion_rules(): array;/*** Called during validation. Override to indicate, based on the data, whether* a custom completion rule is enabled (selected).** @param array $data Input data (not yet validated)* @return bool True if one or more rules is enabled, false if none are;* default returns false*/public function completion_rule_enabled(array $data): bool {return false;}/*** Form adjustments after setting data** @return void*/public function definition_after_data() {// Nothing for now.}}