(function($){$(function(){$.MultiFile()});$.extend($,{MultiFile:function(o){return $("INPUT[@type='file'].multi").MultiFile(o)}});$.extend($.fn,{MultiFile:function(o){if(this._MultiFile){return $(this)}this._MultiFile=true;return $(this).each(function(i){var d=this;d.debug=(d.className.indexOf('debug')>0);d.max=(d.className.match(/\b((max|limit)\-[0-9]+)\b/gi));if(d.max){d.max=new Number((d.max+'').match(/[0-9]+/)[0])}else{d.max=-1}d.accept=(d.className.match(/\b(accept\-[\w\|]+)\b/gi))||'';d.accept=new String((d.accept+'')).replace(/^(accept|ext)\-/i,'');$.each("on,after".split(","),function(i,o){$.each("FileSelect,FileRemove,FileAppend".split(","),function(j,event){d[o+event]=function(e,v,m){}})});d.trigger=function(event,e){var f=d[event];if(f){var v=$(this).attr('value');var r=f(e,v,d);if(r!=null)return r}return true};if(typeof(o)=='number'){o={max:o}};$.extend(d,d.data||{},o);$.extend(d,{STRING:d.STRING||{},n:0,k:'MF_',f:function(z){return d.k+'_F_'+String(i)+'_'+String(z)}});d.STRING=$.extend({remove:'smazat',denied:'Typ souboru $ext není povolen.\nZkuste prosím znovu....',selected:'Soubor: $file'},d.STRING);if(String(d.accept).length>1){d.rxAccept=new RegExp('\\.('+(d.accept?d.accept:'')+')$','gi')};d.w=d.k+'_MF_'+i;var x=$(d);x.wrap('<div id="'+d.w+'"></div>');d.add=function(e,ii){d.n++;e.d=d;e.i=ii;e.id=d.f(e.i);e.name=e.id;if(d.max!=-1&&d.n>(d.max+1)){e.disabled=true};d.current=e;e=$(e);e.change(function(){if(!d.trigger('onFileSelect',this,d))return false;if(d.accept){var v=String(e.attr('value'));if(!v.match(d.rxAccept)){e.attr('value','');e.get(0).value='';alert(d.STRING.denied.replace('$ext',String(v.match(/\.\w{1,4}$/gi))));return false}};this.style.position='absolute';this.style.left='-1000px';var f=$('<input type="file"/>');$(this).parent().prepend(f);d.list(this);d.add(f.get(0),this.i+1);if(!d.trigger('afterFileSelect',this,d))return false})};d.list=function(y){if(!d.trigger('onFileAppend',y,d))return false;var t=$('#'+d.w),r=$('<div class="upload"></div>'),v=$(y).attr('value')+'',a=$('<span class="file" title="'+d.STRING.selected.replace('$file',v)+'">'+v.match(/[^\/\\]+$/gi)[0]+'</span>'),b=$('<a href="#'+d.w+'">'+d.STRING.remove+'</a>');t.append(r);r.append('[',b,']&nbsp;',a);b.click(function(){if(!d.trigger('onFileRemove',y,d))return false;d.n--;d.current.disabled=false;$('#'+d.f(y.i)).remove();$(this).parent().remove();if(!d.trigger('afterFileRemove',y,d))return false;return false});if(!d.trigger('afterFileAppend',y,d))return false};if(!d.ft){d.add(d,0);d.ft=true}d.I++;d.n++})}})})(jQuery);
