cherryext/orun/extjs/static/extjs-upload-widget/lib/upload/uploader/AbstractXhrUploader.js

44 lines
1.2 KiB
JavaScript

/**
* Abstract uploader with features common for all XHR based uploaders.
*/
Ext.define('Ext.ux.upload.uploader.AbstractXhrUploader', {
extend : 'Ext.ux.upload.uploader.AbstractUploader',
onUploadSuccess : function(response, options, item) {
var info = {
success : true,
message : '',
response : response
};
if (response.responseText) {
var responseJson = Ext.decode(response.responseText);
if (responseJson) {
Ext.apply(info, {
success : responseJson.success,
message : responseJson.message
});
var eventName = info.success ? 'uploadsuccess' : 'uploadfailure';
this.fireEvent(eventName, item, info);
return;
}
}
this.fireEvent('uploadsuccess', item, info);
},
onUploadFailure : function(response, options, item) {
var info = {
success : false,
message : 'http error',
response : response
};
this.fireEvent('uploadfailure', item, info);
},
onUploadProgress : function(event, item) {
this.fireEvent('uploadprogress', item, event);
}
});