From e7781cd95b1cf4867cfdc3f068859ad731babebe Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Mon, 11 Mar 2019 14:53:07 +0100 Subject: [PATCH] DRY - Reused code --- .../common/services/contenteditinghelper.service.js | 13 +++++++++++++ .../views/content/overlays/publish.controller.js | 4 ++-- .../src/views/content/overlays/save.controller.js | 4 ++-- .../views/content/overlays/schedule.controller.js | 4 ++-- .../content/overlays/sendtopublish.controller.js | 4 ++-- .../views/content/overlays/unpublish.controller.js | 6 +++--- 6 files changed, 24 insertions(+), 11 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/common/services/contenteditinghelper.service.js b/src/Umbraco.Web.UI.Client/src/common/services/contenteditinghelper.service.js index b9bc4eb499..1efcf84dcb 100644 --- a/src/Umbraco.Web.UI.Client/src/common/services/contenteditinghelper.service.js +++ b/src/Umbraco.Web.UI.Client/src/common/services/contenteditinghelper.service.js @@ -301,6 +301,19 @@ function contentEditingHelper(fileManager, $q, $location, $routeParams, notifica return allProps; }, + /** + * @ngdoc method + * @name umbraco.services.contentEditingHelper#buildCompositeVariantId + * @methodOf umbraco.services.contentEditingHelper + * @function + * + * @description + * Returns a id for the variant that is unique between all variants on the content + */ + buildCompositeVariantId: function (variant) { + return (variant.language ? variant.language.culture : "invariant") + "_" + (variant.segment ? variant.segment : ""); + }, + /** * @ngdoc method diff --git a/src/Umbraco.Web.UI.Client/src/views/content/overlays/publish.controller.js b/src/Umbraco.Web.UI.Client/src/views/content/overlays/publish.controller.js index 1564f7bf9b..3873b7718a 100644 --- a/src/Umbraco.Web.UI.Client/src/views/content/overlays/publish.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/content/overlays/publish.controller.js @@ -1,7 +1,7 @@ (function () { "use strict"; - function PublishController($scope, localizationService) { + function PublishController($scope, localizationService, contentEditingHelper) { var vm = this; vm.loading = true; @@ -106,7 +106,7 @@ _.each(vm.variants, function (variant) { - variant.compositeId = (variant.language ? variant.language.culture : "invariant") + "_" + (variant.segment ? variant.segment : ""); + variant.compositeId = contentEditingHelper.buildCompositeVariantId(variant); variant.htmlId = "_content_variant_" + variant.compositeId; //check for pristine variants diff --git a/src/Umbraco.Web.UI.Client/src/views/content/overlays/save.controller.js b/src/Umbraco.Web.UI.Client/src/views/content/overlays/save.controller.js index 5e11cafe4c..aacea9fe0e 100644 --- a/src/Umbraco.Web.UI.Client/src/views/content/overlays/save.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/content/overlays/save.controller.js @@ -1,7 +1,7 @@ (function () { "use strict"; - function SaveContentController($scope, localizationService) { + function SaveContentController($scope, localizationService, contentEditingHelper) { var vm = this; vm.loading = true; @@ -75,7 +75,7 @@ _.each(vm.variants, function (variant) { - variant.compositeId = (variant.language ? variant.language.culture : "invariant") + "_" + (variant.segment ? variant.segment : ""); + variant.compositeId = contentEditingHelper.buildCompositeVariantId(variant); variant.htmlId = "_content_variant_" + variant.compositeId; //check for pristine variants diff --git a/src/Umbraco.Web.UI.Client/src/views/content/overlays/schedule.controller.js b/src/Umbraco.Web.UI.Client/src/views/content/overlays/schedule.controller.js index 7a4321309d..5aa7eff1ef 100644 --- a/src/Umbraco.Web.UI.Client/src/views/content/overlays/schedule.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/content/overlays/schedule.controller.js @@ -1,7 +1,7 @@ (function () { "use strict"; - function ScheduleContentController($scope, $timeout, localizationService, dateHelper, userService) { + function ScheduleContentController($scope, $timeout, localizationService, dateHelper, userService, contentEditingHelper) { var vm = this; @@ -45,7 +45,7 @@ _.each(vm.variants, function (variant) { - variant.compositeId = (variant.language ? variant.language.culture : "invariant") + "_" + (variant.segment ? variant.segment : ""); + variant.compositeId = contentEditingHelper.buildCompositeVariantId(variant); variant.htmlId = "_content_variant_" + variant.compositeId; //check for pristine variants diff --git a/src/Umbraco.Web.UI.Client/src/views/content/overlays/sendtopublish.controller.js b/src/Umbraco.Web.UI.Client/src/views/content/overlays/sendtopublish.controller.js index ace4178eea..c85e8d7013 100644 --- a/src/Umbraco.Web.UI.Client/src/views/content/overlays/sendtopublish.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/content/overlays/sendtopublish.controller.js @@ -1,7 +1,7 @@ (function () { "use strict"; - function SendToPublishController($scope, localizationService) { + function SendToPublishController($scope, localizationService, contentEditingHelper) { var vm = this; vm.loading = true; @@ -25,7 +25,7 @@ if (vm.variants.length !== 0) { _.each(vm.variants, function (variant) { - variant.compositeId = (variant.language ? variant.language.culture : "invariant") + "_" + (variant.segment ? variant.segment : ""); + variant.compositeId = contentEditingHelper.buildCompositeVariantId(variant); variant.htmlId = "_content_variant_" + variant.compositeId; }); diff --git a/src/Umbraco.Web.UI.Client/src/views/content/overlays/unpublish.controller.js b/src/Umbraco.Web.UI.Client/src/views/content/overlays/unpublish.controller.js index e6ae488537..3011bf49ee 100644 --- a/src/Umbraco.Web.UI.Client/src/views/content/overlays/unpublish.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/content/overlays/unpublish.controller.js @@ -1,7 +1,7 @@ (function () { "use strict"; - function UnpublishController($scope, localizationService) { + function UnpublishController($scope, localizationService, contentEditingHelper) { var vm = this; var autoSelectedVariants = []; @@ -23,7 +23,7 @@ _.each(vm.variants, function (variant) { - variant.compositeId = (variant.language ? variant.language.culture : "invariant") + "_" + (variant.segment ? variant.segment : ""); + variant.compositeId = contentEditingHelper.buildCompositeVariantId(variant); variant.htmlId = "_content_variant_" + variant.compositeId; }); @@ -57,7 +57,7 @@ }); $scope.model.disableSubmitButton = !firstSelected; //disable submit button if there is none selected - // if a mandatory variant is selected we want to selet all other variants + // if a mandatory variant is selected we want to select all other variants // and disable selection for the others if(selectedVariant.save && selectedVariant.language.isMandatory) {