private static String ReasonToString(PXLogOutReason reason) { switch (reason) { case PXLogOutReason.UsersExceeded: return(ActionsMessages.UsersExceeded); case PXLogOutReason.CompaniesExceeded: return(ActionsMessages.CompaniesExceeded); default: return(reason.ToString()); } }
private static String GetTitle(PXLogOutReason reason) { switch (reason) { case PXLogOutReason.UserDisabled: return(ActionsMessages.UserDisabledReason); case PXLogOutReason.CompaniesExceeded: case PXLogOutReason.UsersExceeded: return(PXMessages.LocalizeFormatNoPrefix(ActionsMessages.LogoutReason, ReasonToString(reason))); case PXLogOutReason.SnapshotRestored: return(ActionsMessages.LogoutSnapshotReason); default: return(String.Empty); } }
private static String GetLoginUrl(PXLogOutReason reason) { String result = String.Concat(PX.Export.Authentication.FormsAuthenticationModule.LoginUrl, "?returnUrl=", System.Web.VirtualPathUtility.ToAbsolute(PX.Export.Authentication.FormsAuthenticationModule.DefaultUrl)); if (reason == PXLogOutReason.UserDisabled || reason == PXLogOutReason.SnapshotRestored) { result = String.Concat(result, "&message=", System.Web.HttpUtility.UrlEncode(GetTitle(reason))); } else { result = String.Concat(result, "&licenseexceeded=", System.Web.HttpUtility.UrlEncode(ReasonToString(reason))); } if (System.Web.HttpContext.Current == null) { return(result); } return(PXSessionStateStore.GetSessionUrl(System.Web.HttpContext.Current, result)); }
private static String GetRedirectMessage(PXLogOutReason reason) { return("Refresh|" + GetLoginUrl(reason) + "|"); }
public PXForceLogOutException(PXLogOutReason reason) : base(GetRedirectMessage(reason)) { Title = GetTitle(reason); Url = GetLoginUrl(reason); }