+ handleResponse : function(response)
+ {
+ this.transId = false;
+ var options = response.argument.options;
+ response.argument = options ? options.argument : null;
+ this.fireEvent("requestcomplete", this, response, options);
+
+ if (this.mask && this.maskEl) {
+ Roo.get(this.maskEl).unmask(true);
+ }
+ var res = this.processResponse(response);
+
+ if (!res.success && !res.done) { // error!
+ if (options.failure) {
+ // failure is handled... - do not show error..
+ Roo.callback(options.failure, options.scope, [res, options]);
+ return;
+ }
+ Roo.MessageBox.hide(); // hide any existing messages..
+ Roo.MessageBox.alert("Error", res && res.errorMsg ? res.errorMsg : "Error Sending data");
+ return;
+ }
+ Roo.callback(options.success, options.scope, [res, options]);
+
+ },
+ handleFailure : function(response, e){
+ this.transId = false;
+ var options = response.argument.options;
+ response.argument = options ? options.argument : null;
+ this.fireEvent("requestexception", this, response, options, e);
+ var res = Roo.callback(options.failure, options.scope, [response, options]);
+ if (this.mask && this.maskEl) {
+ Roo.get(this.maskEl).unmask(true);
+ }
+ if(!this.showFailureDialog){
+ return;
+ }
+ if (res !== true) {
+ var decode = this.processResponse(response);
+ Roo.log(decode);
+
+ if (Roo.MessageBox.isVisible()) {
+ alert(decode && decode.errorMsg ? decode.errorMsg : "Error Sending data - return true from failure to remove message");
+ return;
+ }
+
+ Roo.MessageBox.alert("Error", decode && decode.errorMsg ? decode.errorMsg : "Error Sending data");
+
+ }
+ }
+});