ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
CAS_AuthenticationException Class Reference

This interface defines methods that allow proxy-authenticated service handlers to interact with phpCAS. More...

+ Inheritance diagram for CAS_AuthenticationException:
+ Collaboration diagram for CAS_AuthenticationException:

Public Member Functions

 __construct ($client, $failure, $cas_url, $no_response, $bad_response='', $cas_response='', $err_code='', $err_msg='')
 This method is used to print the HTML output when the user was not authenticated. More...
 

Detailed Description

This interface defines methods that allow proxy-authenticated service handlers to interact with phpCAS.

Proxy service handlers must implement this interface as well as call phpCAS::initializeProxiedService($this) at some point in their implementation.

While not required, proxy-authenticated service handlers are encouraged to implement the CAS_ProxiedService_Testable interface to facilitate unit testing.

Definition at line 48 of file AuthenticationException.php.

Constructor & Destructor Documentation

◆ __construct()

CAS_AuthenticationException::__construct (   $client,
  $failure,
  $cas_url,
  $no_response,
  $bad_response = '',
  $cas_response = '',
  $err_code = '',
  $err_msg = '' 
)

This method is used to print the HTML output when the user was not authenticated.

Parameters
CAS_Client$clientphpcas client
string$failurethe failure that occured
string$cas_urlthe URL the CAS server was asked for
bool$no_responsethe response from the CAS server (other parameters are ignored if TRUE)
bool$bad_responsebad response from the CAS server ($err_code and $err_msg ignored if TRUE)
string$cas_responsethe response of the CAS server
int$err_codethe error code given by the CAS server
string$err_msgthe error message given by the CAS server

Definition at line 68 of file AuthenticationException.php.

70 {
71 $messages = array();
73 $lang = $client->getLangObj();
74 $client->printHTMLHeader($lang->getAuthenticationFailed());
75 printf(
76 $lang->getYouWereNotAuthenticated(),
77 htmlentities($client->getURL()),
78 isset($_SERVER['SERVER_ADMIN']) ? $_SERVER['SERVER_ADMIN']:''
79 );
80 phpCAS::trace($messages[] = 'CAS URL: '.$cas_url);
81 phpCAS::trace($messages[] = 'Authentication failure: '.$failure);
82 if ( $no_response ) {
83 phpCAS::trace($messages[] = 'Reason: no response from the CAS server');
84 } else {
85 if ( $bad_response ) {
86 phpCAS::trace($messages[] = 'Reason: bad response from the CAS server');
87 } else {
88 switch ($client->getServerVersion()) {
89 case CAS_VERSION_1_0:
90 phpCAS::trace($messages[] = 'Reason: CAS error');
91 break;
92 case CAS_VERSION_2_0:
93 case CAS_VERSION_3_0:
94 if ( empty($err_code) ) {
95 phpCAS::trace($messages[] = 'Reason: no CAS error');
96 } else {
97 phpCAS::trace($messages[] = 'Reason: ['.$err_code.'] CAS error: '.$err_msg);
98 }
99 break;
100 }
101 }
102 phpCAS::trace($messages[] = 'CAS response: '.$cas_response);
103 }
104 $client->printHTMLFooter();
106
107 parent::__construct(implode("\n", $messages));
108 }
$failure
$client
Definition: resume.php:9
$lang
Definition: consent.php:3
static trace($str)
This method is used to log something in debug mode.
Definition: CAS.php:579
static traceBegin()
This method is used to indicate the start of the execution of a function in debug mode.
Definition: CAS.php:591
static traceExit()
This method is used to indicate the end of the execution of the program.
Definition: CAS.php:661
const CAS_VERSION_3_0
CAS version 3.0.
Definition: CAS.php:82
const CAS_VERSION_1_0
CAS version 1.0.
Definition: CAS.php:74
const CAS_VERSION_2_0
Definition: CAS.php:78
$messages
Definition: en-x-test.php:7
if((!isset($_SERVER['DOCUMENT_ROOT'])) OR(empty($_SERVER['DOCUMENT_ROOT']))) $_SERVER['DOCUMENT_ROOT']

References $_SERVER, $client, $failure, $lang, $messages, CAS_VERSION_1_0, CAS_VERSION_2_0, CAS_VERSION_3_0, phpCAS\trace(), phpCAS\traceBegin(), and phpCAS\traceExit().

+ Here is the call graph for this function:

The documentation for this class was generated from the following file: