CAS_Client::getURL PHP Method

getURL() public method

This method returns the URL of the current request (without any ticket CGI parameter).
public getURL ( ) : The
return The URL
    public function getURL()
    {
        phpCAS::traceBegin();
        // the URL is built when needed only
        if (empty($this->_url)) {
            $final_uri = '';
            // remove the ticket if present in the URL
            $final_uri = $this->_isHttps() ? 'https' : 'http';
            $final_uri .= '://';
            $final_uri .= $this->_getClientUrl();
            $request_uri = explode('?', $_SERVER['REQUEST_URI'], 2);
            $final_uri .= $request_uri[0];
            if (isset($request_uri[1]) && $request_uri[1]) {
                $query_string = $this->_removeParameterFromQueryString('ticket', $request_uri[1]);
                // If the query string still has anything left,
                // append it to the final URI
                if ($query_string !== '') {
                    $final_uri .= "?{$query_string}";
                }
            }
            phpCAS::trace("Final URI: {$final_uri}");
            $this->setURL($final_uri);
        }
        phpCAS::traceEnd($this->_url);
        return $this->_url;
    }

Usage Example

 /**
  * This method is used to print the HTML output when the user was not
  * authenticated.
  *
  * @param CAS_Client $client       phpcas client
  * @param string     $failure      the failure that occured
  * @param string     $cas_url      the URL the CAS server was asked for
  * @param bool       $no_response  the response from the CAS server (other
  * parameters are ignored if TRUE)
  * @param bool       $bad_response bad response from the CAS server ($err_code
  * and $err_msg ignored if TRUE)
  * @param string     $cas_response the response of the CAS server
  * @param int        $err_code     the error code given by the CAS server
  * @param string     $err_msg      the error message given by the CAS server
  */
 public function __construct($client, $failure, $cas_url, $no_response, $bad_response = '', $cas_response = '', $err_code = '', $err_msg = '')
 {
     phpCAS::traceBegin();
     $lang = $client->getLangObj();
     $client->printHTMLHeader($lang->getAuthenticationFailed());
     printf($lang->getYouWereNotAuthenticated(), htmlentities($client->getURL()), $_SERVER['SERVER_ADMIN']);
     phpCAS::trace('CAS URL: ' . $cas_url);
     phpCAS::trace('Authentication failure: ' . $failure);
     if ($no_response) {
         phpCAS::trace('Reason: no response from the CAS server');
     } else {
         if ($bad_response) {
             phpCAS::trace('Reason: bad response from the CAS server');
         } else {
             switch ($client->getServerVersion()) {
                 case CAS_VERSION_1_0:
                     phpCAS::trace('Reason: CAS error');
                     break;
                 case CAS_VERSION_2_0:
                     if (empty($err_code)) {
                         phpCAS::trace('Reason: no CAS error');
                     } else {
                         phpCAS::trace('Reason: [' . $err_code . '] CAS error: ' . $err_msg);
                     }
                     break;
             }
         }
         phpCAS::trace('CAS response: ' . $cas_response);
     }
     $client->printHTMLFooter();
     phpCAS::traceExit();
 }
All Usage Examples Of CAS_Client::getURL
CAS_Client