AMBARI-11190. Admin View: edit on cluster config'd view prompts for masked 
props on edit (alexantonenko)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/e205bd15
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/e205bd15
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/e205bd15

Branch: refs/heads/trunk
Commit: e205bd15d6c50bbcab00062a6d7157b51bff2b32
Parents: fcbde32
Author: Alex Antonenko <[email protected]>
Authored: Sat May 16 17:41:41 2015 +0300
Committer: Alex Antonenko <[email protected]>
Committed: Sat May 16 23:45:43 2015 +0300

----------------------------------------------------------------------
 .../controllers/ambariViews/ViewsEditCtrl.js    | 29 ++++++++++++++------
 .../admin-web/app/views/ambariViews/edit.html   | 10 +++++--
 2 files changed, 29 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/e205bd15/ambari-admin/src/main/resources/ui/admin-web/app/scripts/controllers/ambariViews/ViewsEditCtrl.js
----------------------------------------------------------------------
diff --git 
a/ambari-admin/src/main/resources/ui/admin-web/app/scripts/controllers/ambariViews/ViewsEditCtrl.js
 
b/ambari-admin/src/main/resources/ui/admin-web/app/scripts/controllers/ambariViews/ViewsEditCtrl.js
index d75d8b2..1362921 100644
--- 
a/ambari-admin/src/main/resources/ui/admin-web/app/scripts/controllers/ambariViews/ViewsEditCtrl.js
+++ 
b/ambari-admin/src/main/resources/ui/admin-web/app/scripts/controllers/ambariViews/ViewsEditCtrl.js
@@ -88,6 +88,17 @@ angular.module('ambariAdminConsole')
     }
   }
 
+  function filterClusterConfigs() {
+    $scope.configurationMeta.forEach(function (element) {
+      if (element.masked && !$scope.editConfigurationDisabled && 
element.clusterConfig && !$scope.isLocalCluster) {
+        $scope.configuration[element.name] = '';
+      }
+      if(!element.clusterConfig) {
+        delete $scope.configurationBeforeEdit[element.name];
+      }
+    });
+  }
+
   // Get META for properties
   View.getMeta($routeParams.viewId, $routeParams.version).then(function(data) {
     $scope.configurationMeta = data.data.ViewVersionInfo.parameters;
@@ -137,6 +148,15 @@ angular.module('ambariAdminConsole')
   $scope.numberOfClusterConfigs = 0;
   $scope.numberOfSettingsConfigs = 0;
 
+  $scope.enableLocalCluster = function() {
+    angular.extend($scope.configuration, $scope.configurationBeforeEdit);
+    $scope.propertiesForm.$setPristine();
+  };
+
+  $scope.disableLocalCluster = function() {
+    filterClusterConfigs();
+  };
+
   $scope.toggleSettingsEdit = function() {
     $scope.editSettingsDisabled = !$scope.editSettingsDisabled;
     $scope.settingsBeforeEdit = angular.copy($scope.configuration);
@@ -247,14 +267,7 @@ angular.module('ambariAdminConsole')
   $scope.togglePropertiesEditing = function () {
     $scope.editConfigurationDisabled = !$scope.editConfigurationDisabled;
     $scope.configurationBeforeEdit = angular.copy($scope.configuration);
-    $scope.configurationMeta.forEach(function (element) {
-      if (element.masked && !$scope.editConfigurationDisabled && 
element.clusterConfig) {
-        $scope.configuration[element.name] = '';
-      }
-      if(!element.clusterConfig) {
-        delete $scope.configurationBeforeEdit[element.name];
-      }
-    });
+    filterClusterConfigs();
   };
   $scope.saveConfiguration = function() {
     if( $scope.propertiesForm.$valid ){

http://git-wip-us.apache.org/repos/asf/ambari/blob/e205bd15/ambari-admin/src/main/resources/ui/admin-web/app/views/ambariViews/edit.html
----------------------------------------------------------------------
diff --git 
a/ambari-admin/src/main/resources/ui/admin-web/app/views/ambariViews/edit.html 
b/ambari-admin/src/main/resources/ui/admin-web/app/views/ambariViews/edit.html
index b0a7a3b..b41f639 100644
--- 
a/ambari-admin/src/main/resources/ui/admin-web/app/views/ambariViews/edit.html
+++ 
b/ambari-admin/src/main/resources/ui/admin-web/app/views/ambariViews/edit.html
@@ -182,7 +182,7 @@
   <div class="panel-body property-form" 
popover="{{clusterConfigurableErrorMsg}}" popover-trigger="mouseenter">
     <div class="checkbox">
       <label>
-        <input type="radio" ng-model="$parent.isLocalCluster" 
ng-disabled="!clusterConfigurable || editConfigurationDisabled || 
noClusterAvailible" ng-value="true" class="visibilityCheckbox"> Local Ambari 
Managed Cluster
+        <input type="radio" ng-model="$parent.isLocalCluster" 
ng-change="enableLocalCluster()" ng-disabled="!clusterConfigurable || 
editConfigurationDisabled || noClusterAvailible" ng-value="true" 
class="visibilityCheckbox"> Local Ambari Managed Cluster
       </label>
     </div>
     <div class="form-horizontal property-form">
@@ -198,7 +198,13 @@
     <p>&nbsp</p>
     <div class="checkbox">
       <label>
-        <input type="radio" ng-model="$parent.isLocalCluster" 
ng-disabled="editConfigurationDisabled" ng-value="false" 
class="visibilityCheckbox"> Custom
+        <input type="radio" 
+         ng-model="$parent.isLocalCluster"
+         ng-disabled="editConfigurationDisabled"
+         ng-value="false"
+         ng-change="disableLocalCluster()"
+         class="visibilityCheckbox">
+        Custom
       </label>
     </div>
   </div>

Reply via email to