summaryrefslogtreecommitdiffstats
path: root/examples/server/lib/actions.php
diff options
context:
space:
mode:
authortailor <cygnus@janrain.com>2006-04-24 18:13:26 +0000
committertailor <cygnus@janrain.com>2006-04-24 18:13:26 +0000
commit9fe157a92a14ee22518c33ba5723cfa9a902faae (patch)
tree880b4a4c3a53049af0d99a0ffd00fd9dbd01fc10 /examples/server/lib/actions.php
parente271bfe21ce79a7a788a4d4bac152e5ab3bef7d7 (diff)
downloadphp-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/actions.php')
-rw-r--r--examples/server/lib/actions.php50
1 files changed, 46 insertions, 4 deletions
diff --git a/examples/server/lib/actions.php b/examples/server/lib/actions.php
index 546bdc6..3c331f6 100644
--- a/examples/server/lib/actions.php
+++ b/examples/server/lib/actions.php
@@ -14,8 +14,50 @@ require_once "Auth/OpenID.php";
*/
function action_default()
{
- $server = getServer();
- return handleResponse($server->getOpenIDResponse('isTrusted'));
+ $server =& getServer();
+ $method = $_SERVER['REQUEST_METHOD'];
+ $request = null;
+ if ($method == 'GET') {
+ $request = $_GET;
+ } else {
+ $request = $_POST;
+ }
+
+ $request = Auth_OpenID::fixArgs($request);
+ $request = $server->decodeRequest($request);
+
+ if (!$request) {
+ return about_render();
+ }
+
+ setRequestInfo($request);
+
+ if (in_array($request->mode,
+ array('checkid_immediate', 'checkid_setup'))) {
+
+ if (isTrusted($request->identity, $request->trust_root)) {
+ $response =& $request->answer(true);
+ } else if ($request->immediate) {
+ $response =& $request->answer(false, getServerURL());
+ } else {
+ if (!getLoggedInUser()) {
+ return login_render();
+ }
+ return trust_render($request);
+ }
+ } else {
+ $response =& $server->handleRequest($request);
+ }
+
+ $webresponse =& $server->encodeResponse($response);
+
+ foreach ($webresponse->headers as $k => $v) {
+ header("$k: $v");
+ }
+
+ header(header_connection_close);
+ print $webresponse->body;
+ exit(0);
}
/**
@@ -72,7 +114,7 @@ function action_login()
list ($errors, $openid_url) = login_checkInput($fields);
if (count($errors) || !$openid_url) {
- $needed = $info ? $info->getIdentityURL() : false;
+ $needed = $info ? $info->identity : false;
return login_render($errors, @$fields['openid_url'], $needed);
} else {
setLoggedInUser($openid_url);
@@ -92,7 +134,7 @@ function action_trust()
$trusted = isset($_POST['trust']);
if ($info && isset($_POST['remember'])) {
$sites = getSessionSites();
- $sites[$info->getTrustRoot()] = $trusted;
+ $sites[$info->trust_root] = $trusted;
setSessionSites($sites);
}
return doAuth($info, $trusted, true);