PHP Classes

File: web/SSO/vendor/openid/php-openid/examples/consumer/try_auth.php

Recommend this page to a friend!
  Classes of william amed   Raptor 2   web/SSO/vendor/openid/php-openid/examples/consumer/try_auth.php   Download  
File: web/SSO/vendor/openid/php-openid/examples/consumer/try_auth.php
Role: Example script
Content type: text/plain
Description: Example script
Class: Raptor 2
Framework that takes routes from annotations
Author: By
Last change:
Date: 8 years ago
Size: 2,630 bytes
 

Contents

Class file image Download
<?php

require_once "common.php";
session_start();

function
getOpenIDURL() {
   
// Render a default page if we got a submission without an openid
    // value.
   
if (empty($_GET['openid_identifier'])) {
       
$error = "Expected an OpenID URL.";
        include
'index.php';
        exit(
0);
    }

    return
$_GET['openid_identifier'];
}

function
run() {
   
$openid = getOpenIDURL();
   
$consumer = getConsumer();

   
// Begin the OpenID authentication process.
   
$auth_request = $consumer->begin($openid);

   
// No auth request means we can't begin OpenID.
   
if (!$auth_request) {
       
displayError("Authentication error; not a valid OpenID.");
    }

   
$sreg_request = Auth_OpenID_SRegRequest::build(
                                    
// Required
                                    
array('nickname'),
                                    
// Optional
                                    
array('fullname', 'email'));

    if (
$sreg_request) {
       
$auth_request->addExtension($sreg_request);
    }

   
$policy_uris = null;
    if (isset(
$_GET['policies'])) {
       
$policy_uris = $_GET['policies'];
    }

   
$pape_request = new Auth_OpenID_PAPE_Request($policy_uris);
    if (
$pape_request) {
       
$auth_request->addExtension($pape_request);
    }

   
// Redirect the user to the OpenID server for authentication.
    // Store the token for this authentication so we can verify the
    // response.

    // For OpenID 1, send a redirect. For OpenID 2, use a Javascript
    // form to send a POST request to the server.
   
if ($auth_request->shouldSendRedirect()) {
       
$redirect_url = $auth_request->redirectURL(getTrustRoot(),
                                                  
getReturnTo());

       
// If the redirect URL can't be built, display an error
        // message.
       
if (Auth_OpenID::isFailure($redirect_url)) {
           
displayError("Could not redirect to server: " . $redirect_url->message);
        } else {
           
// Send redirect.
           
header("Location: ".$redirect_url);
        }
    } else {
       
// Generate form markup and render it.
       
$form_id = 'openid_message';
       
$form_html = $auth_request->htmlMarkup(getTrustRoot(), getReturnTo(),
                                              
false, array('id' => $form_id));

       
// Display an error if the form markup couldn't be generated;
        // otherwise, render the HTML.
       
if (Auth_OpenID::isFailure($form_html)) {
           
displayError("Could not redirect to server: " . $form_html->message);
        } else {
            print
$form_html;
        }
    }
}

run();

?>