3 require(__DIR__
.'/../../config.php');
5 $PAGE->set_url('/auth/ldap/ntlmsso_finish.php');
6 $PAGE->set_context(context_system
::instance());
8 // Define variables used in page
11 $authsequence = get_enabled_auth_plugins(); // Auths, in sequence.
12 if (!in_array('ldap', $authsequence, true)) {
13 throw new \
moodle_exception('ldap_isdisabled', 'auth');
16 $authplugin = get_auth_plugin('ldap');
17 if (empty($authplugin->config
->ntlmsso_enabled
)) {
18 throw new \
moodle_exception('ntlmsso_isdisabled', 'auth_ldap');
21 // If ntlmsso_finish() succeeds, then the code never returns,
22 // so we only worry about failure.
23 if (!$authplugin->ntlmsso_finish()) {
24 // Redirect to login, saying "don't try again!"
25 // Display the page header. This makes redirect respect the timeout we specify
26 // here (and not add 3 more secs).
27 $loginsite = get_string("loginsite");
28 $PAGE->navbar
->add($loginsite);
29 $PAGE->set_title("$site->fullname: $loginsite");
30 $PAGE->set_heading($site->fullname
);
31 echo $OUTPUT->header();
32 redirect($CFG->wwwroot
. '/login/index.php?authldap_skipntlmsso=1',
33 get_string('ntlmsso_failed','auth_ldap'), 3);