From f903c42d1b86ae326657373016a1c90deecf0127 Mon Sep 17 00:00:00 2001 From: Shannon Date: Thu, 12 Apr 2018 21:56:49 +1000 Subject: [PATCH] Gets the tree reloading when the customtreeparams change too so now the language selection will auto trigger the tree to reload ... next task we'll make it re-sycn and work. --- .../directives/components/tree/umbtree.directive.js | 6 +++--- .../overlays/treepicker/treepicker.controller.js | 11 ++++++++++- .../contentpicker/contentpicker.controller.js | 4 +++- 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/components/tree/umbtree.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/components/tree/umbtree.directive.js index cce4e0d792..335d27d5c4 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/components/tree/umbtree.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/components/tree/umbtree.directive.js @@ -420,8 +420,8 @@ function umbTreeDirective($compile, $log, $q, $rootScope, treeService, notificat emitEvent("treeNodeAltSelect", { element: elem, tree: scope.tree, node: n, event: ev }); }; - //watch for section changes - scope.$watch("section", function (newVal, oldVal) { + //watch for section changes and customtreeparams changes + scope.$watchCollection("[section, customtreeparams]", function (newVal, oldVal) { if (!scope.tree) { loadTree(); @@ -440,7 +440,7 @@ function umbTreeDirective($compile, $log, $q, $rootScope, treeService, notificat //clear any active trees to reset lookups lastSection = newVal; } - }); + }); setupExternalEvents(); loadTree(); diff --git a/src/Umbraco.Web.UI.Client/src/views/common/overlays/treepicker/treepicker.controller.js b/src/Umbraco.Web.UI.Client/src/views/common/overlays/treepicker/treepicker.controller.js index 8c14b422de..2faf4ebaa5 100644 --- a/src/Umbraco.Web.UI.Client/src/views/common/overlays/treepicker/treepicker.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/common/overlays/treepicker/treepicker.controller.js @@ -170,7 +170,16 @@ angular.module("umbraco").controller("Umbraco.Overlays.TreePickerController", queryParams["languageId"] = vm.selectedLanguage.id; } var queryString = $.param(queryParams); //create the query string from the params object - vm.customTreeParams = queryString + (queryString ? "&" : "") + ($scope.model.customTreeParams ? $scope.model.customTreeParams : ""); + + if (!queryString) { + vm.customTreeParams = $scope.model.customTreeParams; + } + else { + vm.customTreeParams = queryString; + if ($scope.model.customTreeParams) { + vm.customTreeParams += "&" + $scope.model.customTreeParams; + } + } vm.treeReady = true; } diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/contentpicker/contentpicker.controller.js b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/contentpicker/contentpicker.controller.js index 492cd44a7e..14e2d1bf23 100644 --- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/contentpicker/contentpicker.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/contentpicker/contentpicker.controller.js @@ -135,7 +135,9 @@ function contentPickerController($scope, entityResource, editorState, iconHelper }, treeAlias: $scope.model.config.startNode.type, section: $scope.model.config.startNode.type, - idType: "int" + idType: "int", + //only show the lang selector for content + showLanguageSelector: $scope.model.config.startNode.type === "content" }; //since most of the pre-value config's are used in the dialog options (i.e. maxNumber, minNumber, etc...) we'll merge the