(function(e,t,n,r){var a={},s;function o(t,i){var n;if("FileReader"in e){n=new FileReader;n.readAsDataURL(t);n.onload=function(){i(n.result)}}else{return i(t.getAsDataURL())}}function l(t,i){var n;if("FileReader"in e){n=new FileReader;n.readAsBinaryString(t);n.onload=function(){i(n.result)}}else{return i(t.getAsBinary())}}function d(e,i,n,r){var s,l,d,u,c=this;o(a[e.id],function(a){s=t.createElement("canvas");s.style.display="none";t.body.appendChild(s);l=s.getContext("2d");d=new Image;d.onerror=d.onabort=function(){r({success:false})};d.onload=function(){var t,o,h,p,m;if(!i["width"]){i["width"]=d.width}if(!i["height"]){i["height"]=d.height}u=Math.min(i.width/d.width,i.height/d.height);if(u<1||u===1&&n==="image/jpeg"){t=Math.round(d.width*u);o=Math.round(d.height*u);s.width=t;s.height=o;l.drawImage(d,0,0,t,o);if(n==="image/jpeg"){p=new f(atob(a.substring(a.indexOf("base64,")+7)));if(p["headers"]&&p["headers"].length){m=new g;if(m.init(p.get("exif")[0])){m.setExif("PixelXDimension",t);m.setExif("PixelYDimension",o);p.set("exif",m.getBinary());if(c.hasEventListener("ExifData")){c.trigger("ExifData",e,m.EXIF())}if(c.hasEventListener("GpsData")){c.trigger("GpsData",e,m.GPS())}}}if(i["quality"]){try{a=s.toDataURL(n,i["quality"]/100)}catch(y){a=s.toDataURL(n)}}}else{a=s.toDataURL(n)}a=a.substring(a.indexOf("base64,")+7);a=atob(a);if(p&&p["headers"]&&p["headers"].length){a=p.restore(a);p.purge()}s.parentNode.removeChild(s);r({success:true,data:a})}else{r({success:false})}};d.src=a})}n.runtimes.Html5=n.addRuntime("html5",{getFeatures:function(){var i,r,a,o,l,d;r=a=l=d=false;if(e.XMLHttpRequest){i=new XMLHttpRequest;a=!!i.upload;r=!!(i.sendAsBinary||i.upload)}if(r){o=!!(i.sendAsBinary||e.Uint8Array&&e.ArrayBuffer);l=!!(File&&(File.prototype.getAsDataURL||e.FileReader)&&o);d=!!(File&&(File.prototype.mozSlice||File.prototype.webkitSlice||File.prototype.slice))}s=n.ua.safari&&n.ua.windows;return{html5:r,dragdrop:function(){var e=t.createElement("div");return"draggable"in e||"ondragstart"in e&&"ondrop"in e}(),jpgresize:l,pngresize:l,multipart:l||!!e.FileReader||!!e.FormData,canSendBinary:o,cantSendBlobInFormData:!!(n.ua.gecko&&e.FormData&&e.FileReader&&!FileReader.prototype.readAsArrayBuffer),progress:a,chunks:d,multi_selection:!(n.ua.safari&&n.ua.windows),triggerDialog:n.ua.gecko&&e.FormData||n.ua.webkit}},init:function(i,r){var o,u;function f(e){var t,r,s=[],o,l={};for(r=0;r";r.scrollTop=100;h=t.getElementById(i.id+"_html5");if(e.features.triggerDialog){n.extend(h.style,{position:"absolute",width:"100%",height:"100%"})}else{n.extend(h.style,{cssFloat:"right",styleFloat:"right"})}h.onchange=function(){f(this.files);this.value=""};a=t.getElementById(e.settings.browse_button);if(a){var p=e.settings.browse_button_hover,m=e.settings.browse_button_active,y=e.features.triggerDialog?a:r;if(p){n.addEvent(y,"mouseover",function(){n.addClass(a,p)},e.id);n.addEvent(y,"mouseout",function(){n.removeClass(a,p)},e.id)}if(m){n.addEvent(y,"mousedown",function(){n.addClass(a,m)},e.id);n.addEvent(t.body,"mouseup",function(){n.removeClass(a,m)},e.id)}if(e.features.triggerDialog){n.addEvent(a,"click",function(i){var n=t.getElementById(e.id+"_html5");if(n&&!n.disabled){n.click()}i.preventDefault()},e.id)}}});i.bind("PostInit",function(){var e=t.getElementById(i.settings.drop_element);if(e){if(s){n.addEvent(e,"dragenter",function(r){var a,s,o;a=t.getElementById(i.id+"_drop");if(!a){a=t.createElement("input");a.setAttribute("type","file");a.setAttribute("id",i.id+"_drop");a.setAttribute("multiple","multiple");n.addEvent(a,"change",function(){f(this.files);n.removeEvent(a,"change",i.id);a.parentNode.removeChild(a)},i.id);e.appendChild(a)}s=n.getPos(e,t.getElementById(i.settings.container));o=n.getSize(e);if(n.getStyle(e,"position")==="static"){n.extend(e.style,{position:"relative"})}n.extend(a.style,{position:"absolute",display:"block",top:0,left:0,width:o.w+"px",height:o.h+"px",opacity:0})},i.id);return}n.addEvent(e,"dragover",function(e){e.preventDefault()},i.id);n.addEvent(e,"drop",function(e){var t=e.dataTransfer;if(t&&t.files){f(t.files)}e.preventDefault()},i.id)}});i.bind("Refresh",function(e){var r,a,s,o,l;r=t.getElementById(i.settings.browse_button);if(r){a=n.getPos(r,t.getElementById(e.settings.container));s=n.getSize(r);o=t.getElementById(i.id+"_html5_container");n.extend(o.style,{top:a.y+"px",left:a.x+"px",width:s.w+"px",height:s.h+"px"});if(i.features.triggerDialog){if(n.getStyle(r,"position")==="static"){n.extend(r.style,{position:"relative"})}l=parseInt(n.getStyle(r,"zIndex"),10);if(isNaN(l)){l=0}n.extend(r.style,{zIndex:l});n.extend(o.style,{zIndex:l-1})}}});i.bind("DisableBrowse",function(e,i){var n=t.getElementById(e.id+"_html5");if(n){n.disabled=i}});i.bind("CancelUpload",function(){if(u&&u.abort){u.abort()}});i.bind("UploadFile",function(t,i){var r=t.settings,s,f;function g(e,t,i){var n;if(File.prototype.slice){try{e.slice();return e.slice(t,i)}catch(r){return e.slice(t,i-t)}}else if(n=File.prototype.webkitSlice||File.prototype.mozSlice){return n.call(e,t,i)}else{return null}}function c(a){var s=0,l=0,d="FileReader"in e?new FileReader:null;function f(){var c,h,p,m,y,S,v,b=t.settings.url;function E(r){var a=0,d="----pluploadboundary"+n.guid(),g,h="--",E="\r\n",F="";u=new XMLHttpRequest;if(u.upload){u.upload.onprogress=function(e){i.loaded=Math.min(i.size,l+e.loaded-a);t.trigger("UploadProgress",i)}}u.onreadystatechange=function(){var e,a;if(u.readyState==4&&t.state!==n.STOPPED){try{e=u.status}catch(o){e=0}if(e>=400){t.trigger("Error",{code:n.HTTP_ERROR,message:n.translate("HTTP Error."),response:u.responseText,file:i,status:e})}else{if(p){a={chunk:s,chunks:p,response:u.responseText,status:e};t.trigger("ChunkUploaded",i,a);l+=S;if(a.cancelled){i.status=n.FAILED;return}i.loaded=Math.min(i.size,(s+1)*y)}else{i.loaded=i.size}t.trigger("UploadProgress",i);r=c=g=F=null;if(!p||++s>=p){i.status=n.DONE;t.trigger("FileUploaded",i,{response:u.responseText,status:e})}else{f()}}}};if(t.settings.multipart&&o.multipart){m.name=i.target_name||i.name;u.open("post",b,true);n.each(t.settings.headers,function(e,t){u.setRequestHeader(t,e)});if(typeof r!=="string"&&!!e.FormData){g=new FormData;n.each(n.extend(m,t.settings.multipart_params),function(e,t){g.append(t,e)});g.append(t.settings.file_data_name,r);u.send(g);return}if(typeof r==="string"){u.setRequestHeader("Content-Type","multipart/form-data; boundary="+d);n.each(n.extend(m,t.settings.multipart_params),function(e,t){F+=h+d+E+'Content-Disposition: form-data; name="'+t+'"'+E+E;F+=unescape(encodeURIComponent(e))+E});v=n.mimeTypes[i.name.replace(/^.+\.([^.]+)/,"$1").toLowerCase()]||"application/octet-stream";F+=h+d+E+'Content-Disposition: form-data; name="'+t.settings.file_data_name+'"; filename="'+unescape(encodeURIComponent(i.name))+'"'+E+"Content-Type: "+v+E+E+r+E+h+d+h+E;a=F.length-r.length;r=F;if(u.sendAsBinary){u.sendAsBinary(r)}else if(o.canSendBinary){var x=new Uint8Array(r.length);for(var D=0;Dr.chunk_size&&(o.chunks||typeof a=="string")){y=r.chunk_size;p=Math.ceil(i.size/y);S=Math.min(y,i.size-s*y);if(typeof a=="string"){c=a.substring(s*y,s*y+S)}else{c=g(a,s*y,s*y+S)}m.chunk=s;m.chunks=p}else{S=i.size;c=a}if(t.settings.multipart&&o.multipart&&typeof c!=="string"&&d&&o.cantSendBlobInFormData&&o.chunks&&t.settings.chunk_size){d.onload=function(){E(d.result)};d.readAsBinaryString(c)}else{E(c)}}f()}s=a[i.id];if(o.jpgresize&&t.settings.resize&&/\.(png|jpg|jpeg)$/i.test(i.name)){d.call(t,i,t.settings.resize,/\.png$/i.test(i.name)?"image/png":"image/jpeg",function(e){if(e.success){i.size=e.data.length;c(e.data)}else if(o.chunks){c(s)}else{l(s,c)}})}else if(!o.chunks&&o.jpgresize){l(s,c)}else{c(s)}});i.bind("Destroy",function(e){var i,r,a=t.body,s={inputContainer:e.id+"_html5_container",inputFile:e.id+"_html5",browseButton:e.settings.browse_button,dropElm:e.settings.drop_element};for(i in s){r=t.getElementById(s[i]);if(r){n.removeAllEvents(r,e.id)}}n.removeAllEvents(t.body,e.id);if(e.settings.container){a=t.getElementById(e.settings.container)}a.removeChild(t.getElementById(s.inputContainer))});r({success:true})}});function u(){var e=false,t;function i(i,n){var r=e?0:-8*(n-1),a=0,s;for(s=0;s>Math.abs(s+o*8)&255)}n(a,t,r)}return{II:function(t){if(t===r){return e}else{e=t}},init:function(i){e=false;t=i},SEGMENT:function(e,i,r){switch(arguments.length){case 1:return t.substr(e,t.length-e-1);case 2:return t.substr(e,i);case 3:n(r,e,i);break;default:return t}},BYTE:function(e){return i(e,1)},SHORT:function(e){return i(e,2)},LONG:function(e,t){if(t===r){return i(e,4)}else{a(e,t,4)}},SLONG:function(e){var t=i(e,4);return t>2147483647?t-4294967296:t},STRING:function(e,t){var n="";for(t+=e;e=65488&&s<=65495){a+=2;continue}if(s===65498||s===65497){break}o=n.SHORT(a+2)+2;if(t[s]&&n.STRING(a+4,t[s].signature.length)===t[s].signature){i.push({hex:s,app:t[s].app.toUpperCase(),name:t[s].name.toUpperCase(),start:a,length:o,segment:n.SEGMENT(a,o)})}a+=o}n.init(null);return{headers:i,restore:function(e){n.init(e);var t=new f(e);if(!t["headers"]){return false}for(var r=t["headers"].length;r>0;r--){var s=t["headers"][r-1];n.SEGMENT(s.start,s.length,"")}t.purge();a=n.SHORT(2)==65504?4+n.SHORT(4):2;for(var r=0,o=i.length;r=n.length)break}},purge:function(){i=[];n.init(null)}}}function g(){var e,t,a={},s;e=new u;t={tiff:{274:"Orientation",34665:"ExifIFDPointer",34853:"GPSInfoIFDPointer"},exif:{36864:"ExifVersion",40961:"ColorSpace",40962:"PixelXDimension",40963:"PixelYDimension",36867:"DateTimeOriginal",33434:"ExposureTime",33437:"FNumber",34855:"ISOSpeedRatings",37377:"ShutterSpeedValue",37378:"ApertureValue",37383:"MeteringMode",37384:"LightSource",37385:"Flash",41986:"ExposureMode",41987:"WhiteBalance",41990:"SceneCaptureType",41988:"DigitalZoomRatio",41992:"Contrast",41993:"Saturation",41994:"Sharpness"},gps:{0:"GPSVersionID",1:"GPSLatitudeRef",2:"GPSLatitude",3:"GPSLongitudeRef",4:"GPSLongitude"}};s={ColorSpace:{1:"sRGB",0:"Uncalibrated"},MeteringMode:{0:"Unknown",1:"Average",2:"CenterWeightedAverage",3:"Spot",4:"MultiSpot",5:"Pattern",6:"Partial",255:"Other"},LightSource:{1:"Daylight",2:"Fliorescent",3:"Tungsten",4:"Flash",9:"Fine weather",10:"Cloudy weather",11:"Shade",12:"Daylight fluorescent (D 5700 - 7100K)",13:"Day white fluorescent (N 4600 -5400K)",14:"Cool white fluorescent (W 3900 - 4500K)",15:"White fluorescent (WW 3200 - 3700K)",17:"Standard light A",18:"Standard light B",19:"Standard light C",20:"D55",21:"D65",22:"D75",23:"D50",24:"ISO studio tungsten",255:"Other"},Flash:{0:"Flash did not fire.",1:"Flash fired.",5:"Strobe return light not detected.",7:"Strobe return light detected.",9:"Flash fired, compulsory flash mode",13:"Flash fired, compulsory flash mode, return light not detected",15:"Flash fired, compulsory flash mode, return light detected",16:"Flash did not fire, compulsory flash mode",24:"Flash did not fire, auto mode",25:"Flash fired, auto mode",29:"Flash fired, auto mode, return light not detected",31:"Flash fired, auto mode, return light detected",32:"No flash function",65:"Flash fired, red-eye reduction mode",69:"Flash fired, red-eye reduction mode, return light not detected",71:"Flash fired, red-eye reduction mode, return light detected",73:"Flash fired, compulsory flash mode, red-eye reduction mode",77:"Flash fired, compulsory flash mode, red-eye reduction mode, return light not detected",79:"Flash fired, compulsory flash mode, red-eye reduction mode, return light detected",89:"Flash fired, auto mode, red-eye reduction mode",93:"Flash fired, auto mode, return light not detected, red-eye reduction mode",95:"Flash fired, auto mode, return light detected, red-eye reduction mode"},ExposureMode:{0:"Auto exposure",1:"Manual exposure",2:"Auto bracket"},WhiteBalance:{0:"Auto white balance",1:"Manual white balance"},SceneCaptureType:{0:"Standard",1:"Landscape",2:"Portrait",3:"Night scene"},Contrast:{0:"Normal",1:"Soft",2:"Hard"},Saturation:{0:"Normal",1:"Low saturation",2:"High saturation"},Sharpness:{0:"Normal",1:"Soft",2:"Hard"},GPSLatitudeRef:{N:"North latitude",S:"South latitude"},GPSLongitudeRef:{E:"East longitude",W:"West longitude"}};function o(t,i){var n=e.SHORT(t),o,l,d,u,f,g,c,h,p=[],m={};for(o=0;o4){c=e.LONG(c)+a.tiffHeader}for(l=0;l4){c=e.LONG(c)+a.tiffHeader}m[d]=e.STRING(c,f-1);continue;case 3:if(f>2){c=e.LONG(c)+a.tiffHeader}for(l=0;l1){c=e.LONG(c)+a.tiffHeader}for(l=0;l