summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortailor <chowells@janrain.com>2008-06-04 23:12:14 +0000
committertailor <chowells@janrain.com>2008-06-04 23:12:14 +0000
commit4ad1de38d1d5d6767026701bc2a4a3b799c3bd28 (patch)
tree0da9638e71dd81daae43ceaaf21a11ef522f8a42
parent86f989011e7d99f6e3f2da26c48abec96b1c217e (diff)
downloadphp-openid-4ad1de38d1d5d6767026701bc2a4a3b799c3bd28.zip
php-openid-4ad1de38d1d5d6767026701bc2a4a3b799c3bd28.tar.gz
php-openid-4ad1de38d1d5d6767026701bc2a4a3b799c3bd28.tar.bz2
[project @ Fix #220: Use return_to from request when generating form markup in Server.php]
-rw-r--r--Auth/OpenID/Server.php3
-rw-r--r--Tests/Auth/OpenID/Server.php17
2 files changed, 18 insertions, 2 deletions
diff --git a/Auth/OpenID/Server.php b/Auth/OpenID/Server.php
index 5f9d52d..7820902 100644
--- a/Auth/OpenID/Server.php
+++ b/Auth/OpenID/Server.php
@@ -1194,8 +1194,7 @@ class Auth_OpenID_ServerResponse {
*/
function toFormMarkup()
{
- return $this->fields->toFormMarkup(
- $this->fields->getArg(Auth_OpenID_OPENID_NS, 'return_to'));
+ return $this->fields->toFormMarkup($this->request->return_to);
}
/*
diff --git a/Tests/Auth/OpenID/Server.php b/Tests/Auth/OpenID/Server.php
index e55b56e..cab213f 100644
--- a/Tests/Auth/OpenID/Server.php
+++ b/Tests/Auth/OpenID/Server.php
@@ -774,6 +774,23 @@ class Tests_Auth_OpenID_Test_Encode extends PHPUnit_TestCase {
$this->assertTrue(array_key_exists('location', $webresponse->headers));
}
+ function test_cancelToForm()
+ {
+ $request = new Auth_OpenID_CheckIDRequest(
+ 'http://bombom.unittest/',
+ 'http://burr.unittest/999',
+ 'http://burr.unittest/',
+ false, null,
+ $this->server);
+
+ $response = new Auth_OpenID_ServerResponse($request);
+ $response->fields = Auth_OpenID_Message::fromOpenIDArgs(array('mode' => 'cancel'));
+
+ $form = $response->toFormMarkup();
+ $pos = strpos($form, 'http://burr.unittest/999');
+ $this->assertTrue($pos !== false, var_export($pos, true));
+ }
+
function test_assocReply()
{
if (!defined('Auth_OpenID_NO_MATH_SUPPORT')) {