From 31243c36663c88da5e1631b49b6f54df96bad0fe Mon Sep 17 00:00:00 2001 From: AndyZheng Date: Sat, 21 Jan 2017 23:39:50 -0500 Subject: [PATCH 1/2] adjust routers in openid module --- .../Controllers/AccountController.cs | 7 +- .../Modules/Orchard.OpenId/Routes/OpenId.cs | 73 +++++++++++++++++-- 2 files changed, 71 insertions(+), 9 deletions(-) diff --git a/src/Orchard.Web/Modules/Orchard.OpenId/Controllers/AccountController.cs b/src/Orchard.Web/Modules/Orchard.OpenId/Controllers/AccountController.cs index 01f64c7c61b..bf0c362ec39 100644 --- a/src/Orchard.Web/Modules/Orchard.OpenId/Controllers/AccountController.cs +++ b/src/Orchard.Web/Modules/Orchard.OpenId/Controllers/AccountController.cs @@ -46,6 +46,7 @@ public AccountController( public ILogger Logger { get; set; } public Localizer T { get; set; } + [AlwaysAccessible] [HttpGet] public ActionResult LogOn() { if (Request.IsAuthenticated) { @@ -68,11 +69,13 @@ public ActionResult LogOn(string userNameOrEmail, string password, string return } var membershipSettings = _membershipService.GetSettings(); + if (user != null && membershipSettings.EnableCustomPasswordPolicy && membershipSettings.EnablePasswordExpiration && - _membershipService.PasswordIsExpired(user, membershipSettings.PasswordExpirationTimeInDays)) { - return RedirectToAction("ChangeExpiredPassword", new { username = user.UserName }); + _membershipService.PasswordIsExpired(user, membershipSettings.PasswordExpirationTimeInDays)) + { + return RedirectToAction("ChangeExpiredPassword", "Account", new { Area = "Orchard.Users", username = user.UserName }); } _authenticationService.SignIn(user, rememberMe); diff --git a/src/Orchard.Web/Modules/Orchard.OpenId/Routes/OpenId.cs b/src/Orchard.Web/Modules/Orchard.OpenId/Routes/OpenId.cs index 4623ef48c46..04b7a244092 100644 --- a/src/Orchard.Web/Modules/Orchard.OpenId/Routes/OpenId.cs +++ b/src/Orchard.Web/Modules/Orchard.OpenId/Routes/OpenId.cs @@ -5,21 +5,27 @@ using Orchard.Mvc.Routes; using Orchard.OpenId.Services; -namespace Orchard.Azure.Authentication { - public class OpenIdRoutes : IRouteProvider { +namespace Orchard.OpenId.Routes +{ + public class OpenIdRoutes : IRouteProvider + { private readonly IEnumerable _openIdProviders; - public OpenIdRoutes(IEnumerable openIdProviders) { + public OpenIdRoutes(IEnumerable openIdProviders) + { _openIdProviders = openIdProviders; } - public void GetRoutes(ICollection routes) { - foreach (var route in GetRoutes()) { + public void GetRoutes(ICollection routes) + { + foreach (var route in GetRoutes()) + { routes.Add(route); } } - public IEnumerable GetRoutes() { + public IEnumerable GetRoutes() + { if (IsAnyProviderSettingsValid() == false) return Enumerable.Empty(); @@ -43,6 +49,57 @@ public IEnumerable GetRoutes() { }, new RouteDescriptor { Priority = 10, + Route = new Route( + "Users/Account/LogOn", + new RouteValueDictionary { + {"area", "Orchard.OpenId"}, + {"controller", "Account"}, + {"action","LogOn" } + }, + new RouteValueDictionary(), + new RouteValueDictionary { + {"area", "Orchard.OpenId"}, + {"controller", "Account"}, + {"action","LogOn" } + }, + new MvcRouteHandler()) + }, + new RouteDescriptor { + Priority = 10, + Route = new Route( + "Users/Account/LogOff", + new RouteValueDictionary { + {"area", "Orchard.OpenId"}, + {"controller", "Account"}, + {"action","LogOff" } + }, + new RouteValueDictionary(), + new RouteValueDictionary { + {"area", "Orchard.OpenId"}, + {"controller", "Account"}, + {"action","LogOff" } + }, + new MvcRouteHandler()) + }, + new RouteDescriptor { + Priority = 10, + Route = new Route( + "Users/Account/AccessDenied", + new RouteValueDictionary { + {"area", "Orchard.OpenId"}, + {"controller", "Account"}, + {"action","AccessDenied" } + }, + new RouteValueDictionary(), + new RouteValueDictionary { + {"area", "Orchard.OpenId"}, + {"controller", "Account"}, + {"action","AccessDenied" } + }, + new MvcRouteHandler()) + }, + new RouteDescriptor { + Priority = -20, Route = new Route( "Users/Account/{action}", new RouteValueDictionary { @@ -56,6 +113,7 @@ public IEnumerable GetRoutes() { }, new MvcRouteHandler()) }, + new RouteDescriptor { Priority = 10, Route = new Route( @@ -76,7 +134,8 @@ public IEnumerable GetRoutes() { }; } - private bool IsAnyProviderSettingsValid() { + private bool IsAnyProviderSettingsValid() + { return _openIdProviders.Any(provider => provider.IsValid); } } From 39951dbdb623f8db9dfd126405b6466eae580992 Mon Sep 17 00:00:00 2001 From: AndyZheng Date: Sun, 22 Jan 2017 00:09:53 -0500 Subject: [PATCH 2/2] adjust routers in openid module-good formate --- .../Controllers/AccountController.cs | 3 +-- .../Modules/Orchard.OpenId/Routes/OpenId.cs | 25 +++++++------------ 2 files changed, 10 insertions(+), 18 deletions(-) diff --git a/src/Orchard.Web/Modules/Orchard.OpenId/Controllers/AccountController.cs b/src/Orchard.Web/Modules/Orchard.OpenId/Controllers/AccountController.cs index bf0c362ec39..bdf7a72bd69 100644 --- a/src/Orchard.Web/Modules/Orchard.OpenId/Controllers/AccountController.cs +++ b/src/Orchard.Web/Modules/Orchard.OpenId/Controllers/AccountController.cs @@ -73,8 +73,7 @@ public ActionResult LogOn(string userNameOrEmail, string password, string return if (user != null && membershipSettings.EnableCustomPasswordPolicy && membershipSettings.EnablePasswordExpiration && - _membershipService.PasswordIsExpired(user, membershipSettings.PasswordExpirationTimeInDays)) - { + _membershipService.PasswordIsExpired(user, membershipSettings.PasswordExpirationTimeInDays)) { return RedirectToAction("ChangeExpiredPassword", "Account", new { Area = "Orchard.Users", username = user.UserName }); } diff --git a/src/Orchard.Web/Modules/Orchard.OpenId/Routes/OpenId.cs b/src/Orchard.Web/Modules/Orchard.OpenId/Routes/OpenId.cs index 04b7a244092..72668557720 100644 --- a/src/Orchard.Web/Modules/Orchard.OpenId/Routes/OpenId.cs +++ b/src/Orchard.Web/Modules/Orchard.OpenId/Routes/OpenId.cs @@ -5,27 +5,21 @@ using Orchard.Mvc.Routes; using Orchard.OpenId.Services; -namespace Orchard.OpenId.Routes -{ - public class OpenIdRoutes : IRouteProvider - { +namespace Orchard.OpenId.Routes { + public class OpenIdRoutes : IRouteProvider { private readonly IEnumerable _openIdProviders; - public OpenIdRoutes(IEnumerable openIdProviders) - { + public OpenIdRoutes(IEnumerable openIdProviders) { _openIdProviders = openIdProviders; } - public void GetRoutes(ICollection routes) - { - foreach (var route in GetRoutes()) - { + public void GetRoutes(ICollection routes) { + foreach (var route in GetRoutes()) { routes.Add(route); } } - public IEnumerable GetRoutes() - { + public IEnumerable GetRoutes() { if (IsAnyProviderSettingsValid() == false) return Enumerable.Empty(); @@ -64,7 +58,7 @@ public IEnumerable GetRoutes() }, new MvcRouteHandler()) }, - new RouteDescriptor { + new RouteDescriptor { Priority = 10, Route = new Route( "Users/Account/LogOff", @@ -81,7 +75,7 @@ public IEnumerable GetRoutes() }, new MvcRouteHandler()) }, - new RouteDescriptor { + new RouteDescriptor { Priority = 10, Route = new Route( "Users/Account/AccessDenied", @@ -134,8 +128,7 @@ public IEnumerable GetRoutes() }; } - private bool IsAnyProviderSettingsValid() - { + private bool IsAnyProviderSettingsValid() { return _openIdProviders.Any(provider => provider.IsValid); } }