|
@@ -35,6 +35,7 @@ App.MainServiceInfoConfigsController = Em.Controller.extend(App.ServerValidatorM
|
|
|
items: [],
|
|
|
supportsFinal: []
|
|
|
},
|
|
|
+ requestInProgress: null,
|
|
|
selectedServiceConfigTypes: [],
|
|
|
selectedServiceSupportsFinal: [],
|
|
|
configGroups: [],
|
|
@@ -191,10 +192,22 @@ App.MainServiceInfoConfigsController = Em.Controller.extend(App.ServerValidatorM
|
|
|
return (App.ServiceConfigVersion.find(this.get('content.serviceName') + "_" + version).get('groupId') == -1);
|
|
|
},
|
|
|
|
|
|
+ /**
|
|
|
+ * register request to view to track his progress
|
|
|
+ * @param request
|
|
|
+ */
|
|
|
+ trackRequest: function (request) {
|
|
|
+ this.set('requestInProgress', request);
|
|
|
+ },
|
|
|
+
|
|
|
/**
|
|
|
* clear and set properties to default value
|
|
|
*/
|
|
|
clearStep: function () {
|
|
|
+ if (this.get('requestInProgress') && this.get('requestInProgress').readyState !== 4) {
|
|
|
+ this.get('requestInProgress').abort();
|
|
|
+ this.set('requestInProgress', null);
|
|
|
+ }
|
|
|
this.set("isApplyingChanges", false);
|
|
|
this.set('modifiedFileNames', []);
|
|
|
this.set('isInit', true);
|
|
@@ -275,11 +288,12 @@ App.MainServiceInfoConfigsController = Em.Controller.extend(App.ServerValidatorM
|
|
|
self.set('configTypesInfo', App.config.getConfigTypesInfoFromService(stackService));
|
|
|
}
|
|
|
|
|
|
- App.config.loadAdvancedConfig(serviceName, function (properties) {
|
|
|
+ this.trackRequest(App.config.loadAdvancedConfig(serviceName, function (properties, xhr) {
|
|
|
+ if (xhr.statusText === 'abort') return;
|
|
|
advancedConfigs.pushObjects(properties);
|
|
|
self.set('advancedConfigs', advancedConfigs);
|
|
|
- self.loadServiceConfigVersions();
|
|
|
- });
|
|
|
+ self.trackRequest(self.loadServiceConfigVersions());
|
|
|
+ }));
|
|
|
},
|
|
|
|
|
|
/**
|
|
@@ -314,6 +328,17 @@ App.MainServiceInfoConfigsController = Em.Controller.extend(App.ServerValidatorM
|
|
|
}
|
|
|
},
|
|
|
|
|
|
+ /**
|
|
|
+ * error callback of loadServiceConfigVersions()
|
|
|
+ * override defaultCallback
|
|
|
+ * @param request
|
|
|
+ * @param ajaxOptions
|
|
|
+ * @param error
|
|
|
+ * @param opt
|
|
|
+ * @param params
|
|
|
+ */
|
|
|
+ loadServiceConfigVersionsError: Em.K,
|
|
|
+
|
|
|
/**
|
|
|
* get selected service config version
|
|
|
* In case selected version is undefined then take currentDefaultVersion
|
|
@@ -332,7 +357,7 @@ App.MainServiceInfoConfigsController = Em.Controller.extend(App.ServerValidatorM
|
|
|
this.set('selectedConfigGroup', switchToGroup);
|
|
|
}
|
|
|
|
|
|
- App.ajax.send({
|
|
|
+ this.trackRequest(App.ajax.send({
|
|
|
name: 'service.serviceConfigVersions.get.multiple',
|
|
|
sender: this,
|
|
|
data: {
|
|
@@ -340,13 +365,14 @@ App.MainServiceInfoConfigsController = Em.Controller.extend(App.ServerValidatorM
|
|
|
serviceConfigVersions: versions
|
|
|
},
|
|
|
success: 'loadSelectedVersionSuccess'
|
|
|
- }).complete(function () {
|
|
|
+ }).complete(function (xhr) {
|
|
|
+ if (xhr.statusText === 'abort') return;
|
|
|
if (self.get('dataIsLoaded')) {
|
|
|
self.onConfigGroupChange();
|
|
|
} else {
|
|
|
self.loadServiceTagsAndGroups();
|
|
|
}
|
|
|
- });
|
|
|
+ }));
|
|
|
},
|
|
|
|
|
|
/**
|
|
@@ -395,7 +421,7 @@ App.MainServiceInfoConfigsController = Em.Controller.extend(App.ServerValidatorM
|
|
|
* load config groups of service
|
|
|
*/
|
|
|
loadServiceTagsAndGroups: function () {
|
|
|
- App.ajax.send({
|
|
|
+ this.trackRequest(App.ajax.send({
|
|
|
name: 'config.tags_and_groups',
|
|
|
sender: this,
|
|
|
data: {
|
|
@@ -403,7 +429,7 @@ App.MainServiceInfoConfigsController = Em.Controller.extend(App.ServerValidatorM
|
|
|
urlParams: "&config_groups/ConfigGroup/tag=" + this.get('content.serviceName')
|
|
|
},
|
|
|
success: 'loadServiceConfigsSuccess'
|
|
|
- });
|
|
|
+ }));
|
|
|
},
|
|
|
|
|
|
loadServiceConfigsSuccess: function (data, opt, params) {
|