Combined Validation Rules
Stack multiple validation rules: extensions, MIME, size, duplicates, dimensions, and a custom rule.
(function() {
var logEl = document.getElementById('log');
function log(m) { var d = document.createElement('div'); d.className='pkg-log-entry'; d.textContent=m; logEl.appendChild(d); logEl.scrollTop=logEl.scrollHeight; }
new MultipleUpload('#demo', {
uploadUrl: '/api/upload',
multiple: true,
allowedExtensions: '.jpg,.png,.pdf',
allowedMimeTypes: 'image/*,application/pdf',
validateMimeByMagic: true,
maxFileSize: '5MB',
minFileSize: '1KB',
maxFiles: 5,
preventDuplicates: true,
maxImageWidth: 5000,
maxImageHeight: 5000,
customValidation: function(file) {
if (/\s/.test(file.name)) return 'No spaces in file names.';
return null;
},
onValidationError: function(msg, name) { log((name||'file') + ': ' + msg); },
onTaskComplete: function(task) { log(task.fileName + ' uploaded'); }
});
})();