From ee4312b7f2e39bbfb91516d457bf5e136d0c8cab Mon Sep 17 00:00:00 2001 From: Sebastiaan Janssen Date: Mon, 26 Aug 2013 13:56:22 +0200 Subject: [PATCH] U4-2464 Single user protection, password not changeable! --- .../umbraco/dialogs/protectPage.aspx.cs | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/Umbraco.Web/umbraco.presentation/umbraco/dialogs/protectPage.aspx.cs b/src/Umbraco.Web/umbraco.presentation/umbraco/dialogs/protectPage.aspx.cs index fb3c51faf7..59a6ba54c3 100644 --- a/src/Umbraco.Web/umbraco.presentation/umbraco/dialogs/protectPage.aspx.cs +++ b/src/Umbraco.Web/umbraco.presentation/umbraco/dialogs/protectPage.aspx.cs @@ -2,6 +2,8 @@ using System; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; +using System.Windows.Forms.VisualStyles; +using umbraco.cms.businesslogic.member; using umbraco.cms.businesslogic.web; using umbraco.controls; using umbraco.cms.helpers; @@ -193,7 +195,8 @@ namespace umbraco.presentation.umbraco.dialogs { try { - if (cms.businesslogic.member.MemberType.GetByAlias("_umbracoSystemDefaultProtectType") == null) + if ( + cms.businesslogic.member.MemberType.GetByAlias("_umbracoSystemDefaultProtectType") == null) { cms.businesslogic.member.MemberType.MakeNew(BusinessLogic.User.GetUser(0), "_umbracoSystemDefaultProtectType"); } @@ -202,13 +205,23 @@ namespace umbraco.presentation.umbraco.dialogs { cms.businesslogic.member.MemberType.MakeNew(BusinessLogic.User.GetUser(0), "_umbracoSystemDefaultProtectType"); } + // create member - cms.businesslogic.member.Member mem = cms.businesslogic.member.Member.MakeNew(simpleLogin.Text, "", cms.businesslogic.member.MemberType.GetByAlias("_umbracoSystemDefaultProtectType"), base.getUser()); + Member mem = cms.businesslogic.member.Member.MakeNew(simpleLogin.Text, "", cms.businesslogic.member.MemberType.GetByAlias("_umbracoSystemDefaultProtectType"), base.getUser()); // working around empty password restriction for Umbraco Member Mode mem.Password = simplePassword.Text; member = Membership.GetUser(simpleLogin.Text); } } + else + { + // change password if it's not empty + if (string.IsNullOrWhiteSpace(simplePassword.Text) == false) + { + var mem = Member.GetMemberFromLoginName(simpleLogin.Text); + mem.Password = simplePassword.Text; + } + } // Create or find a memberGroup string simpleRoleName = "__umbracoRole_" + simpleLogin.Text;