(function(){function h(a,b,c){if(a.addEventListener)a.addEventListener(b,c,!1);else if(a.attachEvent)a.attachEvent("on"+b,function(){c.call(a)});else throw Error("not supported or DOM not loaded");}function k(a,b){for(var c in b)b.hasOwnProperty(c)&&(a.style[c]=b[c])}function j(a,b){a.className=a.className.replace(RegExp("\\b"+b+"\\b"),"")}function i(a){a.parentNode.removeChild(a)}var m=document.documentElement.getBoundingClientRect?function(a){var b=a.getBoundingClientRect(),c=a.ownerDocument,a=
c.body,c=c.documentElement,e=c.clientTop||a.clientTop||0,f=c.clientLeft||a.clientLeft||0,d=1;a.getBoundingClientRect&&(d=a.getBoundingClientRect(),d=(d.right-d.left)/a.clientWidth);d>1&&(f=e=0);return{top:b.top/d+(window.pageYOffset||c&&c.scrollTop/d||a.scrollTop/d)-e,left:b.left/d+(window.pageXOffset||c&&c.scrollLeft/d||a.scrollLeft/d)-f}}:function(a){var b=0,c=0;do b+=a.offsetTop||0,c+=a.offsetLeft||0,a=a.offsetParent;while(a);return{left:c,top:b}},l=function(){var a=document.createElement("div");
return function(b){a.innerHTML=b;return a.removeChild(a.firstChild)}}(),n=function(){var a=0;return function(){return"ValumsAjaxUpload"+a++}}();window.AjaxUpload=function(a,b){this._settings={action:"upload.php",name:"userfile",data:{},autoSubmit:!0,responseType:!1,hoverClass:"hover",disabledClass:"disabled",onChange:function(){},onSubmit:function(){},onComplete:function(){}};for(var c in b)b.hasOwnProperty(c)&&(this._settings[c]=b[c]);a.jquery?a=a[0]:typeof a=="string"&&(/^#.*/.test(a)&&(a=a.slice(1)),
a=document.getElementById(a));if(!a||a.nodeType!==1)throw Error("Please make sure that you're passing a valid element");a.nodeName.toUpperCase()=="A"&&h(a,"click",function(a){if(a&&a.preventDefault)a.preventDefault();else if(window.event)window.event.returnValue=!1});this._button=a;this._input=null;this._disabled=!1;this.enable();this._rerouteClicks()};AjaxUpload.prototype={setData:function(a){this._settings.data=a},disable:function(){var a=this._button,b=this._settings.disabledClass;RegExp("\\b"+
b+"\\b").test(a.className)||(a.className+=" "+b);this._disabled=!0;a=this._button.nodeName.toUpperCase();(a=="INPUT"||a=="BUTTON")&&this._button.setAttribute("disabled","disabled");if(this._input)this._input.parentNode.style.visibility="hidden"},enable:function(){j(this._button,this._settings.disabledClass);this._button.removeAttribute("disabled");this._disabled=!1},_createInput:function(){var a=this,b=document.createElement("input");b.setAttribute("type","file");b.setAttribute("name",this._settings.name);
k(b,{position:"absolute",right:0,margin:0,padding:0,fontSize:"480px",cursor:"pointer"});var c=document.createElement("div");k(c,{display:"block",position:"absolute",overflow:"hidden",margin:0,padding:0,opacity:0,direction:"ltr",zIndex:2147483583});if(c.style.opacity!=="0"){if(typeof c.filters=="undefined")throw Error("Opacity not supported by the browser");c.style.filter="alpha(opacity=0)"}h(b,"change",function(){if(b&&b.value!==""){var c=b.value.replace(/.*(\/|\\)/,"");!1===a._settings.onChange.call(a,
c,-1!==c.indexOf(".")?c.replace(/.*[.]/,""):"")?a._clearInput():a._settings.autoSubmit&&a.submit()}});h(b,"mouseover",function(){var b=a._button,c=a._settings.hoverClass;RegExp("\\b"+c+"\\b").test(b.className)||(b.className+=" "+c)});h(b,"mouseout",function(){j(a._button,a._settings.hoverClass);b.parentNode.style.visibility="hidden"});c.appendChild(b);document.body.appendChild(c);this._input=b},_clearInput:function(){if(this._input)i(this._input.parentNode),this._input=null,this._createInput(),j(this._button,
this._settings.hoverClass)},_rerouteClicks:function(){var a=this;h(a._button,"mouseover",function(){if(!a._disabled){a._input||a._createInput();var b=a._input.parentNode,c=a._button,e,f;f=m(c);e=f.left;f=f.top;e={left:e,right:e+c.offsetWidth,top:f,bottom:f+c.offsetHeight};k(b,{position:"absolute",left:e.left+"px",top:e.top+"px",width:c.offsetWidth+"px",height:c.offsetHeight+"px"});b.style.visibility="visible"}})},_createIframe:function(){var a=n(),b=l('<iframe src="javascript:false;" name="'+a+'" />');
b.setAttribute("id",a);b.style.display="none";document.body.appendChild(b);return b},_createForm:function(a){var b=this._settings,c=l('<form method="post" enctype="multipart/form-data"></form>');c.setAttribute("action",b.action);c.setAttribute("target",a.name);c.style.display="none";document.body.appendChild(c);for(var e in b.data)b.data.hasOwnProperty(e)&&(a=document.createElement("input"),a.setAttribute("type","hidden"),a.setAttribute("name",e),a.setAttribute("value",b.data[e]),c.appendChild(a));
return c},_getResponse:function(a,b){var c=!1,e=this,f=this._settings;h(a,"load",function(){if(a.src=="javascript:'%3Chtml%3E%3C/html%3E';"||a.src=="javascript:'<html></html>';")c&&setTimeout(function(){i(a)},0);else{var d=a.contentDocument?a.contentDocument:window.frames[a.id].document;if(!(d.readyState&&d.readyState!="complete")&&!(d.body&&d.body.innerHTML=="false")){var g;if(d.XMLDocument)g=d.XMLDocument;else if(d.body){if(g=d.body.innerHTML,f.responseType&&f.responseType.toLowerCase()=="json"){if(d.body.firstChild&&
d.body.firstChild.nodeName.toUpperCase()=="PRE")g=d.body.firstChild.firstChild.nodeValue;g=g?eval("("+g+")"):{}}}else g=d;f.onComplete.call(e,b,g);c=!0;a.src="javascript:'<html></html>';"}}})},submit:function(){var a=this._settings;if(this._input&&this._input.value!==""){var b=this._input.value.replace(/.*(\/|\\)/,"");if(!1===a.onSubmit.call(this,b,-1!==b.indexOf(".")?b.replace(/.*[.]/,""):""))this._clearInput();else{var a=this._createIframe(),c=this._createForm(a);i(this._input.parentNode);j(this._button,
this._settings.hoverClass);c.appendChild(this._input);c.submit();i(c);i(this._input);this._input=null;this._getResponse(a,b);this._createInput()}}}}})();
