/** * CodeDropz Uploader v2.11.3 * Copyright 2019 Glen Mongaya * CodeDropz - Drag & Drop Uploader * @version 2.11.3 * @author CodeDropz, Glen Don L. Mongaya * @license The MIT License (MIT) */ !function(e){var a=[],r=[];e.fn.CodeDropz_Uploader=function(s){let n=document.querySelector("form.wpcf7-form");if(n){let o=new FormData;o.append("action","wpcf7_upload_pro_nonce"),o.append("nonce",dnd_cf7_uploader.nonce),fetch(dnd_cf7_uploader.ajax_url,{method:"POST",body:o}).then(e=>e.json()).then(({data:e,success:a})=>a&&(dnd_cf7_uploader.nonce=e)).catch(console.error)}this.each(function(){var n=e(this),o=e.extend({handler:n,color:"#000",background:"",upload_dir:n.parents("form").find("[name='upload_dir']"),server_max_error:"Uploaded file exceeds the maximum upload size of your server.",max_file:n.data("max")?n.data("max"):5,max_upload_size:n.data("limit")?n.data("limit"):"10485760",supported_type:n.data("type")?n.data("type"):"jpg|jpeg|JPG|png|gif|pdf|doc|docx|ppt|pptx|odt|avi|ogg|m4a|mov|mp3|mp4|mpg|wav|wmv|xls",max_total_size:"100MB",parallel_uploads:2,chunks:!1,chunk_size:1e4,text:"Drag & Drop Files Here",separator:"or",button_text:"Browse Files",err_message:{maxNumFiles:"You have reached the maximum number of files ( Only %s files allowed )",maxUploadLimit:"Note : Some of the files could not be uploaded ( Only %s files allowed )",maxTotalSize:"The total file(s) size exceeding the max size limit of %s."},on_success:"",in_progress:"",completed:""},s),t={parallelUploads:o.parallel_uploads,chunking:o.chunks,chunkSize:o.chunk_size,progress__id:"codedropz--results"},i=1048576*parseInt(o.max_total_size.replace("[^0-9]/g","")),d=n.attr("data-name"),l='
<'+dnd_cf7_uploader.heading_tag+">"+o.text+""+o.separator+'
0 '+dnd_cf7_uploader.dnd_text_counter+" "+parseInt(o.max_file)+"
";o.handler.wrapAll('
');var p=o.handler.parents("form"),u=o.handler.parents(".codedropz-upload-wrapper");o.handler.after(l),"column"==dnd_cf7_uploader.preview_layout&&!e(".codedropz--preview",u).length>0&&u.append('
');var c={init:function(){var s=this;r[d=this.getFieldName(d)]=[],a[d]={total:0,uploaded:0,uploading:!0,maxTotalSize:0,maxSize:o.max_upload_size,maxFile:o.max_file},e(".codedropz-upload-handler",u).on("drag dragstart dragend dragover dragenter dragleave drop",function(e){e.preventDefault(),e.stopPropagation()}),e(".codedropz-upload-handler",u).on("dragover dragenter",function(a){e(this).addClass("codedropz-dragover")}),e(".codedropz-upload-handler",u).on("dragleave dragend drop",function(a){e(this).removeClass("codedropz-dragover")}),this.getUploadFiles(),e("body").on("click","a.remove-file",function(a){e(this).hasClass("deleting")||s.deleteFiles(e(this).data("index"),e(this),e(this).data("name"))}),/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)&&n.removeAttr("accept")},previewThumbnail:function(a){if(a.file){if(-1===e.inArray(a.file.type,["image/png","image/jpg","image/jpeg","image/gif","image/tiff","image/xheic"]))return!1;var r=new FileReader;r.onload=function(r){e("#"+a.progressbar).find(".dnd-upload-image").addClass("has-bg").append('')},r.readAsDataURL(a.file)}},getFieldName:function(e){return e.replace(/[^a-zA-Z0-9_-]/g,"")},deleteFiles:function(a,s,n){var t,i=r[n],d=this;s.addClass("deleting").text(dnd_cf7_uploader.delete_text);for(var l=0;l0?(r.deleted=!0,a[n].total--,a[n].maxTotalSize=a[n].maxTotalSize-r.size,r.complete&&a[n].uploaded>0&&a[n].uploaded--,progressBar.remove(),this.resetQueue(n)):console.log("Progress Bar not exists!"),a[n].uploadedi&&(u=t,this.validateFiles.setError(o.err_message.maxTotalSize,!1,o.max_total_size)),e(".dnd-upload-counter span",e('input[data-name="'+n+'"]').parents(".codedropz-upload-wrapper")).text(a[n].total))},getUploadFiles:function(){var a=this;e(".codedropz-upload-handler",u).on("drop",function(e){a.handleFiles(e.originalEvent.dataTransfer.files)}),e("a.cd-upload-btn",u).on("click",function(e){e.preventDefault(),o.handler.val(null),o.handler.click()}),o.handler.on("change",function(e){a.handleFiles(this.files)})},handleFiles:function(s){var n=s.length,t=[];if(a[d].maxFile){var l=a[d].maxFile-a[d].uploaded;l>=0&&s.length>l&&(n=l),0==a[d].uploaded&&a[d].total>0&&(n=a[d].maxFile-a[d].total)}if(e("span.has-error-msg",u).remove(),a[d].total>=a[d].maxFile)return this.validateFiles.setError(o.err_message.maxNumFiles,!0,o.max_file);if(n>0)for(var p=0;p0&&this.validateFiles.setError(o.err_message.maxUploadLimit,!1,o.max_file),a[d].total++,a[d].maxTotalSize+=t.size,t.progressbar=this.progressBar.make(t),!1===this.validateFiles.check(t,d)&&(t.error=!0),a[d].maxTotalSize>i&&(this.validateFiles.setError(o.err_message.maxTotalSize,!0,o.max_total_size),t.pause=!0),r[d].push(t));a[d].uploading=!0,this.processQueue(r[d],d)},validateFiles:{setError:function(a,r,s){if(e("span.has-error-msg",u).remove(),e("."+t.progress__id,u).after(''+a.replace("%s",s)+""),r)return!1},check:function(r,s){if(!r)return!0;if(r.progressbar){var n=e("#"+r.progressbar).find(".dnd-upload-details");if(e("#"+r.progressbar).find(".has-error").remove(),r.size>a[s].maxSize&&!t.chunking)return n.append(''+dnd_cf7_uploader.drag_n_drop_upload.large_file+""),!1;if(0===r.size)return n.append('File is empty. Please upload something more substantial.'),!1;if(!(regex_type=RegExp("(.*?).("+o.supported_type+")$")).test(r.name.toLowerCase()))return n.append(''+dnd_cf7_uploader.drag_n_drop_upload.invalid_type+""),!1}return r},checkValidName:function(e){return!!RegExp(/[{>="'<:;/\}]+/g).test(e)&&encodeURIComponent(e.replace(/[{>="'<:;/\} ]/g,"_"))}},resetQueue:function(e){var s=[];if(a[e].uploading=!0,r[e].length>0)for(var n in r[e])!0==!r[e][n].deleted&&s.push(r[e][n]),!0==r[e][n].pause&&a[e].maxTotalSize0&&(r[e]=s),this.processQueue(r[e],e),console.log(r[e]),console.log(a[e]),console.log(c.bytesToSize(a[e].maxTotalSize)+" of "+o.max_total_size)},processQueue:function(s,n){var i=0,d=[];if(a[n].uploading){for(var l in s)!1==s[l].complete&&!1==s[l].error&&!1==s[l].pause&&d.push(s[l]);e.isFunction(o.in_progress)&&o.in_progress.call(this,p,d,r[n]);for(var l=0;l=t.parallelUploads))return;0==i&&(a[n].uploading=!1,e.isFunction(o.completed)&&o.completed.call(this,p,a[n],r[n]))}},progressBar:{make:function(a){var r="dnd-file-"+Math.random().toString(36).substr(2,9),s=!1;!0==dnd_cf7_uploader.image_preview&&(s=c.previewThumbnail(a));var n='
'+(!1===s?'':"")+'
'+decodeURIComponent(a.name)+" ("+c.bytesToSize(a.size)+')
';return!e("."+t.progress__id,u).length>0&&u.append('
'),e("."+t.progress__id,u).append('
'+n+"
"),r},setProgress:function(a,r){var s=e(".dnd-progress-bar",e("#"+a));return s.length>0&&(progress_width=r*s.width()/100,e("span",s).addClass("in-progress").animate({width:progress_width},10).text(r+"% "),100==r&&(e("span",s).addClass("complete").removeClass("in-progress"),e("#"+a).removeClass("_uploading"))),!1}},uploadFile:function(r,s,i){var d=this,l=new FormData,u=1024*t.chunkSize;l.append("supported_type",o.supported_type),l.append("size_limit",o.max_upload_size),l.append("action","dnd_codedropz_upload"),l.append("upload_dir",o.upload_dir.val()),l.append("post_id",p.find("[name='_wpcf7_container_post']").val()),l.append("security",dnd_cf7_uploader.nonce),l.append("form_id",n.data("id")),l.append("upload_name",n.data("name")),(newName=this.validateFiles.checkValidName(s.file.name))&&l.append("orig-name",decodeURIComponent(newName)),t.chunking&&s.size>u?(s.queued=!0,s.chunkSize=u,s.totalChunks=Math.ceil(s.size/s.chunkSize),s.currentChunk=0,this.uploadChunks(r,s,i)):(s.queued=!0,l.append("upload-file",s.file),s.transfer=e.ajax({url:o.ajax_url,type:p.attr("method"),data:l,dataType:"json",cache:!1,contentType:!1,processData:!1,xhr:function(){var e=new window.XMLHttpRequest;return e.upload.onprogress=function(e){if(e.lengthComputable){var a=parseInt(e.loaded/e.total*100);d.progressBar.setProgress(s.progressbar,a-1)}},e},success:function(n){n.success?(d.progressBar.setProgress(s.progressbar,100),s.complete=!0,a[i].uploaded++,d.processQueue(r,i),e.isFunction(o.on_success)&&o.on_success.call(this,s.progressbar,n,i,a[i])):(e("#"+s.progressbar).find(".dnd-upload-details").append(''+n.data+""),s.error=!0,d.processQueue(r,i))},error:function(a,n,o){e("#"+s.progressbar).find(".dnd-upload-details").append(''+o+""),s.error=!0,d.processQueue(r,i)}}))},uploadChunks:function(r,s,t){var i=s.chunkSize*s.currentChunk,d=i+s.chunkSize,l=this;d>s.size&&(d=s.size);var u=this.sliceFile(s.file,i,d),c=new FormData;c.append("security",dnd_cf7_uploader.nonce),c.append("start",i),c.append("end",d),c.append("total_chunks",s.totalChunks),c.append("chunk_size",s.chunkSize),c.append("upload_dir",o.upload_dir.val()),c.append("chunk",s.currentChunk),c.append("chunks-file",u,s.file.name),c.append("unique",s.progressbar),c.append("post_id",p.find("[name='_wpcf7_container_post']").val()),c.append("action","dnd_codedropz_upload_chunks"),c.append("form_id",n.data("id")),c.append("upload_name",n.data("name")),s.chunkTransfer=e.ajax({url:o.ajax_url,type:p.attr("method"),dataType:"json",data:c,type:"POST",contentType:!1,processData:!1,cache:!1,success:function(n,i,d){n&&void 0!==n&&(s.currentChunk++,n.data.partial_chunks&&s.currentChunk'+n.data+""),s.error=!0,l.processQueue(r,t)))},error:function(a,n,o){e("#"+s.progressbar).find(".dnd-upload-details").append(''+o+""),s.error=!0,l.processQueue(r,t)},xhr:function(){var e=new window.XMLHttpRequest;return e.upload.onprogress=function(e){if(e.lengthComputable){var a=e.loaded/e.total,r=Math.ceil(1/s.totalChunks*99),n=s.currentChunk/s.totalChunks*99,o=0==s.currentChunk?r*a:r*a+n;l.progressBar.setProgress(s.progressbar,parseInt(o))}},e}})},sliceFile:function(e,a,r){return(e.mozSlice?e.mozSlice:e.webkitSlice?e.webkitSlice:e.slice?e.slice:{}).bind(e)(a,r)},bytesToSize:function(e){return 0===e?"0":fileSize=(kBytes=e/1024)>=1024?(kBytes/1024).toFixed(2)+"MB":kBytes.toFixed(2)+"KB"}};c.init();var m=["wpcf7mailsent","wpcf7spam","wpcf7mailfailed"];for(var h in m)document.addEventListener(m[h],function(e){r[name=c.getFieldName(d)]=[],a[name]={total:0,uploaded:0,uploading:!0,maxTotalSize:0,maxSize:o.max_upload_size,maxFile:o.max_file}},!1)})}}(jQuery); jQuery(document).ready(function($){window.initDragDrop=function(file_name){var TextOJB=dnd_cf7_uploader.drag_n_drop_upload;var dnd_options={'color':'#fff','ajax_url':dnd_cf7_uploader.ajax_url,'text':TextOJB.text,'separator':TextOJB.or_separator,'button_text':TextOJB.browse,'server_max_error':TextOJB.server_max_error,'parallel_uploads':dnd_cf7_uploader.parallel_uploads,'chunks':dnd_cf7_uploader.chunks,'chunk_size':dnd_cf7_uploader.chunk_size,'max_total_size':dnd_cf7_uploader.max_total_size,'err_message':{'maxNumFiles':dnd_cf7_uploader.err_message.maxNumFiles,'maxTotalSize':dnd_cf7_uploader.err_message.maxTotalSize,'maxUploadLimit':dnd_cf7_uploader.err_message.maxUploadLimit},'in_progress':function(form_handler,queue,data){var submitBtn=$('input[type="submit"]',form_handler);if(submitBtn.length>0){submitBtn.addClass('disable').prop("disabled",!0)} dndmfu_cf7_event(form_handler,'in_progress',data)},'on_success':function(progressBar,response,fieldName,Record){var progressDetails=$('#'+progressBar),parentWrap=progressDetails.parents('.codedropz-upload-wrapper');if(dnd_cf7_uploader.preview_layout=='column'){if(!response.data.is_image||response.data.preview===!1){$('.dnd-upload-image',progressDetails).addClass('has-icon has-bg')} $('.codedropz--preview',parentWrap).append(progressDetails);progressDetails.find('.dnd-upload-image').fadeIn()} if(typeof response.data.preview!=="boolean"){$('.dnd-icon-blank-file',progressDetails).css('background-image','url('+response.data.preview+')')} $('.dnd-upload-details',progressDetails).append('');$('.dnd-upload-counter span',parentWrap).text(Record.uploaded);dndmfu_cf7_event(progressDetails,'success',response)},'completed':function(form_handler,fileData,data){var $span=$('.wpcf7-acceptance',form_handler);var $input=$('input:checkbox',$span);var $max_total_size=(dnd_options.max_total_size?dnd_options.max_total_size:'100MB');var $totalSizeLimit=parseInt($max_total_size.replace('[^0-9]/g',''));if($('.in-progress',form_handler).length===0){if($span.hasClass('optional')||$input.is(':checked')||$span.length==0||form_handler.hasClass('wpcf7-acceptance-as-validation')){if(fileData.maxTotalSize<($totalSizeLimit*1048576)){$('input[type="submit"]',form_handler).removeAttr('disabled')}} dndmfu_cf7_event(form_handler,'completed',data)}}};if(file_name){$('input[data-name="'+file_name+'"]').CodeDropz_Uploader(dnd_options)}else{$('.wpcf7-drag-n-drop-file').CodeDropz_Uploader(dnd_options)}} window.initDragDrop();if($('.wpcf7cf_repeater').length>0){$('form').on('click.wpcf7cf',function(e){if($(e.target).attr('class')!='wpcf7cf_add'){return} var $repeater_count=$('input[name="'+$('.wpcf7cf_repeater').data('id')+'_count"]').val();var $sub=$('.wpcf7cf_repeater_sub:last');var $file_upload=$('.wpcf7-drag-n-drop-file',$sub);var $uploader_name=$($file_upload,$sub).attr('data-name')+'__'+parseInt($repeater_count);$file_upload.attr('data-name',$uploader_name);window.initDragDrop($uploader_name)})} if($('.cf7-repeater').length>0){$('.cf7-button-repeater a').on('click',function(){var firstUploader=$('.wpcf7-drag-n-drop-file').first();var lastField=$('.cf7-repeater-filed:last');var fileUploader=$('.wpcf7-drag-n-drop-file',lastField);var dataNames=$('.cf7-remove-repeater',lastField).attr('data-name').split(',');const currentIndex=dataNames[0].split('-').splice(-1);var uploaderName=fileUploader.attr('data-name-'+currentIndex[0]);fileUploader.unwrap();fileUploader.attr('data-name',uploaderName);fileUploader.removeAttr('data-name-'+currentIndex[0]);$('.codedropz-upload-handler',lastField).remove();$('.codedropz--results',lastField).remove();window.initDragDrop(uploaderName);firstUploader.val('')})} var dndmfu_cf7_event=function(target,name,data){var event=new CustomEvent('dndmfu_cf7_'+name,{bubbles:!0,detail:data});$(target).get(0).dispatchEvent(event)} document.addEventListener('wpcf7mailsent',function(event){var inputFile=$('.wpcf7-drag-n-drop-file');if(event.detail.apiResponse){var api_Response=event.detail.apiResponse;if(typeof api_Response.drag_n_drop.upload_dir!=='undefined'){$(api_Response.into).find("input[name='upload_dir']").val(api_Response.drag_n_drop.upload_dir)} if(typeof api_Response.drag_n_drop.generate_name!=='undefined'){$(api_Response.into).find("input[name='generate_name']").val(api_Response.drag_n_drop.generate_name)}} $('.dnd-upload-status',inputFile.parents('form')).remove();$('span.has-error-msg').remove();dndmfu_cf7_reset_progress()});document.addEventListener('wpcf7spam',function(event){if(dnd_cf7_uploader.delete_files_on_failed==1){$('.dnd-upload-status').remove();dndmfu_cf7_reset_progress()}});document.addEventListener('wpcf7mailfailed',function(event){if(dnd_cf7_uploader.delete_files_on_failed==1){$('.dnd-upload-status').remove();dndmfu_cf7_reset_progress()}});if(dnd_cf7_uploader.disable_btn_submission){$('form.wpcf7-form input.wpcf7-submit').click(function(){var $this=$(this);setTimeout(function(){if($('form.wpcf7-form').hasClass('submitting')){$this.prop("disabled",!0)}},50)});document.addEventListener('wpcf7submit',function(event){$('form.wpcf7-form input.wpcf7-submit').prop('disabled',!1)},!1)} var Dnd__ExcludeInputFile={files:$('input.wpcf7-drag-n-drop-file'),init:function(){const self=this;$('form.wpcf7-form input.wpcf7-submit').click(function(){self.action('delete_name')});document.addEventListener('wpcf7submit',function(event){self.action('add_name')},!1)},action:function(a){for(var i=0;i