diff options
author | Andrew Arnott <andrewarnott@gmail.com> | 2009-10-23 21:10:10 -0700 |
---|---|---|
committer | Andrew Arnott <andrewarnott@gmail.com> | 2009-10-23 21:32:39 -0700 |
commit | 7264e2d46022b9007d0eaf6a29a318bf135abd38 (patch) | |
tree | ec3d51e699e87c6cd3264e6173ab8dd1c708a246 /projecttemplates/WebFormsRelyingParty | |
parent | 66f59182aca0710e360d5bf3210fdc500474346e (diff) | |
download | DotNetOpenAuth-7264e2d46022b9007d0eaf6a29a318bf135abd38.zip DotNetOpenAuth-7264e2d46022b9007d0eaf6a29a318bf135abd38.tar.gz DotNetOpenAuth-7264e2d46022b9007d0eaf6a29a318bf135abd38.tar.bz2 |
Errors while processing authentication are now displayed to the user.
Diffstat (limited to 'projecttemplates/WebFormsRelyingParty')
3 files changed, 50 insertions, 1 deletions
diff --git a/projecttemplates/WebFormsRelyingParty/LoginFrame.aspx b/projecttemplates/WebFormsRelyingParty/LoginFrame.aspx index fb0a163..3265440 100644 --- a/projecttemplates/WebFormsRelyingParty/LoginFrame.aspx +++ b/projecttemplates/WebFormsRelyingParty/LoginFrame.aspx @@ -32,7 +32,9 @@ <p> Login with an account you already use! </p> - <rp:OpenIdButtonPanel runat="server" OnLoggedIn="openIdButtonPanel_LoggedIn" OnReceivedToken="openIdButtonPanel_ReceivedToken"> + <rp:OpenIdButtonPanel runat="server" ID="openIdButtonPanel" OnLoggedIn="openIdButtonPanel_LoggedIn" + OnFailed="openIdButtonPanel_Failed" OnCanceled="openIdButtonPanel_Failed" OnReceivedToken="openIdButtonPanel_ReceivedToken" + OnTokenProcessingError="openIdButtonPanel_TokenProcessingError"> <Providers> <rp:ProviderInfo OPIdentifier="https://me.yahoo.com/" Image="images/yahoo.gif" /> <rp:ProviderInfo OPIdentifier="https://www.google.com/accounts/o8/id" Image="images/google.gif" /> @@ -42,6 +44,13 @@ </Providers> </rp:OpenIdButtonPanel> <asp:HiddenField runat="server" ID="topWindowUrl" /> + <asp:Panel ID="errorPanel" runat="server" EnableViewState="false" Visible="false" ForeColor="Red"> + Oops. Something went wrong while logging you in. Trying again may work. <a href="javascript:$('#errorMessage').show()"> + What went wrong?</a> + <span id="errorMessage" style="display: none"> + <asp:Label ID="errorMessageLabel" runat="server" Text="Login canceled." /> + </span> + </asp:Panel> <div class="helpDoc"> <p> If you have logged in previously, click the same button you did last time. diff --git a/projecttemplates/WebFormsRelyingParty/LoginFrame.aspx.cs b/projecttemplates/WebFormsRelyingParty/LoginFrame.aspx.cs index 081b1cb..716c54d 100644 --- a/projecttemplates/WebFormsRelyingParty/LoginFrame.aspx.cs +++ b/projecttemplates/WebFormsRelyingParty/LoginFrame.aspx.cs @@ -6,6 +6,7 @@ using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; +using DotNetOpenAuth.InfoCard; using DotNetOpenAuth.Messaging; using DotNetOpenAuth.OpenId.Extensions.SimpleRegistration; using DotNetOpenAuth.OpenId.RelyingParty; @@ -75,5 +76,17 @@ document.getElementById('topWindowUrl').value = window.parent.location.href; FormsAuthentication.RedirectFromLoginPage(openidToken.ClaimedIdentifier, persistentCookie); } } + + protected void openIdButtonPanel_Failed(object sender, OpenIdEventArgs e) { + if (e.Response.Exception != null) { + errorMessageLabel.Text = e.Response.Exception.Message; + } + errorPanel.Visible = true; + } + + protected void openIdButtonPanel_TokenProcessingError(object sender, TokenProcessingErrorEventArgs e) { + errorMessageLabel.Text = e.Exception.Message; + errorPanel.Visible = true; + } } } diff --git a/projecttemplates/WebFormsRelyingParty/LoginFrame.aspx.designer.cs b/projecttemplates/WebFormsRelyingParty/LoginFrame.aspx.designer.cs index ba3d2ea..5d0a0c9 100644 --- a/projecttemplates/WebFormsRelyingParty/LoginFrame.aspx.designer.cs +++ b/projecttemplates/WebFormsRelyingParty/LoginFrame.aspx.designer.cs @@ -23,6 +23,15 @@ namespace WebFormsRelyingParty { protected global::System.Web.UI.HtmlControls.HtmlForm form1; /// <summary> + /// openIdButtonPanel control. + /// </summary> + /// <remarks> + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// </remarks> + protected global::DotNetOpenAuth.OpenId.RelyingParty.OpenIdButtonPanel openIdButtonPanel; + + /// <summary> /// topWindowUrl control. /// </summary> /// <remarks> @@ -30,5 +39,23 @@ namespace WebFormsRelyingParty { /// To modify move field declaration from designer file to code-behind file. /// </remarks> protected global::System.Web.UI.WebControls.HiddenField topWindowUrl; + + /// <summary> + /// errorPanel control. + /// </summary> + /// <remarks> + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// </remarks> + protected global::System.Web.UI.WebControls.Panel errorPanel; + + /// <summary> + /// errorMessageLabel control. + /// </summary> + /// <remarks> + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// </remarks> + protected global::System.Web.UI.WebControls.Label errorMessageLabel; } } |