]> git.mjollnir.org Git - moodle.git/commitdiff
Auth: Better error message when SSO fails
authordonal72 <donal72>
Thu, 11 Jan 2007 04:16:34 +0000 (04:16 +0000)
committerdonal72 <donal72>
Thu, 11 Jan 2007 04:16:34 +0000 (04:16 +0000)
auth/mnet/auth.php
auth/mnet/land.php

index 4b675fd308fbbbb1cbcaa09c352d344b8ce3ff54..7e0307bac3914b1707df6f5813caa996bfcb7562 100644 (file)
@@ -233,14 +233,21 @@ class auth_plugin_mnet
         if ($mnetrequest->send($remotepeer) === true) {
             $remoteuser = (object) $mnetrequest->response;
         } else {
-            foreach ($mnetrequest->error as $code => $errormessage) {
+            foreach ($mnetrequest->error as $errormessage) {
+                list($code, $message) = array_map('trim',explode(':', $errormessage, 2));
+                if($code == 702) {
+                    $site = get_site();
+                    print_error('mnet_session_prohibited','mnet', $remotewwwroot, $site->fullname);
+                    exit;
+                }
                 $message .= "ERROR $code:<br/>$errormessage<br/>";
             }
             error("RPC auth/mnet/user_authorise:<br/>$message");
         }
 
         if (empty($remoteuser) or empty($remoteuser->username)) {
-            error(get_string('unknownerror', 'mnet'));
+            print_error('unknownerror', 'mnet');
+            exit;
         }
 
         // get the local record for the remote user
index 5350f56c824051354637168ef6d1244a734ae64f..4c58f2e3300c26884fc3e301be8a4050cffa30c0 100644 (file)
 require_once dirname(dirname(dirname(__FILE__))) . '/config.php';
 require_once $CFG->dirroot . '/mnet/xmlrpc/client.php';
 
+if (!$site = get_site()) {
+    print_error('mnet_session_prohibited', 'mnet', '', '');
+}
+
 // grab the GET params
 $token         = required_param('token',    PARAM_BASE64);
 $remotewwwroot = required_param('idp',      PARAM_URL);