header('Location: ' . $_SERVER['PHP_SELF']); exit; } else { if ($_GET['openid_action'] == 'login') { if (isset($_GET['openid_identity'])) { $view->id = $_GET['openid_identity']; $view->ro = true; } $ret = $view->render('login.phtml'); } else { if ($_GET['openid_action'] == 'trust') { if ($server->getLoggedInUser() !== false) { $view->site = $server->getSiteRoot($_GET); $view->url = $server->getLoggedInUser(); $sreg = new Zend_OpenId_Extension_Sreg(); $sreg->parseRequest($_GET); $view->sreg = sreg_form($sreg); if ($server->hasUser($view->url)) { $ret = $view->render('trust.phtml'); } } } } } } } } else { if (isset($_GET['openid'])) { $url = Zend_OpenId::selfURL() . '?openid=' . $_GET['openid']; if ($server->hasUser($url)) { $view->server = Zend_OpenId::selfURL();
/** * testing parseRequest * */ public function testParseRequest() { $ext = new Zend_OpenId_Extension_Sreg(); $this->assertTrue($ext->parseRequest(array())); $this->assertSame(array(), $ext->getProperties()); $this->assertSame(null, $ext->getPolicyUrl()); $this->assertSame(1.0, $ext->getVersion()); $this->assertTrue($ext->parseRequest(array('openid_sreg_required' => "nickname", 'openid_sreg_optional' => "email"))); $this->assertSame(array('nickname' => true, 'email' => false), $ext->getProperties()); $this->assertSame(null, $ext->getPolicyUrl()); $this->assertSame(1.0, $ext->getVersion()); $this->assertTrue($ext->parseRequest(array('openid_sreg_required' => "nickname,email", 'openid_sreg_policy_url' => self::POLICY))); $this->assertSame(array('nickname' => true, 'email' => true), $ext->getProperties()); $this->assertSame(self::POLICY, $ext->getPolicyUrl()); $this->assertSame(1.0, $ext->getVersion()); $this->assertTrue($ext->parseRequest(array('openid_ns_sreg' => "http://openid.net/extensions/sreg/1.1", 'openid_sreg_optional' => "nickname,email", 'openid_sreg_policy_url' => self::POLICY))); $this->assertSame(array('nickname' => false, 'email' => false), $ext->getProperties()); $this->assertSame(self::POLICY, $ext->getPolicyUrl()); $this->assertSame(1.1, $ext->getVersion()); }