diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/components/editor/umbeditorheader.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/components/editor/umbeditorheader.directive.js index 1e9c1376a6..5abdd78c9d 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/components/editor/umbeditorheader.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/components/editor/umbeditorheader.directive.js @@ -213,14 +213,11 @@ Use this directive to construct a header inside the main editor window. scope.vm.currentVariant = ""; function onInit() { - setVariantDraftState(scope.variants); - setCurrentVariant(scope.variants); setVariantStatusColor(scope.variants); } function setCurrentVariant(variants) { - setVariantDraftState(variants); angular.forEach(variants, function (variant) { if(variant.current) { @@ -249,14 +246,6 @@ Use this directive to construct a header inside the main editor window. }); } - function setVariantDraftState(variants) { - _.each(variants, function (variant) { - if (variant.isEdited === true && !variant.state.includes("Draft")) { - variant.state += ", Draft"; - } - }); - } - scope.goBack = function () { if (scope.onBack) { scope.onBack(); diff --git a/src/Umbraco.Web.UI.Client/src/views/common/overlays/publish/publish.controller.js b/src/Umbraco.Web.UI.Client/src/views/common/overlays/publish/publish.controller.js index 081a923d4e..4a490ee735 100644 --- a/src/Umbraco.Web.UI.Client/src/views/common/overlays/publish/publish.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/common/overlays/publish/publish.controller.js @@ -39,32 +39,36 @@ } function onInit() { + console.log(variants); _.each(variants, function (variant) { variant.compositeId = variant.language.id + "_" + (variant.segment ? variant.segment : ""); variant.htmlId = "publish_variant_" + variant.compositeId; - //append Draft state to variant - if (variant.isEdited === true && !variant.state.includes("Draft")) { - variant.state += ", Draft"; + //separate "pristine" and "dirty" variants + if (variant.isEdited === true) { vm.dirtyVariants.push(variant); - } else if (variant.isEdited === true) { + } else if (variant.isEdited === true || + variant.isEdited === false && variant.state === "Unpublished") { vm.dirtyVariants.push(variant); } else { vm.pristineVariants.push(variant); } }); + if (vm.dirtyVariants.length !== 0) { + //now sort it so that the current one is at the top + vm.dirtyVariants = _.sortBy(vm.dirtyVariants, function (v) { + return v.current ? 0 : 1; + }); + //ensure that the current one is selected + vm.dirtyVariants[0].publish = true; + } else { + //disable Publish button if we have nothing to publish + $scope.model.disableSubmitButton = true; + } + vm.loading = false; - - console.log("Dirty Variants", vm.dirtyVariants); - - //now sort it so that the current one is at the top - vm.dirtyVariants = _.sortBy(vm.dirtyVariants, function (v) { - return v.current ? 0 : 1; - }); - //ensure that the current one is selected - vm.dirtyVariants[0].publish = true; } } diff --git a/src/Umbraco.Web.UI.Client/src/views/common/overlays/publish/publish.html b/src/Umbraco.Web.UI.Client/src/views/common/overlays/publish/publish.html index f0d721ec04..aa97bf09d2 100644 --- a/src/Umbraco.Web.UI.Client/src/views/common/overlays/publish/publish.html +++ b/src/Umbraco.Web.UI.Client/src/views/common/overlays/publish/publish.html @@ -1,34 +1,57 @@ -
- +
+
-

What languages would you like to publish?

+

{{vm.dirtyVariants.length > 0 ? 'What languages would you like to publish?' : 'Nothing here to publish!'}}

-
+
+
+
+
+ + + +
+ +
+ +
+
+

Published languages.

+
+ +
+
+
{{ variant.language.name }}
+
{{ variant.state }}
+
+
diff --git a/src/Umbraco.Web.UI.Client/src/views/components/editor/umb-editor-header.html b/src/Umbraco.Web.UI.Client/src/views/components/editor/umb-editor-header.html index 41d44114a0..1b1eadab14 100644 --- a/src/Umbraco.Web.UI.Client/src/views/components/editor/umb-editor-header.html +++ b/src/Umbraco.Web.UI.Client/src/views/components/editor/umb-editor-header.html @@ -59,7 +59,9 @@ {{variant.language.name}} - {{variant.state}} + + + {{variant.state}}