diff options
Diffstat (limited to 'samples/RelyingPartyMvc/Controllers/UserController.cs')
-rw-r--r-- | samples/RelyingPartyMvc/Controllers/UserController.cs | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/samples/RelyingPartyMvc/Controllers/UserController.cs b/samples/RelyingPartyMvc/Controllers/UserController.cs index c6b8479..bebdaa5 100644 --- a/samples/RelyingPartyMvc/Controllers/UserController.cs +++ b/samples/RelyingPartyMvc/Controllers/UserController.cs @@ -5,6 +5,7 @@ using System.Web; using System.Web.Mvc; using System.Web.Security; + using DotNetOpenAuth.Messaging; using DotNetOpenAuth.OpenId; using DotNetOpenAuth.OpenId.RelyingParty; @@ -17,6 +18,10 @@ return View("Index"); } + public ActionResult LoginPopup() { + return View("LoginPopup"); + } + public ActionResult Logout() { FormsAuthentication.SignOut(); return Redirect("/Home"); @@ -34,7 +39,12 @@ // Stage 2: user submitting Identifier Identifier id; if (Identifier.TryParse(Request.Form["openid_identifier"], out id)) { - openid.CreateRequest(Request.Form["openid_identifier"]).RedirectToProvider(); + try { + openid.CreateRequest(Request.Form["openid_identifier"]).RedirectToProvider(); + } catch (ProtocolException ex) { + ViewData["Message"] = ex.Message; + return View("Login"); + } } else { ViewData["Message"] = "Invalid identifier"; return View("Login"); |