From b17873a456b0ae3192d9766315b3d70685ee8691 Mon Sep 17 00:00:00 2001 From: Aymeric Augustin Date: Wed, 29 Oct 2008 22:01:29 +0100 Subject: [PATCH] Use hruid as openid identifier --- modules/openid.php | 17 ++++++++++++----- templates/openid/user_xrds.tpl | 14 ++++++++++---- 2 files changed, 22 insertions(+), 9 deletions(-) diff --git a/modules/openid.php b/modules/openid.php index bd74eee..067e0a0 100644 --- a/modules/openid.php +++ b/modules/openid.php @@ -77,7 +77,7 @@ class OpenidModule extends PLModule // Each user has only one identity to choose from // So we can make automatically the identity selection if ($request->idSelect()) { - $request->identity = get_user_openid_url($user); + $request->identity = $user->hruid(); } // If we still don't have an identifier (used or desired), give up @@ -127,7 +127,7 @@ class OpenidModule extends PLModule $user = S::user(); // Check that the identity matches the user currently logged in - if ($request->identity != get_user_openid_url($user)) { + if ($request->identity != $user->hruid) { $response =& $request->answer(false); $webresponse =& $server->encodeResponse($response); $this->render_openid_response($webresponse); @@ -173,14 +173,21 @@ class OpenidModule extends PLModule // Load constants $this->load('openid.inc.php'); + // Make sure the user exists + $user = get_user($x); + if (is_null($user)) { + return PL_NOT_FOUND; + } + // Set XRDS content-type and template header('Content-type: application/xrds+xml'); $page->changeTpl('openid/user_xrds.tpl', NO_SKIN); // Set variables - $page->assign('type1', Auth_OpenID_TYPE_2_0); - $page->assign('type2', Auth_OpenID_TYPE_1_1); - $page->assign('uri', get_openid_url()); + $page->assign('type2', Auth_OpenID_TYPE_2_0); + $page->assign('type1', Auth_OpenID_TYPE_1_1); + $page->assign('provider', get_openid_url()); + $page->assign('local_id', $user->hruid); } function handler_melix(&$page, $x = null) diff --git a/templates/openid/user_xrds.tpl b/templates/openid/user_xrds.tpl index 44c03a9..eff0fc4 100644 --- a/templates/openid/user_xrds.tpl +++ b/templates/openid/user_xrds.tpl @@ -1,12 +1,18 @@ + xmlns="xri://$xrd*($v*2.0)" + xmlns:openid="http://openid.net/xmlns/1.0"> - + {$type2} + {$provider} + {$local_id} + + {$type1} - {$uri} + {$provider} + {$local_id} - \ No newline at end of file + -- 2.1.4