var Asas=function(p){var r,z,q,w,u,y,o,s,t,v,A,x,B;r=function(){var c,a,b;z=p.pad||"";q=p.dataBits;w=p.codeBits;u=p.keyString;y=p.arrayData;a=Math.max(q,w);b=0;o=[];for(c=0;c=i){e-=i;f(b>>e);b&=o[e]}}if(!h&&e>0){f(b<<(i-e));while(c.length%s>0){c.push(z)}}return(y&&h)?c:c.join("")};x=function(a){return A(a,q,w,false)};B=function(a){return A(a,w,q,true)};this.encode=x;this.decode=B;r()};jQuery.noConflict();(function(a){a.fn.arfaly=function(l){var c=this;var k=0;var d;var e=new Asas({dataBits:8,codeBits:6,keyString:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",pad:"="});var g={init:function(){g.config=a.extend({allowedFileSize:1024*1024*5,delay:5000,multi:true,url:"processMultipleUploads.php",dataType:"json",limitNumberofFiles:2,label:"Allowed file types are gif, jpg, and png.",debug:false,dragDrop:true,targetOutput:".output",type:"post",nonce:"",disablePreview:false,disablePostProgressAnimation:true,disableRemovingItems:true,logoColor:"rgb(150, 155, 255)",textColor:"#DADADA",borderColor:"#DADADA",labelColor:"rgb(90, 90, 90)",progressBarColor:"orange",action:"itech_arfaly_submission",beforeSubmit:g.beforeSubmit,successfulUpload:g.successfulUpload,failedUpload:g.failedUpload,fileDeleted:g.fileDeleted},l);g.Setup();a(g.config.targetOutput).hide()},Setup:function(){var t="";var o="";if(g.config.multi){t="multiple"}if(g.config.dragDrop){o="display:none"}var r='';var q='

'+g.config.label+"

";var n='

Drop files here

'+q+"
";var s='
";var m="
";var p='
';c.addClass("arfaly-multiple-upload");if(g.config.dragDrop){c.html(r+n+s+p)}else{c.html(r+s+m+q+p)}},bytesToSize:function(m){var o=["Bytes","KB","MB","GB","TB"];if(m==0){return"0 Bytes"}var n=parseInt(Math.floor(Math.log(m)/Math.log(1024)));return Math.round(m/Math.pow(1024,n),2)+" "+o[n]},successfulUpload:function(m){},failedUpload:function(m){},fileDeleted:function(n){var m=n.fileIdx;a.ajax({url:g.config.url,type:"POST",data:n,success:function(o){i(o)}})},beforeSubmit:function(o,q){var r=[];var s=navigator.userAgent.indexOf("Chrome")>-1;var p=navigator.userAgent.indexOf("Safari")>-1;if((s)&&(p)){p=false}if(window.File&&window.FileReader&&window.FileList&&window.Blob){var m=o.size;var n=o.type;switch(n){case"application/octet-stream":case"application/postscript":case"image/png":case"image/gif":case"image/jpeg":case"image/pjpeg":case"image/x-png":case"image/jpg":case"image/x-windows-bmp":case"image/bmp":case"image/tiff":case"image/x-tiff":case"image/svg+xml":d="icon-photo";break;case"audio/aac":case"audio/mp4":case"audio/mp3":case"audio/ogg":case"audio/wav":case"audio/webm":d="icon-music";break;case"video/mp4":case"video/ogg":case"video/webm":case"video/avi":case"video/mkv":case"video/x-matroska":d="icon-video2";break;case"application/x-zip-compressed":case"application/zip":case"application/x-rar-compressed":d="icon-wallet";break;default:d="icon-file"}if(m>g.config.allowedFileSize){r.status=false;r.responseText=g.bytesToSize(m)+": The file size has exceeded the limit ("+g.config.allowedFileSize/1024/1024+"MB) !";return r}r.status=true;return r}else{r.status=false;r.responseText="Please upgrade your browser, because your current browser lacks some new features we need!";return r}r.status=true;return r},deleteItem:function(m){var n={"arfaly-id":c.attr("id"),command:"delete",arfalyfn:e.encode(c.find("#"+m+"-fileName").text()),fileIndx:m,action:g.config.action,nonce:g.config.nonce,raqmkh:e.encode(c.find("#file-"+m+"-"+c.attr("id")).val())};g.config.fileDeleted(n);a("#uploadItem-"+m).addClass("animated bounceOutRight");setTimeout(function(o){a("#uploadItem-"+m).remove()},600)},addFileItem:function(t,q){var m="";if(!g.config.disablePreview){m=''}var p='';var r='
Everything going well so far!
';var o='';var n='
'+p+'
'+t+'
  •  '+m+"
"+o+"
";a("#"+c.attr("id")+"-ListItem").prepend(n);jQuery("body").prepend(r);var s=a(".arfaly-oval").height()-a("#mass-item-success-"+q).height();a("#mass-item-success-"+q).css("margin-top",(s/2)+"px");a("#uploadItem-"+q).find("a.delete").click(function(){var v=confirm("Are you sure you want to delete the file?");if(v){var u=a(this).attr("id");g.deleteItem(u)}});a("#uploadItem-"+q).find("a.info-icon").click(function(u){a("#arfaly-info-box-"+q).css("top",u.pageY-35);a("#arfaly-info-box-"+q).css("left",u.pageX+25);a("#arfaly-info-box-"+q).slideDown()});a("#arfaly-info-box-"+q).find("a.close").click(function(v){var u=a(this).attr("index");a("#arfaly-info-box-"+u).slideUp()});a(document).mouseup(function(v){var u=a(".info-box");if(!u.is(v.target)&&u.has(v.target).length===0){u.hide()}});a("#uploadItem-"+q).find("a.preview").click(function(){var u=a(this).attr("index");if(a("#preview-"+u).attr("link")!=""){window.open(a("#preview-"+u).attr("link"),"_blank")}});a("div.arfaly-list-div").click(function(u){u.preventDefault()})},tagItemSuccess:function(n,p,o){a("#uploadItem-"+n).find(".arfaly-loading").hide();var m;if(!p){m='
  • ';h(n,o)}else{m='
  • '}if(a("#mass-item-success-"+n).attr("updated")!="true"){a("#mass-item-oval-info-"+n).prepend(m);a("#mass-item-success-"+n).attr("title",o);a("#uploadItem-"+n).attr("title",o);a("#mass-item-success-"+n).addClass("animated "+(p?"flipNotificationSuccess":"flipNotificationError"));a("#mass-item-success-text-"+n).html((p?"Succeed":"Failed"));a("#mass-item-success-"+n).attr("updated","true");i(o)}},fileDragHover:function(m){m.stopPropagation();m.preventDefault();c.find("#arfaly-filedrag").removeClass("hover").addClass((m.type=="dragover"?"hover":""))}};g.init();var f=c.find("#arfaly-filedrag");f.on("dragover",g.fileDragHover);f.on("dragleave",g.fileDragHover);f.on("drop",j);f.css("display","block");function h(m,n){a("#arfaly-info-box-"+m).find(".arfaly-info-internal-content").html(n)}f.click(function(){a("input[id="+c.attr("id")+"-arfaly-files]").click()});function i(m){if(g.config.debug){if(a(g.config.targetOutput).is(":visible")){a(".output-list-"+c.attr("id")).append("
  • "+m+"
  • ")}else{a(g.config.targetOutput).html('
    1. '+m+"
    ");a(g.config.targetOutput).delay(300).slideDown()}}}function j(n){n.stopPropagation();n.preventDefault();c.find("#arfaly-filedrag").removeClass("hover").addClass("");var m=n.target.files||n.originalEvent.dataTransfer.files;b(m)}function b(s){var p=s;var m=0;var o=[];for(m;m=g.config.limitNumberofFiles){i("You have exceed upload limit ("+k+") !");return false}if(p[m].length==0){continue}var q=new FormData();q.append("SelectedFile",p[m]);q.append("action",g.config.action);q.append("closify-id",c.attr("closify-id"));q.append("closify-idx",c.attr("closify-idx"));q.append("fileIndx",k);q.append("nonce",g.config.nonce);g.addFileItem(p[m].name,k);var n=g.beforeSubmit(p[m],k);if(d==null){a("#uploadItem-"+k).find("#mimePicture").addClass("icon-file")}else{a("#uploadItem-"+k).find("#mimePicture").addClass(d)}if(n.status!=true){g.tagItemSuccess(k,false,n.responseText);k++;continue}var r=new XMLHttpRequest();o[m]=r;o[m].index=k;o[m].onreadystatechange=function(){if(this.readyState==4){try{var u=JSON.parse(this.response);if(u.status=="true"){if(u.attid){c.find("#file-"+this.index+"-"+c.attr("id")).val(u.attid)}g.tagItemSuccess(this.index,true,u.data);if(u.newFileName!=null){a("#"+this.index+"-fileName").text(u.newFileName)}if(u.fullPath!=null){a("#preview-"+this.index).attr("link",u.fullPath)}if(g.config.disablePostProgressAnimation==true){if(g.config.disablePostProgressAnimation==true){c.find("#progress-style-"+this.index).addClass("arfaly-nostripes")}c.find("#progress-style-"+this.index).addClass("arfaly-nostripes")}g.config.successfulUpload(u)}else{g.tagItemSuccess(this.index,false,u.error);g.config.failedUpload(u);h(this.index,u.error)}}catch(t){u={status:"error",msg:"Response string format is not a valid JSON: ["+this.responseText+"]"};g.tagItemSuccess(this.index,false,u.msg)}}};o[m].upload.index=k;o[m].upload.addEventListener("progress",function(v){var u=v.loaded/v.total*100;var t=this.index;a("#massUploadProgress-"+this.index).css("width",u+"%");if(u>=100&&!g.config.disableRemovingItems){setTimeout(function(){g.deleteItem(t)},g.config.delay)}},false);o[m].open(g.config.type,g.config.url);o[m].send(q);k++}return 0}this.find("input[type=file]").change(function(){b(this.files)})}})(jQuery);