updateArgs() public method

public updateArgs ( $namespace, $updates )
示例#1
0
文件: Server.php 项目: hoalangoc/ftf
	function encodeToURL($server_url)
	{
		if (!$this->return_to) {
			return new Auth_OpenID_NoReturnToError();
		}

		// Imported from the alternate reality where these classes are
		// used in both the client and server code, so Requests are
		// Encodable too.  That's right, code imported from alternate
		// realities all for the love of you, id_res/user_setup_url.

		$q = array('mode' => $this->mode,
                   'identity' => $this->identity,
                   'claimed_id' => $this->claimed_id,
                   'return_to' => $this->return_to);

		if ($this->trust_root) {
			if ($this->message->isOpenID1()) {
				$q['trust_root'] = $this->trust_root;
			} else {
				$q['realm'] = $this->trust_root;
			}
		}

		if ($this->assoc_handle) {
			$q['assoc_handle'] = $this->assoc_handle;
		}

		$response = new Auth_OpenID_Message(
		$this->message->getOpenIDNamespace());
		$response->updateArgs(Auth_OpenID_OPENID_NS, $q);
		return $response->toURL($server_url);
	}
示例#2
0
 function _test($uri)
 {
     // Create a request message with simple registration fields
     $sreg_req = Auth_OpenID_SRegRequest::build(array('nickname', 'email'), array('fullname'));
     $req_msg = new Auth_OpenID_Message($uri);
     $req_msg->updateArgs(Auth_OpenID_SREG_NS_URI, $sreg_req->getExtensionArgs());
     $req = new Auth_OpenID_Request();
     $req->message =& $req_msg;
     $req->namespace = $req_msg->getOpenIDNamespace();
     // -> send checkid_* request
     // Create an empty response message
     $resp_msg = new Auth_OpenID_Message($uri);
     $resp = new Auth_OpenID_ServerResponse($req);
     $resp->fields = $resp_msg;
     $data = array('nickname' => 'linusaur', 'postcode' => '12345', 'country' => 'US', 'gender' => 'M', 'fullname' => 'Leonhard Euler', 'email' => '*****@*****.**', 'dob' => '0000-00-00', 'language' => 'en-us');
     // Put the requested data fields in the response message
     $sreg_resp = Auth_OpenID_SRegResponse::extractResponse($sreg_req, $data);
     $resp->addExtension($sreg_resp);
     // <- send id_res response
     // Extract the fields that were sent
     $sreg_data_resp = $resp->fields->getArgs(Auth_OpenID_SREG_NS_URI);
     $this->assertEquals(array('nickname' => 'linusaur', 'email' => '*****@*****.**', 'fullname' => 'Leonhard Euler'), $sreg_data_resp);
 }