Exemple #1
0
<?php

/**
 * Discovery and redirect a user to OP for authentication.
 * @version $Rev$
 * @link $URL$
 */
// Save original 'REQUEST_URI'.
define('ORIGINAL_REQUEST_URI', @$_SERVER['REQUEST_URI']);
require '../../mainfile.php';
require_once XOOPS_ROOT_PATH . '/modules/openid/class/utils.php';
Openid_Utils::reset();
$request =& Openid_Utils::load('context');
$isExistFrompage = $request->accept('frompage', 'string', 'request');
$error = null;
do {
    if (!$request->accept('openid_identifier', 'string', 'request') || !preg_match('/[.@=]/', $request->get('openid_identifier'))) {
        $error = 'Expected an OpenID URL.';
        break;
    }
    //Get OP Endpoint URL
    /* @var $library Openid_Library */
    $library =& Openid_Utils::load('library');
    if (!$library->discover($request->get('openid_identifier'))) {
        $error = $library->getError();
        break;
    }
    //execute post-discovery filter if any extension exist
    $extension =& Openid_Utils::load('extension');
    $ret = $extension->execute('preFilter', $library->getAuthRequest());
    if ($ret === true) {