Пример #1
0
 /**
  * testing getTrustedSites
  *
  */
 public function testGetTrustedSites()
 {
     $storage = new Zend_OpenId_Provider_Storage_File(dirname(__FILE__) . "/_files/provider");
     $storage->delUser(self::USER);
     $this->_user->delLoggedInUser();
     $provider = new Zend_OpenId_Provider(null, null, $this->_user, $storage);
     $sreg = new Zend_OpenId_Extension_Sreg(array("nickname" => "test_id"));
     $this->assertTrue($provider->register(self::USER, self::PASSWORD));
     $this->assertTrue($provider->login(self::USER, self::PASSWORD));
     $this->assertTrue($provider->allowSite("http://www.test1.com/"));
     $this->assertTrue($provider->allowSite("http://www.test2.com/", $sreg));
     $this->AssertSame(array('http://www.test1.com/' => true, 'http://www.test2.com/' => array('Zend_OpenId_Extension_Sreg' => array('nickname' => 'test_id'))), $provider->getTrustedSites());
     $this->_user->delLoggedInUser();
     $this->AssertFalse($provider->getTrustedSites());
     $storage->delUser(self::USER);
 }
Пример #2
0
         if ($server->register($url, $_POST['openid_password'])) {
             header('Location: ' . $_SERVER['PHP_SELF'] . '?openid.action=registration_complete&openid.name=' . $_POST['openid_name']);
         } else {
             $session->error = 'Registration failed. Try another name.';
             header('Location: ' . $_SERVER['PHP_SELF'] . '?openid.action=register');
         }
     }
     exit;
 } else {
     if ($_POST['openid_action'] == 'trust') {
         if (isset($_GET['openid_return_to'])) {
             $sreg = new Zend_OpenId_Extension_Sreg();
             $sreg->parseResponse($_POST);
             if (isset($_POST['allow'])) {
                 if (isset($_POST['forever'])) {
                     $server->allowSite($server->getSiteRoot($_GET), $sreg);
                 }
                 unset($_GET['openid_action']);
                 $server->respondToConsumer($_GET, $sreg);
             } else {
                 if (isset($_POST['deny'])) {
                     if (isset($_POST['forever'])) {
                         $server->denySite($server->getSiteRoot($_GET));
                     }
                     Zend_OpenId::redirect($_GET['openid_return_to'], array('openid.mode' => 'cancel'));
                 }
             }
         } else {
             if (isset($_POST['allow'])) {
                 $server->allowSite($_POST['site']);
                 header('Location: ' . $_SERVER['PHP_SELF']);
Пример #3
0
$server = new Zend_OpenId_Provider(null, null, $session, $storage);
if (OCP\User::isLoggedIn() and !$session->getLoggedInUser()) {
    $session->setLoggedInUser(OCP\Util::linkToAbsolute('', '?') . OCP\User::getUser());
}
if (isset($_GET['openid_action']) and $_GET['openid_action'] == 'login') {
    unset($_GET['openid_action']);
    $params = '?' . Zend_OpenId::paramsToQuery($_GET);
    $next = OCP\Util::linkToRemote('openid_provider') . $params;
    $loginPage = OCP\Util::linkToAbsolute('', 'index.php') . '?redirect_url=' . urlencode($next);
    header('Location: ' . $loginPage);
} else {
    if (isset($_GET['openid_action']) and $_GET['openid_action'] == 'trust') {
        OCP\User::checkLoggedIn();
        if (isset($_POST['allow'])) {
            if (isset($_POST['forever'])) {
                $server->allowSite($server->getSiteRoot($_GET));
            }
            $server->respondToConsumer($_GET);
        } else {
            if (isset($_POST['deny'])) {
                if (isset($_POST['forever'])) {
                    $server->denySite($server->getSiteRoot($_GET));
                }
                Zend_OpenId::redirect($_GET['openid_return_to'], array('openid.mode' => 'cancel'));
            } else {
                $tmpl = new OCP\Template('user_openid_provider', 'trust', 'user');
                $tmpl->assign('site', $server->getSiteRoot($_GET));
                $tmpl->assign('openid', $server->getLoggedInUser());
                $tmpl->printPage();
            }
        }