浏览代码

AMBARI-3916. When trying to duplicate Default Group js error occures. (onechiporenko)

Oleg Nechiporenko 11 年之前
父节点
当前提交
e8594a9cb6

+ 3 - 0
ambari-web/app/controllers/main/service/manage_config_groups_controller.js

@@ -462,6 +462,9 @@ App.ManageConfigGroupsController = Em.Controller.extend({
    * duplicate config group
    */
   duplicateConfigGroup: function() {
+    if(this.get('selectedConfigGroup.name') == "Default") {
+      return;
+    }
     this.addConfigGroup(true);
     this.get('addGroupPopup').set('header',Em.I18n.t('services.service.config_groups.duplicate_config_group_popup.header'));
     this.get('addGroupPopup').set('configGroupName', this.get('selectedConfigGroup.name') + ' Copy');

+ 1 - 1
ambari-web/app/templates/main/service/manage_configuration_groups_popup.hbs

@@ -42,7 +42,7 @@
               <li {{bindAttr class="view.isRenameButtonDisabled:disabled"}}>
                 <a  rel="button-info-dropdown" {{bindAttr data-original-title="view.renameButtonTooltip"}} {{action renameConfigGroup target="controller"}}>{{t services.service.config_groups_popup.rename}}</a>
               </li>
-              <li>
+              <li {{bindAttr class="view.isDuplicateButtonDisabled:disabled"}}>
                 <a  rel="button-info-dropdown" {{bindAttr data-original-title="view.duplicateButtonTooltip"}} {{action duplicateConfigGroup target="controller"}}>{{t services.service.config_groups_popup.duplicate}}</a>
               </li>
             </ul>

+ 4 - 0
ambari-web/app/views/main/service/manage_config_groups_view.js

@@ -28,15 +28,19 @@ App.MainServiceManageConfigGroupView = Em.View.extend({
 
   isRenameButtonDisabled: true,
 
+  isDuplicateButtonDisabled: true,
+
   //Disable actions remove and rename for Default config group
   buttonObserver: function () {
     var selectedConfigGroup = this.get('controller.selectedConfigGroup');
     if(selectedConfigGroup.isDefault){
       this.set('isRemoveButtonDisabled', true);
       this.set('isRenameButtonDisabled', true);
+      this.set('isDuplicateButtonDisabled', true);
     }else{
       this.set('isRemoveButtonDisabled', false);
       this.set('isRenameButtonDisabled', false);
+      this.set('isDuplicateButtonDisabled', false);
     }
   }.observes('controller.selectedConfigGroup', 'controller.isHostsModified'),