. /** * Verifies open profiles - originally open by default, not anymore because spammer abused it a lot * * @package core * @category check * @copyright 2020 Brendan Heywood * @copyright 2008 petr Skoda * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ namespace core\check\security; defined('MOODLE_INTERNAL') || die(); use core\check\check; use core\check\result; /** * Verifies open profiles - originally open by default, not anymore because spammer abused it a lot * * @copyright 2020 Brendan Heywood * @copyright 2008 petr Skoda * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ class openprofiles extends check { /** * Get the short check name * * @return string */ public function get_name(): string { return get_string('check_openprofiles_name', 'report_security'); } /** * A link to a place to action this * * @return \action_link|null */ public function get_action_link(): ?\action_link { return new \action_link( new \moodle_url('/admin/settings.php?section=sitepolicies#admin-forcelogin'), get_string('sitepolicies', 'admin')); } /** * Return result * @return result */ public function get_result(): result { global $CFG; $details = get_string('check_openprofiles_details', 'report_security'); if (empty($CFG->forcelogin) and empty($CFG->forceloginforprofiles)) { $status = result::WARNING; $summary = get_string('check_openprofiles_error', 'report_security'); } else { $status = result::OK; $summary = get_string('check_openprofiles_ok', 'report_security'); } return new result($status, $summary, $details); } }