. /** * Creates a link to the upload form on the settings page. * * @package mod_htmlcert * @copyright 2013 Mark Nelson , 2021 Klaus-Uwe Mitterer * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ defined('MOODLE_INTERNAL') || die; $url = $CFG->wwwroot . '/mod/htmlcert/verify_certificate.php'; $ADMIN->add('modsettings', new admin_category('htmlcert', get_string('pluginname', 'mod_htmlcert'))); $settings = new admin_settingpage('modsettinghtmlcert', new lang_string('htmlcertsettings', 'mod_htmlcert')); $settings->add(new admin_setting_configcheckbox('htmlcert/verifyallcertificates', get_string('verifyallcertificates', 'htmlcert'), get_string('verifyallcertificates_desc', 'htmlcert', $url), 0)); $settings->add(new admin_setting_configcheckbox('htmlcert/showposxy', get_string('showposxy', 'htmlcert'), get_string('showposxy_desc', 'htmlcert'), 0)); $settings->add(new \mod_htmlcert\admin_setting_link('htmlcert/verifycertificate', get_string('verifycertificate', 'htmlcert'), get_string('verifycertificatedesc', 'htmlcert'), get_string('verifycertificate', 'htmlcert'), new moodle_url('/mod/htmlcert/verify_certificate.php'), '')); $settings->add(new \mod_htmlcert\admin_setting_link('htmlcert/managetemplates', get_string('managetemplates', 'htmlcert'), get_string('managetemplatesdesc', 'htmlcert'), get_string('managetemplates', 'htmlcert'), new moodle_url('/mod/htmlcert/manage_templates.php'), '')); $settings->add(new \mod_htmlcert\admin_setting_link('htmlcert/uploadimage', get_string('uploadimage', 'htmlcert'), get_string('uploadimagedesc', 'htmlcert'), get_string('uploadimage', 'htmlcert'), new moodle_url('/mod/htmlcert/upload_image.php'), '')); $settings->add(new admin_setting_heading('defaults', get_string('modeditdefaults', 'admin'), get_string('condifmodeditdefaults', 'admin'))); $yesnooptions = [ 0 => get_string('no'), 1 => get_string('yes'), ]; $settings->add(new admin_setting_configselect('htmlcert/emailstudents', get_string('emailstudents', 'htmlcert'), get_string('emailstudents_help', 'htmlcert'), 0, $yesnooptions)); $settings->add(new admin_setting_configselect('htmlcert/emailteachers', get_string('emailteachers', 'htmlcert'), get_string('emailteachers_help', 'htmlcert'), 0, $yesnooptions)); $settings->add(new admin_setting_configtext('htmlcert/emailothers', get_string('emailothers', 'htmlcert'), get_string('emailothers_help', 'htmlcert'), '', PARAM_TEXT)); $settings->add(new admin_setting_configselect('htmlcert/verifyany', get_string('verifycertificateanyone', 'htmlcert'), get_string('verifycertificateanyone_help', 'htmlcert'), 0, $yesnooptions)); $settings->add(new admin_setting_configtext('htmlcert/requiredtime', get_string('coursetimereq', 'htmlcert'), get_string('coursetimereq_help', 'htmlcert'), 0, PARAM_INT)); $settings->add(new admin_setting_configcheckbox('htmlcert/protection_print', get_string('preventprint', 'htmlcert'), get_string('preventprint_desc', 'htmlcert'), 0)); $settings->add(new admin_setting_configcheckbox('htmlcert/protection_modify', get_string('preventmodify', 'htmlcert'), get_string('preventmodify_desc', 'htmlcert'), 0)); $settings->add(new admin_setting_configcheckbox('htmlcert/protection_copy', get_string('preventcopy', 'htmlcert'), get_string('preventcopy_desc', 'htmlcert'), 0)); $ADMIN->add('htmlcert', $settings); // Element plugin settings. $ADMIN->add('htmlcert', new admin_category('htmlcertelements', get_string('elementplugins', 'htmlcert'))); $plugins = \core_plugin_manager::instance()->get_plugins_of_type('htmlcertelement'); foreach ($plugins as $plugin) { $plugin->load_settings($ADMIN, 'htmlcertelements', $hassiteconfig); } // Tell core we already added the settings structure. $settings = null;