/** * Constructor for this error. * * The error can either be given as a string, or as an array. If it is an array, the first element in the array * (with index 0), is the error code, while the other elements are replacements for the error text. * * @param mixed $errorCode One of the error codes defined in the errors dictionary. * @param Exception $cause The exception which caused this fatal error (if any). Optional. * @param int|null $httpCode The HTTP response code to use. Optional. */ public function __construct($errorCode, Exception $cause = null, $httpCode = null) { assert('is_string($errorCode) || is_array($errorCode)'); if (is_array($errorCode)) { $this->parameters = $errorCode; unset($this->parameters[0]); $this->errorCode = $errorCode[0]; } else { $this->parameters = array(); $this->errorCode = $errorCode; } if (isset($httpCode)) { $this->httpCode = $httpCode; } $moduleCode = explode(':', $this->errorCode, 2); if (count($moduleCode) === 2) { $this->module = $moduleCode[0]; $this->dictTitle = '{' . $this->module . ':errors:title_' . $moduleCode[1] . '}'; $this->dictDescr = '{' . $this->module . ':errors:descr_' . $moduleCode[1] . '}'; } else { $this->dictTitle = SimpleSAML\Error\ErrorCodes::getErrorCodeTitle($this->errorCode); $this->dictDescr = SimpleSAML\Error\ErrorCodes::getErrorCodeDescription($this->errorCode); } if (!empty($this->parameters)) { $msg = $this->errorCode . '('; foreach ($this->parameters as $k => $v) { if ($k === 0) { continue; } $msg .= var_export($k, true) . ' => ' . var_export($v, true) . ', '; } $msg = substr($msg, 0, -2) . ')'; } else { $msg = $this->errorCode; } parent::__construct($msg, -1, $cause); }
$t = new SimpleSAML_XHTML_Template($globalConfig, 'core:loginuserpass.php'); $t->data['stateparams'] = array('AuthState' => $authStateId); if (array_key_exists('forcedUsername', $state)) { $t->data['username'] = $state['forcedUsername']; $t->data['forceUsername'] = TRUE; $t->data['rememberUsernameEnabled'] = FALSE; $t->data['rememberUsernameChecked'] = FALSE; $t->data['rememberMeEnabled'] = $source->isRememberMeEnabled(); $t->data['rememberMeChecked'] = $source->isRememberMeChecked(); } else { $t->data['username'] = $username; $t->data['forceUsername'] = FALSE; $t->data['rememberUsernameEnabled'] = $source->getRememberUsernameEnabled(); $t->data['rememberUsernameChecked'] = $source->getRememberUsernameChecked(); $t->data['rememberMeEnabled'] = $source->isRememberMeEnabled(); $t->data['rememberMeChecked'] = $source->isRememberMeChecked(); if (isset($_COOKIE[$source->getAuthId() . '-username'])) { $t->data['rememberUsernameChecked'] = TRUE; } } $t->data['links'] = $source->getLoginLinks(); $t->data['errorcode'] = $errorCode; $t->data['errorcodes'] = SimpleSAML\Error\ErrorCodes::getAllErrorCodeMessages(); $t->data['errorparams'] = $errorParams; if (isset($state['SPMetadata'])) { $t->data['SPMetadata'] = $state['SPMetadata']; } else { $t->data['SPMetadata'] = NULL; } $t->show(); exit;