uploader
by el_chief
HTML
<script src="//extjs.cachefly.net/ext-4.1.0-gpl/ext-all-dev.js"></script>
<script src="//s3-us-west-1.amazonaws.com/statictrafficdriven1/js/plupload/1.5.4/plupload.full.js"></script>
<link rel="stylesheet" href="//extjs.cachefly.net/ext-4.1.0-gpl/resources/css/ext-all-gray-debug.css" />
CSS
.failed{
color: #C00;
font-weight:bold;
}
JavaScript
Ext.define('UploadView', {
extend: 'Ext.container.Container',
config: {
url: '',
filters: [],
resize: null,
runtimes: 'html5,gears,flash,silverlight,browserplus,html4'
},
initComponent: function() {
var me = this;
Ext.applyIf(this, {
items: [
{
xtype: 'dataview',
url: me.getUrl(),
filters: me.getFilters(),
resize: me.getResize(),
runtimes: me.getRuntimes(),
listeners: {
itemclick: function(view, record, item, index, e) {
var file = view.uploader.getFile(record.getId());
if (e.target.className == 'cancel') {
view.uploader.removeFile(file);
} else if (e.target.className == 'retry') {
file.status = 1;
record.set({
status: 1,
percent: 0
});
view.uploader.start();
}
},
destroy: function(component) {
component.uploader.destroy();
},
render: function(component) {
component.uploader = new plupload.Uploader({
runtimes: component.runtimes,
browse_button: component.up('container').down('filefield').getId(),
drop_element: Ext.getBody().id,
unique_names: true,
url: component.url,
file_data_name: 'file',
max_file_size: '25mb',
chunk_size: '1mb',
flash_swf_url:...