From 3139ad99e08efa6c92f27eeca5882f1ddd66e70a Mon Sep 17 00:00:00 2001 From: Mads Rasmussen Date: Tue, 20 Sep 2022 13:54:06 +0200 Subject: [PATCH 1/9] Only contain style instead of full layout (#13033) --- .../src/less/components/umb-property-editor.less | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/less/components/umb-property-editor.less b/src/Umbraco.Web.UI.Client/src/less/components/umb-property-editor.less index b2a5a055e1..6e16e76295 100644 --- a/src/Umbraco.Web.UI.Client/src/less/components/umb-property-editor.less +++ b/src/Umbraco.Web.UI.Client/src/less/components/umb-property-editor.less @@ -1,6 +1,6 @@ .umb-property-editor { position: relative; - contain: layout; + contain: style; } .umb-property-editor--preview { @@ -63,4 +63,4 @@ margin-left: auto; margin-right: auto; } -} \ No newline at end of file +} From 0142ade713cb4df7fcf36a518ef739c03c72ec37 Mon Sep 17 00:00:00 2001 From: Bjarne Fyrstenborg Date: Wed, 21 Sep 2022 16:10:40 +0200 Subject: [PATCH 2/9] Ensure consistent margin on headings in tree root (#12992) (cherry picked from commit 88bfef9e0de58fe4fbf4bbb409f3257acd864849) --- .../src/less/components/tree/umb-tree-root.less | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/Umbraco.Web.UI.Client/src/less/components/tree/umb-tree-root.less b/src/Umbraco.Web.UI.Client/src/less/components/tree/umb-tree-root.less index 83f1cd8d36..b0a230b4fb 100644 --- a/src/Umbraco.Web.UI.Client/src/less/components/tree/umb-tree-root.less +++ b/src/Umbraco.Web.UI.Client/src/less/components/tree/umb-tree-root.less @@ -10,10 +10,14 @@ height: @editorHeaderHeight; } + h1, h5 { + margin: 0; + flex: 1; + } + h1 { font-size: @baseFontSize; font-weight: 700; - margin: 0; width: 100%; display: flex; } From 4effe1d462ba6600b27ca32ff4b6b1a40aa8c4a8 Mon Sep 17 00:00:00 2001 From: Sebastiaan Janssen Date: Wed, 21 Sep 2022 16:21:57 +0200 Subject: [PATCH 3/9] Bump version to 10.2.1 --- version.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.json b/version.json index 0f9ad08c15..0daf3435bd 100644 --- a/version.json +++ b/version.json @@ -1,6 +1,6 @@ { "$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/master/src/NerdBank.GitVersioning/version.schema.json", - "version": "10.2.0", + "version": "10.2.1", "assemblyVersion": { "precision": "Build" // optional. Use when you want a more precise assembly version than the default major.minor. }, From 3f6fc6f761813b1e9c60e9fe549c6adac09d2126 Mon Sep 17 00:00:00 2001 From: Jacob Overgaard <752371+iOvergaard@users.noreply.github.com> Date: Wed, 21 Sep 2022 14:59:54 +0200 Subject: [PATCH 4/9] add an extra check to ensure the pips exist before adding a class to them --- .../common/directives/components/umbrangeslider.directive.js | 5 ++++- .../src/installer/steps/user.controller.js | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/components/umbrangeslider.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/components/umbrangeslider.directive.js index 233d5c2f7d..8cb72b565b 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/components/umbrangeslider.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/components/umbrangeslider.directive.js @@ -332,7 +332,10 @@ For extra details about options and events take a look here: https://refreshless activePip[handle] = pip; } }); - activePip[handle].classList.add("noUi-value-active"); + + if (activePip[handle]) { + activePip[handle].classList.add("noUi-value-active"); + } }); } function addPipClickHandler(){ diff --git a/src/Umbraco.Web.UI.Client/src/installer/steps/user.controller.js b/src/Umbraco.Web.UI.Client/src/installer/steps/user.controller.js index e65499ba6b..a8bb36d3d5 100644 --- a/src/Umbraco.Web.UI.Client/src/installer/steps/user.controller.js +++ b/src/Umbraco.Web.UI.Client/src/installer/steps/user.controller.js @@ -64,7 +64,10 @@ angular.module("umbraco.install").controller("Umbraco.Install.UserController", f activePip[handle] = pip; } }); - activePip[handle].classList.add("noUi-value-active"); + + if (activePip[handle]) { + activePip[handle].classList.add("noUi-value-active"); + } }); $(consentSlider).on('$destroy', function () { From 4b25beea8b03d235f8d1bf923143d46c17188973 Mon Sep 17 00:00:00 2001 From: Jacob Overgaard <752371+iOvergaard@users.noreply.github.com> Date: Wed, 21 Sep 2022 15:37:57 +0200 Subject: [PATCH 5/9] improve pip classList add/remove with no intermediary variable --- .../directives/components/umbrangeslider.directive.js | 11 ++--------- .../src/installer/steps/user.controller.js | 11 ++--------- 2 files changed, 4 insertions(+), 18 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/components/umbrangeslider.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/components/umbrangeslider.directive.js index 8cb72b565b..2fe4656ac4 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/components/umbrangeslider.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/components/umbrangeslider.directive.js @@ -322,20 +322,13 @@ For extra details about options and events take a look here: https://refreshless }); } function setUpActivePipsHandling() { - let activePip = [null, null]; sliderInstance.noUiSlider.on('update', function (values,handle) { - if(activePip[handle]){ - activePip[handle].classList.remove("noUi-value-active"); - } sliderInstance.querySelectorAll('.noUi-value').forEach(pip => { + pip.classList.remove("noUi-value-active"); if (Number(values[handle]) === Number(pip.getAttribute('data-value'))) { - activePip[handle] = pip; + pip.classList.add("noUi-value-active"); } }); - - if (activePip[handle]) { - activePip[handle].classList.add("noUi-value-active"); - } }); } function addPipClickHandler(){ diff --git a/src/Umbraco.Web.UI.Client/src/installer/steps/user.controller.js b/src/Umbraco.Web.UI.Client/src/installer/steps/user.controller.js index a8bb36d3d5..4726a53aaf 100644 --- a/src/Umbraco.Web.UI.Client/src/installer/steps/user.controller.js +++ b/src/Umbraco.Web.UI.Client/src/installer/steps/user.controller.js @@ -54,20 +54,13 @@ angular.module("umbraco.install").controller("Umbraco.Install.UserController", f const pips = consentSlider.querySelectorAll('.noUi-value'); - let activePip = [null, null]; consentSlider.noUiSlider.on('update', function (values,handle) { - if(activePip[handle]){ - activePip[handle].classList.remove("noUi-value-active"); - } consentSlider.querySelectorAll('.noUi-value').forEach(pip => { + pip.classList.remove("noUi-value-active"); if (Number(values[handle]) === Number(pip.getAttribute('data-value'))) { - activePip[handle] = pip; + pip.classList.add("noUi-value-active"); } }); - - if (activePip[handle]) { - activePip[handle].classList.add("noUi-value-active"); - } }); $(consentSlider).on('$destroy', function () { From b7f4f95f4bc76f46bb1800f3a504f7b484340ac5 Mon Sep 17 00:00:00 2001 From: Sean <29239704+Bakersbakebread@users.noreply.github.com> Date: Sat, 17 Sep 2022 12:00:06 +0100 Subject: [PATCH 6/9] pass in parameters needed to member service (#13020) --- src/Umbraco.Core/Services/MemberService.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Umbraco.Core/Services/MemberService.cs b/src/Umbraco.Core/Services/MemberService.cs index 76d730dc78..4f242cb53e 100644 --- a/src/Umbraco.Core/Services/MemberService.cs +++ b/src/Umbraco.Core/Services/MemberService.cs @@ -180,10 +180,10 @@ namespace Umbraco.Cms.Core.Services => CreateMemberWithIdentity(username, email, string.Empty, string.Empty, memberTypeAlias, isApproved); public IMember CreateMemberWithIdentity(string username, string email, string name, string memberTypeAlias) - => CreateMemberWithIdentity(username, email, string.Empty, string.Empty, memberTypeAlias); + => CreateMemberWithIdentity(username, email, name, string.Empty, memberTypeAlias); public IMember CreateMemberWithIdentity(string username, string email, string name, string memberTypeAlias, bool isApproved) - => CreateMemberWithIdentity(username, string.Empty, name, string.Empty, memberTypeAlias, isApproved); + => CreateMemberWithIdentity(username, email, name, string.Empty, memberTypeAlias, isApproved); /// /// Creates and persists a Member From 9a9bd6e480e3e80ae0c8781253dd6b7a918ed07d Mon Sep 17 00:00:00 2001 From: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com> Date: Mon, 19 Sep 2022 09:26:10 +0100 Subject: [PATCH 7/9] Missing methods from IMemberService (#13022) * Add back methods to interface * Add default implementations to avoid breaking changes Co-authored-by: Zeegaan --- src/Umbraco.Core/Services/IMemberService.cs | 51 +++++++++++++++++++++ src/Umbraco.Core/Services/MemberService.cs | 2 +- 2 files changed, 52 insertions(+), 1 deletion(-) diff --git a/src/Umbraco.Core/Services/IMemberService.cs b/src/Umbraco.Core/Services/IMemberService.cs index ec600efab7..b2b2b5d8d5 100644 --- a/src/Umbraco.Core/Services/IMemberService.cs +++ b/src/Umbraco.Core/Services/IMemberService.cs @@ -90,6 +90,39 @@ public interface IMemberService : IMembershipMemberService /// IMember CreateMember(string username, string email, string name, IMemberType memberType); + /// + /// Creates and persists a Member + /// + /// + /// Using this method will persist the Member object before its returned + /// meaning that it will have an Id available (unlike the CreateMember method) + /// + /// Username of the Member to create + /// Email of the Member to create + /// Alias of the MemberType the Member should be based on + /// + /// + /// + IMember CreateMemberWithIdentity(string username, string email, string memberTypeAlias) => + throw new NotImplementedException(); + + /// + /// Creates and persists a Member + /// + /// + /// Using this method will persist the Member object before its returned + /// meaning that it will have an Id available (unlike the CreateMember method) + /// + /// Username of the Member to create + /// Email of the Member to create + /// Alias of the MemberType the Member should be based on + /// Whether the member is approved or not + /// + /// + /// + IMember CreateMemberWithIdentity(string username, string email, string memberTypeAlias, bool isApproved) => + throw new NotImplementedException(); + /// /// Creates and persists a Member /// @@ -106,6 +139,24 @@ public interface IMemberService : IMembershipMemberService /// IMember CreateMemberWithIdentity(string username, string email, string name, string memberTypeAlias); + /// + /// Creates and persists a Member + /// + /// + /// Using this method will persist the Member object before its returned + /// meaning that it will have an Id available (unlike the CreateMember method) + /// + /// Username of the Member to create + /// Email of the Member to create + /// Name of the Member to create + /// Alias of the MemberType the Member should be based on + /// Whether the member is approved or not + /// + /// + /// + IMember CreateMemberWithIdentity(string username, string email, string name, string memberTypeAlias, bool isApproved) + => throw new NotImplementedException(); + /// /// Creates and persists a Member /// diff --git a/src/Umbraco.Core/Services/MemberService.cs b/src/Umbraco.Core/Services/MemberService.cs index 4f242cb53e..21f9948c1d 100644 --- a/src/Umbraco.Core/Services/MemberService.cs +++ b/src/Umbraco.Core/Services/MemberService.cs @@ -177,7 +177,7 @@ namespace Umbraco.Cms.Core.Services => CreateMemberWithIdentity(username, email, username, string.Empty, memberTypeAlias); public IMember CreateMemberWithIdentity(string username, string email, string memberTypeAlias, bool isApproved) - => CreateMemberWithIdentity(username, email, string.Empty, string.Empty, memberTypeAlias, isApproved); + => CreateMemberWithIdentity(username, email, username, string.Empty, memberTypeAlias, isApproved); public IMember CreateMemberWithIdentity(string username, string email, string name, string memberTypeAlias) => CreateMemberWithIdentity(username, email, name, string.Empty, memberTypeAlias); From 7493e5e1fd75729d1b1697daf5cd9e4bbe1429d4 Mon Sep 17 00:00:00 2001 From: Mole Date: Mon, 26 Sep 2022 11:25:59 +0200 Subject: [PATCH 8/9] Add spellcheck false to password inputs (#13059) --- .../lib/bootstrap/less/tests/css-tests.html | 2 +- .../lib/bootstrap/less/tests/forms.html | 2 +- .../src/installer/steps/database.html | 1 + .../src/installer/steps/user.html | 1 + .../src/views/components/application/umb-login.html | 10 +++++----- .../src/views/components/users/change-password.html | 12 +++++++++--- 6 files changed, 18 insertions(+), 10 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/lib/bootstrap/less/tests/css-tests.html b/src/Umbraco.Web.UI.Client/lib/bootstrap/less/tests/css-tests.html index c69688c763..e3c3f725b7 100644 --- a/src/Umbraco.Web.UI.Client/lib/bootstrap/less/tests/css-tests.html +++ b/src/Umbraco.Web.UI.Client/lib/bootstrap/less/tests/css-tests.html @@ -940,7 +940,7 @@
- + diff --git a/src/Umbraco.Web.UI.Client/lib/bootstrap/less/tests/forms.html b/src/Umbraco.Web.UI.Client/lib/bootstrap/less/tests/forms.html index a63d728a00..f0f861e600 100644 --- a/src/Umbraco.Web.UI.Client/lib/bootstrap/less/tests/forms.html +++ b/src/Umbraco.Web.UI.Client/lib/bootstrap/less/tests/forms.html @@ -61,7 +61,7 @@
- +
diff --git a/src/Umbraco.Web.UI.Client/src/installer/steps/database.html b/src/Umbraco.Web.UI.Client/src/installer/steps/database.html index e248f3221b..e75a82f9df 100644 --- a/src/Umbraco.Web.UI.Client/src/installer/steps/database.html +++ b/src/Umbraco.Web.UI.Client/src/installer/steps/database.html @@ -135,6 +135,7 @@ placeholder="umbraco-db-password" required ng-model="installer.current.model.password" + spellcheck="false" /> Enter the database password
diff --git a/src/Umbraco.Web.UI.Client/src/installer/steps/user.html b/src/Umbraco.Web.UI.Client/src/installer/steps/user.html index c0b254f80a..7e37c57328 100644 --- a/src/Umbraco.Web.UI.Client/src/installer/steps/user.html +++ b/src/Umbraco.Web.UI.Client/src/installer/steps/user.html @@ -61,6 +61,7 @@ required ng-model="installer.current.model.password" id="password" + spellcheck="false" /> At least {{installer.current.model.minCharLength}} characters diff --git a/src/Umbraco.Web.UI.Client/src/views/components/application/umb-login.html b/src/Umbraco.Web.UI.Client/src/views/components/application/umb-login.html index e466cfbca5..b53e29c365 100644 --- a/src/Umbraco.Web.UI.Client/src/views/components/application/umb-login.html +++ b/src/Umbraco.Web.UI.Client/src/views/components/application/umb-login.html @@ -22,7 +22,7 @@ New password {{vm.invitedUserPasswordModel.passwordPolicyText}} - + Your new password cannot be blank! Minimum {{vm.invitedUserPasswordModel.passwordPolicies.minPasswordLength}} characters @@ -32,7 +32,7 @@
- + Required The confirmed password doesn't match the new password! @@ -156,7 +156,7 @@
- +