public function definition() { $mform =& $this->_form; turnitin_get_form_elements($mform); $this->add_action_buttons(true); }
public function get_form_elements_module($mform, $context) { global $CFG, $DB; if (!$this->get_settings()) { return; } $cmid = optional_param('update', 0, PARAM_INT); //there doesn't seem to be a way to obtain the current cm a better way - $this->_cm is not available here. if (!empty($cmid)) { $plagiarismvalues = $DB->get_records_menu('plagiarism_turnitin_config', array('cm' => $cmid), '', 'name,value'); } $plagiarismdefaults = $DB->get_records_menu('plagiarism_turnitin_config', array('cm' => 0), '', 'name,value'); //cmid(0) is the default list. $plagiarismelements = $this->config_options(); if (has_capability('plagiarism/turnitin:enable', $context)) { turnitin_get_form_elements($mform); if ($mform->elementExists('plagiarism_draft_submit')) { $mform->disabledIf('plagiarism_draft_submit', 'var4', 'eq', 0); } //disable all plagiarism elements if use_plagiarism eg 0 foreach ($plagiarismelements as $element) { if ($element != 'use_turnitin') { //ignore this var $mform->disabledIf($element, 'use_turnitin', 'eq', 0); } } //check if files have already been submitted and disable exclude biblio and quoted if turnitin is enabled. if ($DB->record_exists('plagiarism_turnitin_files', array('cm' => $cmid))) { $mform->disabledIf('plagiarism_exclude_biblio', 'use_turnitin'); $mform->disabledIf('plagiarism_exclude_quoted', 'use_turnitin'); } } else { //add plagiarism settings as hidden vars. foreach ($plagiarismelements as $element) { $mform->addElement('hidden', $element); } } //now set defaults. foreach ($plagiarismelements as $element) { if (isset($plagiarismvalues[$element])) { $mform->setDefault($element, $plagiarismvalues[$element]); } else { if (isset($plagiarismdefaults[$element])) { $mform->setDefault($element, $plagiarismdefaults[$element]); } } } }