Browse Source

AMBARI-14448 Not created config groups appear (akovalenko)

Aleksandr Kovalenko 9 years ago
parent
commit
094eb25bff

+ 10 - 13
ambari-web/app/controllers/main/service/manage_config_groups_controller.js

@@ -681,6 +681,14 @@ App.ManageConfigGroupsController = Em.Controller.extend(App.ConfigOverridable, {
           groupName = this.get('configGroupName').trim(),
           newGroupId = App.ServiceConfigGroup.groupId(serviceName, groupName);
 
+        if (duplicated) {
+          self.get('selectedConfigGroup.properties').forEach(function (item) {
+            var property = App.ServiceConfigProperty.create($.extend(false, {}, item));
+            property.set('group', App.ServiceConfigGroup.find(newGroupId));
+            properties.push(property);
+          });
+        }
+
         App.store.load(App.ServiceConfigGroup, {
           id: newGroupId,
           name: this.get('configGroupName').trim(),
@@ -690,25 +698,14 @@ App.ManageConfigGroupsController = Em.Controller.extend(App.ConfigOverridable, {
           service_id: serviceName,
           service_name: serviceName,
           hosts: [],
-          desiredConfigs: [],
-          properties: []
+          desired_configs: duplicated ? self.get('selectedConfigGroup.desiredConfigs') : [],
+          properties: duplicated ? properties : []
         });
         App.store.commit();
         var childConfigGroups = defaultConfigGroup.get('childConfigGroups').mapProperty('id');
         childConfigGroups.push(newGroupId);
         App.store.load(App.ServiceConfigGroup, App.configGroupsMapper.generateDefaultGroup(self.get('serviceName'), defaultConfigGroup.get('hosts'), childConfigGroups));
         App.store.commit();
-        if (duplicated) {
-          self.get('selectedConfigGroup.properties').forEach(function (item) {
-            var property = App.ServiceConfigProperty.create($.extend(false, {}, item));
-            property.set('group', App.ServiceConfigGroup.find(newGroupId));
-            properties.push(property);
-          });
-          App.ServiceConfigGroup.find(newGroupId).setProperties({
-            'properties': properties,
-            'desiredConfigs': self.get('selectedConfigGroup.desiredConfigs')
-          });
-        }
         self.get('configGroups').pushObject(App.ServiceConfigGroup.find(newGroupId));
         this.hide();
       }

+ 2 - 2
ambari-web/app/mixins/main/service/configs/config_overridable.js

@@ -226,8 +226,8 @@ App.ConfigOverridable = Em.Mixin.create({
    */
   postNewConfigurationGroup: function (newConfigGroupData, callback) {
     var properties = {};
-    newConfigGroupData.properties.forEach(function (propertiy) {
-      properties[propertiy.get('name')] = propertiy.get('value');
+    newConfigGroupData.properties.forEach(function (property) {
+      properties[property.get('name')] = property.get('value');
     });
     var newGroupData = {
       "ConfigGroup": {