You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
267 lines
7.7 KiB
267 lines
7.7 KiB
/* ------------------------------------------------------------------------------ |
|
* |
|
* # Plupload multiple file uploader |
|
* |
|
* Specific JS code additions for uploader_plupload.html page |
|
* |
|
* Version: 1.0 |
|
* Latest update: Aug 1, 2015 |
|
* |
|
* ---------------------------------------------------------------------------- */ |
|
|
|
$(function() { |
|
|
|
// Setup all runtimes |
|
$(".file-uploader").pluploadQueue({ |
|
runtimes: 'html5, html4, Flash, Silverlight', |
|
url: 'assets/demo_data/uploader/plupload.json', |
|
chunk_size: '300Kb', |
|
unique_names: true, |
|
filters: { |
|
max_file_size: '300Kb', |
|
mime_types: [{ |
|
title: "Image files", |
|
extensions: "jpg,gif,png" |
|
}] |
|
}, |
|
resize: { |
|
width: 320, |
|
height: 240, |
|
quality: 90 |
|
} |
|
}); |
|
|
|
|
|
// Setup flash version |
|
$(".flash-uploader").pluploadQueue({ |
|
|
|
// General settings |
|
runtimes: 'flash', |
|
url: 'assets/demo_data/uploader/plupload.json', |
|
chunk_size: '300Kb', |
|
unique_names: true, |
|
filters: { |
|
max_file_size: '300Kb', |
|
mime_types: [{ |
|
title: "Image files", |
|
extensions: "jpg,gif,png" |
|
}] |
|
}, |
|
|
|
// Resize images on clientside if we can |
|
resize: { |
|
width: 320, |
|
height: 240, |
|
quality: 90 |
|
}, |
|
|
|
// Flash settings |
|
flash_swf_url: 'assets/js/plugins/uploaders/plupload/files/Moxie.swf' |
|
}); |
|
|
|
|
|
// Setup html5 version |
|
$(".html5-uploader").pluploadQueue({ |
|
|
|
// General settings |
|
runtimes: 'html5', |
|
url: 'assets/demo_data/uploader/plupload.json', |
|
chunk_size: '300Kb', |
|
unique_names: true, |
|
filters: { |
|
max_file_size: '300Kb', |
|
mime_types: [{ |
|
title: "Image files", |
|
extensions: "jpg,gif,png" |
|
}] |
|
}, |
|
|
|
// Resize images on clientside if we can |
|
resize: { |
|
width: 320, |
|
height: 240, |
|
quality: 90 |
|
} |
|
}); |
|
|
|
|
|
// Setup html4 version |
|
$(".html4-uploader").pluploadQueue({ |
|
runtimes: 'html4', |
|
url: 'assets/demo_data/uploader/plupload.json', |
|
unique_names: true, |
|
filters: { |
|
max_file_size: '300Kb', |
|
mime_types: [{ |
|
title: "Image files", |
|
extensions: "jpg,gif,png" |
|
}] |
|
} |
|
}); |
|
|
|
|
|
// Events |
|
$(".uploader-events").pluploadQueue({ |
|
|
|
// General settings |
|
runtimes: 'html5,flash,silverlight,html4', |
|
url: 'assets/demo_data/uploader/plupload.json', |
|
chunk_size: '300Kb', |
|
unique_names: true, |
|
|
|
// Resize images on client-side if we can |
|
resize: { |
|
width: 320, |
|
height: 240, |
|
quality: 90 |
|
}, |
|
|
|
// Filters |
|
filters: { |
|
max_file_size: '300Kb', |
|
mime_types: [{ |
|
title: "Image files", |
|
extensions: "jpg,gif,png" |
|
}] |
|
}, |
|
|
|
// Flash settings |
|
flash_swf_url: '/plupload/js/Moxie.swf', |
|
|
|
// Silverlight settings |
|
silverlight_xap_url: '/plupload/js/Moxie.xap', |
|
|
|
// PreInit events, bound before any internal events |
|
preinit: { |
|
Init: function(up, info) { |
|
log('[Init]', 'Info:', info, 'Features:', up.features); |
|
}, |
|
UploadFile: function(up, file) { |
|
log('[UploadFile]', file); |
|
} |
|
}, |
|
|
|
// Post init events, bound after the internal events |
|
init: { |
|
Browse: function(up) { |
|
log('[Browse]'); // Called when file picker is clicked |
|
}, |
|
|
|
Refresh: function(up) { |
|
log('[Refresh]'); // Called when the position or dimensions of the picker change |
|
}, |
|
|
|
StateChanged: function(up) { |
|
log('[StateChanged]', up.state == plupload.STARTED ? "STARTED": "STOPPED"); // Called when the state of the queue is changed |
|
}, |
|
|
|
QueueChanged: function(up) { |
|
log('[QueueChanged]'); // Called when queue is changed by adding or removing files |
|
}, |
|
|
|
OptionChanged: function(up, name, value, oldValue) { |
|
log('[OptionChanged]', 'Option Name: ', name, 'Value: ', value, 'Old Value: ', oldValue); // Called when one of the configuration options is changed |
|
}, |
|
|
|
BeforeUpload: function(up, file) { |
|
log('[BeforeUpload]', 'File: ', file); // Called right before the upload for a given file starts, can be used to cancel it if required |
|
}, |
|
|
|
UploadProgress: function(up, file) { |
|
log('[UploadProgress]', 'File:', file, "Total:", up.total); // Called while file is being uploaded |
|
}, |
|
|
|
FileFiltered: function(up, file) { |
|
log('[FileFiltered]', 'File:', file); // Called when file successfully files all the filters |
|
}, |
|
|
|
FilesAdded: function(up, files) { |
|
log('[FilesAdded]'); // Called when files are added to queue |
|
|
|
plupload.each(files, function(file) { |
|
log(' File:', file); |
|
}); |
|
}, |
|
|
|
FilesRemoved: function(up, files) { |
|
log('[FilesRemoved]'); // Called when files are removed from queue |
|
|
|
plupload.each(files, function(file) { |
|
log(' File:', file); |
|
}); |
|
}, |
|
|
|
FileUploaded: function(up, file, info) { |
|
log('[FileUploaded] File:', file, "Info:", info); // Called when file has finished uploading |
|
}, |
|
|
|
ChunkUploaded: function(up, file, info) { |
|
log('[ChunkUploaded] File:', file, "Info:", info); // Called when file chunk has finished uploading |
|
}, |
|
|
|
UploadComplete: function(up, files) { |
|
log('[UploadComplete]'); // Called when all files are either uploaded or failed |
|
}, |
|
|
|
Destroy: function(up) { |
|
log('[Destroy] '); // Called when uploader is destroyed |
|
}, |
|
|
|
Error: function(up, args) { |
|
log('[Error] ', args); // Called when error occurs |
|
} |
|
} |
|
}); |
|
|
|
|
|
// Write log |
|
function log() { |
|
var str = ""; |
|
|
|
plupload.each(arguments, function(arg) { |
|
var row = ""; |
|
|
|
if (typeof(arg) != "string") { |
|
plupload.each(arg, function(value, key) { |
|
|
|
// Convert items in File objects to human readable form |
|
if (arg instanceof plupload.File) { |
|
|
|
// Convert status to human readable |
|
switch (value) { |
|
case plupload.QUEUED: |
|
value = 'QUEUED'; |
|
break; |
|
|
|
case plupload.UPLOADING: |
|
value = 'UPLOADING'; |
|
break; |
|
|
|
case plupload.FAILED: |
|
value = 'FAILED'; |
|
break; |
|
|
|
case plupload.DONE: |
|
value = 'DONE'; |
|
break; |
|
} |
|
} |
|
|
|
if (typeof(value) != "function") { |
|
row += (row ? ', ': '') + key + '=' + value; |
|
} |
|
}); |
|
|
|
str += row + " "; |
|
} |
|
else { |
|
str += arg + " "; |
|
} |
|
}); |
|
|
|
var log = $('#log'); |
|
log.append(str + "<br>"); |
|
log.scrollTop(log[0].scrollHeight); |
|
} |
|
|
|
});
|
|
|