diff options
author | tailor <cygnus@janrain.com> | 2006-04-24 18:13:26 +0000 |
---|---|---|
committer | tailor <cygnus@janrain.com> | 2006-04-24 18:13:26 +0000 |
commit | 9fe157a92a14ee22518c33ba5723cfa9a902faae (patch) | |
tree | 880b4a4c3a53049af0d99a0ffd00fd9dbd01fc10 /examples/server/lib/common.php | |
parent | e271bfe21ce79a7a788a4d4bac152e5ab3bef7d7 (diff) | |
download | php-openid-9fe157a92a14ee22518c33ba5723cfa9a902faae.zip php-openid-9fe157a92a14ee22518c33ba5723cfa9a902faae.tar.gz php-openid-9fe157a92a14ee22518c33ba5723cfa9a902faae.tar.bz2 |
[project @ Updated server example to work with new server impl]
Diffstat (limited to 'examples/server/lib/common.php')
-rw-r--r-- | examples/server/lib/common.php | 47 |
1 files changed, 14 insertions, 33 deletions
diff --git a/examples/server/lib/common.php b/examples/server/lib/common.php index 338bad2..4bc1dac 100644 --- a/examples/server/lib/common.php +++ b/examples/server/lib/common.php @@ -16,38 +16,11 @@ function authCancel($info) setRequestInfo(); $url = $info->getCancelURL(); } else { - $server = getServer(); - $url = $server->server_url; + $url = getServerURL(); } return redirect_render($url); } -function handleResponse($response, $do_auth=true) -{ - list ($status, $info) = $response; - switch($status) { - case Auth_OpenID_REMOTE_ERROR: - return kv_render($info, false); - case Auth_OpenID_REMOTE_OK: - return kv_render($info); - case Auth_OpenID_REDIRECT: - return redirect_render($info); - case Auth_OpenID_DO_AUTH: - if ($do_auth) { - return doAuth($info); - } else { - return about_render('Got unexpected DO_AUTH'); - } - case Auth_OpenID_DO_ABOUT: - return about_render(); - case Auth_OpenID_LOCAL_ERROR: - return about_render($info, false); - default: - $repr = var_export($status, true); - return about_render("Internal error: unknown status $repr"); - } -} - function doAuth($info, $trusted=null, $fail_cancels=false) { if (!$info) { @@ -55,7 +28,7 @@ function doAuth($info, $trusted=null, $fail_cancels=false) return authCancel(null); } - $req_url = $info->getIdentityURL(); + $req_url = $info->identity; $user = getLoggedInUser(); setRequestInfo($info); @@ -64,14 +37,22 @@ function doAuth($info, $trusted=null, $fail_cancels=false) } $sites = getSessionSites(); - $trust_root = $info->getTrustRoot(); + $trust_root = $info->trust_root; $fail_cancels = $fail_cancels || isset($sites[$trust_root]); $trusted = isset($trusted) ? $trusted : isTrusted($req_url, $trust_root); if ($trusted) { setRequestInfo(); - $server = getServer(); - $response = $server->getAuthResponse(&$info, true); - return handleResponse($response, false); + $server =& getServer(); + $response =& $info->answer(true); + $webresponse =& $server->encodeResponse($response); + + $new_headers = array(); + + foreach ($webresponse->headers as $k => $v) { + $new_headers[] = $k.": ".$v; + } + + return array($new_headers, $webresponse->body); } elseif ($fail_cancels) { return authCancel($info); } else { |