/** * Creates store request and adds it as an extension to AuthRequest object passed to it. * @param &Auth_OpenID_AuthRequest &$auth_request - A reference to the AuthRequest object. * @param &Attribute_Provider &$attributeProvider - A reference to the Attribute Provider object. * @param string $attribute - The attribute name being asserted. * @param string $value - The attribute value being asserted. * @param string $openid - Openid of the entity being asserted. * @return &Auth_OpenID_AuthRequest - Auth_OpenID_AuthRequest object returned with StoreRequest extension. */ static function createStoreRequest(&$auth_request, &$attributeProvider, $attribute, $value, $openid) { if (!$auth_request) { return null; } $signedAssertion = $attributeProvider->sign($openid, $attribute, $value); $store_request = new Auth_OpenID_AX_StoreRequest(); $store_request->addValue($attribute, base64_encode($value)); $store_request->addValue($attribute . '/signature', base64_encode($signedAssertion)); if ($store_request) { $auth_request->addExtension($store_request); return $auth_request; } }