/**
* Process the current request
*
* $request - The current request parameters. Leave as NULL to default to use $_REQUEST.
*/
public static function process($request = NULL)
{
// Setup request variable
Hybrid_Endpoint::$request = $request;
if (is_null(Hybrid_Endpoint::$request)) {
Hybrid_Endpoint::$request = $_REQUEST;
}
// If windows_live_channel requested, we return our windows_live WRAP_CHANNEL_URL
if (isset(Hybrid_Endpoint::$request["get"]) && Hybrid_Endpoint::$request["get"] == "windows_live_channel") {
Hybrid_Endpoint::processWindowsLiveChannel();
}
// If openid_policy requested, we return our policy document
if (isset(Hybrid_Endpoint::$request["get"]) && Hybrid_Endpoint::$request["get"] == "openid_policy") {
Hybrid_Endpoint::processOpenidPolicy();
}
// If openid_xrds requested, we return our XRDS document
if (isset(Hybrid_Endpoint::$request["get"]) && Hybrid_Endpoint::$request["get"] == "openid_xrds") {
Hybrid_Endpoint::processOpenidXRDS();
}
// If we get a hauth.start
if (isset(Hybrid_Endpoint::$request["hauth_start"]) && Hybrid_Endpoint::$request["hauth_start"]) {
Hybrid_Endpoint::processAuthStart();
} elseif (isset(Hybrid_Endpoint::$request["hauth_done"]) && Hybrid_Endpoint::$request["hauth_done"]) {
Hybrid_Endpoint::processAuthDone();
} else {
Hybrid_Endpoint::processOpenidRealm();
}
}