123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 |
- <?php
- class CAS_AuthenticationException
- extends RuntimeException
- implements CAS_Exception
- {
-
- public function __construct($client,$failure,$cas_url,$no_response,
- $bad_response=false,$cas_response='',$err_code=-1,$err_msg=''
- ) {
- $messages = array();
- phpCAS::traceBegin();
- $lang = $client->getLangObj();
- $client->printHTMLHeader($lang->getAuthenticationFailed());
- printf(
- $lang->getYouWereNotAuthenticated(),
- htmlentities($client->getURL()),
- isset($_SERVER['SERVER_ADMIN']) ? $_SERVER['SERVER_ADMIN']:''
- );
- phpCAS::trace($messages[] = 'CAS URL: '.$cas_url);
- phpCAS::trace($messages[] = 'Authentication failure: '.$failure);
- if ( $no_response ) {
- phpCAS::trace($messages[] = 'Reason: no response from the CAS server');
- } else {
- if ( $bad_response ) {
- phpCAS::trace($messages[] = 'Reason: bad response from the CAS server');
- } else {
- switch ($client->getServerVersion()) {
- case CAS_VERSION_1_0:
- phpCAS::trace($messages[] = 'Reason: CAS error');
- break;
- case CAS_VERSION_2_0:
- case CAS_VERSION_3_0:
- if ( $err_code === -1 ) {
- phpCAS::trace($messages[] = 'Reason: no CAS error');
- } else {
- phpCAS::trace($messages[] = 'Reason: ['.$err_code.'] CAS error: '.$err_msg);
- }
- break;
- }
- }
- phpCAS::trace($messages[] = 'CAS response: '.$cas_response);
- }
- $client->printHTMLFooter();
- phpCAS::traceExit();
- parent::__construct(implode("\n", $messages));
- }
- }
- ?>
|