@massimo-cassandro/js-file-uploader
Version:
HTML5 Async File Uploader
35 lines (27 loc) • 1.03 kB
JavaScript
// check for required file-uploaders
function checkRequiredUploader (options) {
const default_options = {
alert_api: message => { window.alert(message); },
message: 'È necessario caricare le immagini obbligatorie',
fupl_selector: '.file-uploader2'
};
options = Object.assign({}, default_options, options);
document.querySelectorAll(options.fupl_selector).forEach(item => {
item.closest('form')?.addEventListener('submit', e => {
let failed_req_uploaders = e.target.querySelectorAll(
'.fupl-wrapper:not([disabled])[data-required="true"][data-has-values="false"]'
);
if(failed_req_uploaders.length) {
options.alert_api(options.message);
e.target.querySelectorAll('[type="submit"]').forEach(btn => {
btn.disabled = false;
});
e.stopImmediatePropagation();
e.preventDefault();
return false;
}
}, false);
});
}
export { checkRequiredUploader as default };
//# sourceMappingURL=check-required-uploader.esm.js.map