/*! WebUploader 0.1.5 */ (function(root,factory){var modules={},_require=function(deps,callback){var args,len,i;if(typeof deps==="string"){return getModule(deps)}else{args=[];for(len=deps.length,i=0;i1024){size=size/1024}return(unit==="B"?size:size.toFixed(pointLength||2))+unit}}});define("mediator",["base"],function(Base){var $=Base.$,slice=[].slice,separator=/\s+/,protos;function findHandlers(arr,name,callback,context){return $.grep(arr,function(handler){return handler&&(!name||handler.e===name)&&(!callback||handler.cb===callback||handler.cb._cb===callback)&&(!context||handler.ctx===context)})}function eachEvent(events,callback,iterator){$.each((events||"").split(separator),function(_,key){iterator(key,callback)})}function triggerHanders(events,args){var stoped=false,i=-1,len=events.length,handler;while(++i1){if($.isPlainObject(val)&&$.isPlainObject(opts[key])){$.extend(opts[key],val)}else{opts[key]=val}}else{return key?opts[key]:opts}},getStats:function(){var stats=this.request("get-stats");return stats?{successNum:stats.numOfSuccess,progressNum:stats.numOfProgress,cancelNum:stats.numOfCancel,invalidNum:stats.numOfInvalid,uploadFailNum:stats.numOfUploadFailed,queueNum:stats.numOfQueue,interruptNum:stats.numofInterrupt}:{}},trigger:function(type){var args=[].slice.call(arguments,1),opts=this.options,name="on"+type.substring(0,1).toUpperCase()+type.substring(1);if(Mediator.trigger.apply(this,arguments)===false||$.isFunction(opts[name])&&opts[name].apply(this,args)===false||$.isFunction(this[name])&&this[name].apply(this,args)===false||Mediator.trigger.apply(Mediator,[this,type].concat(args))===false){return false}return true},destroy:function(){this.request("destroy",arguments);this.off()},request:Base.noop});Base.create=Uploader.create=function(opts){return new Uploader(opts)};Base.Uploader=Uploader;return Uploader});define("runtime/runtime",["base","mediator"],function(Base,Mediator){var $=Base.$,factories={},getFirstKey=function(obj){for(var key in obj){if(obj.hasOwnProperty(key)){return key}}return null};function Runtime(options){this.options=$.extend({container:document.body},options);this.uid=Base.guid("rt_")}$.extend(Runtime.prototype,{getContainer:function(){var opts=this.options,parent,container;if(this._container){return this._container}parent=$(opts.container||document.body);container=$(document.createElement("div"));container.attr("id","rt_"+this.uid);container.css({position:"absolute",top:"0px",left:"0px",width:"1px",height:"1px",overflow:"hidden"});parent.append(container);parent.addClass("webuploader-container");this._container=container;this._parent=parent;return container},init:Base.noop,exec:Base.noop,destroy:function(){this._container&&this._container.remove();this._parent&&this._parent.removeClass("webuploader-container");this.off()}});Runtime.orders="html5,flash";Runtime.addRuntime=function(type,factory){factories[type]=factory};Runtime.hasRuntime=function(type){return !!(type?factories[type]:getFirstKey(factories))};Runtime.create=function(opts,orders){var type,runtime;orders=orders||Runtime.orders;$.each(orders.split(/\s*,\s*/g),function(){if(factories[this]){type=this;return false}});type=type||getFirstKey(factories);if(!type){throw new Error("Runtime Error")}runtime=new factories[type](opts);return runtime};Mediator.installTo(Runtime.prototype);return Runtime});define("runtime/client",["base","mediator","runtime/runtime"],function(Base,Mediator,Runtime){var cache;cache=(function(){var obj={};return{add:function(runtime){obj[runtime.uid]=runtime},get:function(ruid,standalone){var i; if(ruid){return obj[ruid]}for(i in obj){if(standalone&&obj[i].__standalone){continue}return obj[i]}return null},remove:function(runtime){delete obj[runtime.uid]}}})();function RuntimeClient(component,standalone){var deferred=Base.Deferred(),runtime;this.uid=Base.guid("client_");this.runtimeReady=function(cb){return deferred.done(cb)};this.connectRuntime=function(opts,cb){if(runtime){throw new Error("already connected!")}deferred.done(cb);if(typeof opts==="string"&&cache.get(opts)){runtime=cache.get(opts)}runtime=runtime||cache.get(null,standalone);if(!runtime){runtime=Runtime.create(opts,opts.runtimeOrder);runtime.__promise=deferred.promise();runtime.once("ready",deferred.resolve);runtime.init();cache.add(runtime);runtime.__client=1}else{Base.$.extend(runtime.options,opts);runtime.__promise.then(deferred.resolve);runtime.__client++}standalone&&(runtime.__standalone=standalone);return runtime};this.getRuntime=function(){return runtime};this.disconnectRuntime=function(){if(!runtime){return}runtime.__client--;if(runtime.__client<=0){cache.remove(runtime);delete runtime.__promise;runtime.destroy()}runtime=null};this.exec=function(){if(!runtime){return}var args=Base.slice(arguments);component&&args.unshift(component);return runtime.exec.apply(this,args)};this.getRuid=function(){return runtime&&runtime.uid};this.destroy=(function(destroy){return function(){destroy&&destroy.apply(this,arguments);this.trigger("destroy");this.off();this.exec("destroy");this.disconnectRuntime()}})(this.destroy)}Mediator.installTo(RuntimeClient.prototype);return RuntimeClient});define("lib/dnd",["base","mediator","runtime/client"],function(Base,Mediator,RuntimeClent){var $=Base.$;function DragAndDrop(opts){opts=this.options=$.extend({},DragAndDrop.options,opts);opts.container=$(opts.container);if(!opts.container.length){return}RuntimeClent.call(this,"DragAndDrop")}DragAndDrop.options={accept:null,disableGlobalDnd:false};Base.inherits(RuntimeClent,{constructor:DragAndDrop,init:function(){var me=this;me.connectRuntime(me.options,function(){me.exec("init");me.trigger("ready")})}});Mediator.installTo(DragAndDrop.prototype);return DragAndDrop});define("widgets/widget",["base","uploader"],function(Base,Uploader){var $=Base.$,_init=Uploader.prototype._init,_destroy=Uploader.prototype.destroy,IGNORE={},widgetClass=[];function isArrayLike(obj){if(!obj){return false}var length=obj.length,type=$.type(obj);if(obj.nodeType===1&&length){return true}return type==="array"||type!=="function"&&type!=="string"&&(length===0||typeof length==="number"&&length>0&&(length-1) in obj)}function Widget(uploader){this.owner=uploader;this.options=uploader.options}$.extend(Widget.prototype,{init:Base.noop,invoke:function(apiName,args){var map=this.responseMap;if(!map||!(apiName in map)||!(map[apiName] in this)||!$.isFunction(this[map[apiName]])){return IGNORE}return this[map[apiName]].apply(this,args)},request:function(){return this.owner.request.apply(this.owner,arguments)}});$.extend(Uploader.prototype,{_init:function(){var me=this,widgets=me._widgets=[],deactives=me.options.disableWidgets||"";$.each(widgetClass,function(_,klass){(!deactives||!~deactives.indexOf(klass._name))&&widgets.push(new klass(me))});return _init.apply(me,arguments)},request:function(apiName,args,callback){var i=0,widgets=this._widgets,len=widgets&&widgets.length,rlts=[],dfds=[],widget,rlt,promise,key;args=isArrayLike(args)?args:[args];for(;i0){width=file._info.width*width}if(height<=1&&height>0){height=file._info.height*height}image.resize(width,height)});image.once("complete",function(){cb(false,image.getAsDataUrl(opts.type));image.destroy()});image.once("error",function(reason){cb(reason||true);image.destroy()});throttle(image,file.source.size,function(){file._info&&image.info(file._info);file._meta&&image.meta(file._meta);image.loadFromBlob(file.source)})},beforeSendFile:function(file){var opts=this.options.compress||this.options.resize,compressSize=opts&&opts.compressSize||0,noCompressIfLarger=opts&&opts.noCompressIfLarger||false,image,deferred;file=this.request("get-file",file);if(!opts||!~"image/jpeg,image/jpg".indexOf(file.type)||file.size0){width=file._info.width*width}if(height<=1&&height>0){height=file._info.height*height}image.resize(width,height)});image.once("complete",function(){var blob,size;try{blob=image.getAsBlob(opts.type);size=file.size;if(!noCompressIfLarger||blob.size1&&~"http,abort".indexOf(type)&&block.retried1&&$.extend(data,{chunks:block.chunks,chunk:block.chunk});owner.trigger("uploadBeforeSend",block,data,headers);tr.appendBlob(opts.fileVal,block.blob,file.name);tr.append(data);tr.setRequestHeader(headers);tr.send()},_finishFile:function(file,ret,hds){var owner=this.owner;return owner.request("after-send-file",arguments,function(){file.setStatus(Status.COMPLETE);owner.trigger("uploadSuccess",file,ret,hds)}).fail(function(reason){if(file.getStatus()===Status.PROGRESS){file.setStatus(Status.ERROR,reason)}owner.trigger("uploadError",file,reason)}).always(function(){owner.trigger("uploadComplete",file)})},updateFileProgress:function(file){var totalPercent=0,uploaded=0;if(!file.blocks){return}$.each(file.blocks,function(_,v){uploaded+=(v.percentage||0)*(v.end-v.start)});totalPercent=uploaded/file.size;this.owner.trigger("uploadProgress",file,totalPercent||0)}})});define("widgets/validator",["base","uploader","file","widgets/widget"],function(Base,Uploader,WUFile){var $=Base.$,validators={},api;api={addValidator:function(type,cb){validators[type]=cb},removeValidator:function(type){delete validators[type]}};Uploader.register({name:"validator",init:function(){var me=this;Base.nextTick(function(){$.each(validators,function(){this.call(me.owner)})})}});api.addValidator("fileNumLimit",function(){var uploader=this,opts=uploader.options,count=0,max=parseInt(opts.fileNumLimit,10),flag=true;if(!max){return}uploader.on("beforeFileQueued",function(file){if(count>=max&&flag){flag=false;this.trigger("error","Q_EXCEED_NUM_LIMIT",max,file);setTimeout(function(){flag=true},1)}return count>=max?false:true});uploader.on("fileQueued",function(){count++});uploader.on("fileDequeued",function(){count--});uploader.on("reset",function(){count=0})});api.addValidator("fileSizeLimit",function(){var uploader=this,opts=uploader.options,count=0,max=parseInt(opts.fileSizeLimit,10),flag=true;if(!max){return}uploader.on("beforeFileQueued",function(file){var invalid=count+file.size>max;if(invalid&&flag){flag=false;this.trigger("error","Q_EXCEED_SIZE_LIMIT",max,file);setTimeout(function(){flag=true},1)}return invalid?false:true});uploader.on("fileQueued",function(file){count+=file.size});uploader.on("fileDequeued",function(file){count-=file.size});uploader.on("reset",function(){count=0})});api.addValidator("fileSingleSizeLimit",function(){var uploader=this,opts=uploader.options,max=opts.fileSingleSizeLimit;if(!max){return}uploader.on("beforeFileQueued",function(file){if(file.size>max){file.setStatus(WUFile.Status.INVALID,"exceed_size");this.trigger("error","F_EXCEED_SIZE",max,file);return false}})});api.addValidator("duplicate",function(){var uploader=this,opts=uploader.options,mapping={};if(opts.duplicate){return}function hashString(str){var hash=0,i=0,len=str.length,_char;for(;i1){start=start||0;end=end||0;start<0&&(start=blob.size+start);end<0&&(end=blob.size+end);end=Math.min(end,blob.size);blob=blob.slice(start,end)}md5.loadFromBlob(blob);return deferred.promise()}})});define("runtime/compbase",[],function(){function CompBase(owner,runtime){this.owner=owner;this.options=owner.options;this.getRuntime=function(){return runtime};this.getRuid=function(){return runtime.uid};this.trigger=function(){return owner.trigger.apply(owner,arguments)}}return CompBase});define("runtime/html5/runtime",["base","runtime/runtime","runtime/compbase"],function(Base,Runtime,CompBase){var type="html5",components={};function Html5Runtime(){var pool={},me=this,destroy=this.destroy;Runtime.apply(me,arguments);me.type=type;me.exec=function(comp,fn){var client=this,uid=client.uid,args=Base.slice(arguments,2),instance;if(components[comp]){instance=pool[uid]=pool[uid]||new components[comp](client,me);if(instance[fn]){return instance[fn].apply(instance,args)}}};me.destroy=function(){return destroy&&destroy.apply(this,arguments)}}Base.inherits(Runtime,{constructor:Html5Runtime,init:function(){var me=this;setTimeout(function(){me.trigger("ready")},1)}});Html5Runtime.register=function(name,component){var klass=components[name]=Base.inherits(CompBase,component);return klass};if(window.Blob&&window.FileReader&&window.DataView){Runtime.addRuntime(type,Html5Runtime)}return Html5Runtime});define("runtime/html5/blob",["runtime/html5/runtime","lib/blob"],function(Html5Runtime,Blob){return Html5Runtime.register("Blob",{slice:function(start,end){var blob=this.owner.source,slice=blob.slice||blob.webkitSlice||blob.mozSlice;blob=slice.call(blob,start,end);return new Blob(this.getRuid(),blob)}})});define("runtime/html5/dnd",["base","runtime/html5/runtime","lib/file"],function(Base,Html5Runtime,File){var $=Base.$,prefix="webuploader-dnd-";return Html5Runtime.register("DragAndDrop",{init:function(){var elem=this.elem=this.options.container;this.dragEnterHandler=Base.bindFn(this._dragEnterHandler,this);this.dragOverHandler=Base.bindFn(this._dragOverHandler,this);this.dragLeaveHandler=Base.bindFn(this._dragLeaveHandler,this);this.dropHandler=Base.bindFn(this._dropHandler,this);this.dndOver=false;elem.on("dragenter",this.dragEnterHandler);elem.on("dragover",this.dragOverHandler);elem.on("dragleave",this.dragLeaveHandler);elem.on("drop",this.dropHandler);if(this.options.disableGlobalDnd){$(document).on("dragover",this.dragOverHandler);$(document).on("drop",this.dropHandler)}},_dragEnterHandler:function(e){var me=this,denied=me._denied||false,items;e=e.originalEvent||e;if(!me.dndOver){me.dndOver=true;items=e.dataTransfer.items;if(items&&items.length){me._denied=denied=!me.trigger("accept",items)}me.elem.addClass(prefix+"over");me.elem[denied?"addClass":"removeClass"](prefix+"denied")}e.dataTransfer.dropEffect=denied?"none":"copy";return false},_dragOverHandler:function(e){var parentElem=this.elem.parent().get(0);if(parentElem&&!$.contains(parentElem,e.currentTarget)){return false}clearTimeout(this._leaveTimer);this._dragEnterHandler.call(this,e);return false},_dragLeaveHandler:function(){var me=this,handler;handler=function(){me.dndOver=false;me.elem.removeClass(prefix+"over "+prefix+"denied")};clearTimeout(me._leaveTimer);me._leaveTimer=setTimeout(handler,100);return false},_dropHandler:function(e){var me=this,ruid=me.getRuid(),parentElem=me.elem.parent().get(0),dataTransfer,data;if(parentElem&&!$.contains(parentElem,e.currentTarget)){return false}e=e.originalEvent||e;dataTransfer=e.dataTransfer;try{data=dataTransfer.getData("text/html")}catch(err){}if(data){return}me._getTansferFiles(dataTransfer,function(results){me.trigger("drop",$.map(results,function(file){return new File(ruid,file)}))});me.dndOver=false;me.elem.removeClass(prefix+"over");return false},_getTansferFiles:function(dataTransfer,callback){var results=[],promises=[],items,files,file,item,i,len,canAccessFolder;items=dataTransfer.items;files=dataTransfer.files;canAccessFolder=!!(items&&items[0].webkitGetAsEntry);for(i=0,len=files.length;i0){arr=[];for(i=0,len=opts.accept.length;i=65504&&markerBytes<=65519||markerBytes===65534){markerLength=dataview.getUint16(offset+2)+2;if(offset+markerLength>dataview.byteLength){break}parsers=api.parsers[markerBytes];if(!noParse&&parsers){for(i=0;i6){if(buffer.slice){ret.imageHead=buffer.slice(2,headLength)}else{ret.imageHead=new Uint8Array(buffer).subarray(2,headLength)}}}return ret},updateImageHead:function(buffer,head){var data=this._parse(buffer,true),buf1,buf2,bodyoffset;bodyoffset=2;if(data.imageHead){bodyoffset=2+data.imageHead.byteLength}if(buffer.slice){buf2=buffer.slice(bodyoffset)}else{buf2=new Uint8Array(buffer).subarray(bodyoffset)}buf1=new Uint8Array(head.byteLength+2+buf2.byteLength);buf1[0]=255;buf1[1]=216;buf1.set(new Uint8Array(head),2);buf1.set(new Uint8Array(buf2),head.byteLength+2);return buf1.buffer}};Util.parseMeta=function(){return api.parse.apply(api,arguments)};Util.updateImageHead=function(){return api.updateImageHead.apply(api,arguments)};return api});define("runtime/html5/imagemeta/exif",["base","runtime/html5/imagemeta"],function(Base,ImageMeta){var EXIF={};EXIF.ExifMap=function(){return this};EXIF.ExifMap.prototype.map={"Orientation":274};EXIF.ExifMap.prototype.get=function(id){return this[id]||this[this.map[id]]};EXIF.exifTagTypes={1:{getValue:function(dataView,dataOffset){return dataView.getUint8(dataOffset)},size:1},2:{getValue:function(dataView,dataOffset){return String.fromCharCode(dataView.getUint8(dataOffset))},size:1,ascii:true},3:{getValue:function(dataView,dataOffset,littleEndian){return dataView.getUint16(dataOffset,littleEndian)},size:2},4:{getValue:function(dataView,dataOffset,littleEndian){return dataView.getUint32(dataOffset,littleEndian)},size:4},5:{getValue:function(dataView,dataOffset,littleEndian){return dataView.getUint32(dataOffset,littleEndian)/dataView.getUint32(dataOffset+4,littleEndian)},size:8},9:{getValue:function(dataView,dataOffset,littleEndian){return dataView.getInt32(dataOffset,littleEndian)},size:4},10:{getValue:function(dataView,dataOffset,littleEndian){return dataView.getInt32(dataOffset,littleEndian)/dataView.getInt32(dataOffset+4,littleEndian)},size:8}};EXIF.exifTagTypes[7]=EXIF.exifTagTypes[1];EXIF.getExifValue=function(dataView,tiffOffset,offset,type,length,littleEndian){var tagType=EXIF.exifTagTypes[type],tagSize,dataOffset,values,i,str,c;if(!tagType){Base.log("Invalid Exif data: Invalid tag type.");return}tagSize=tagType.size*length;dataOffset=tagSize>4?tiffOffset+dataView.getUint32(offset+8,littleEndian):(offset+8);if(dataOffset+tagSize>dataView.byteLength){Base.log("Invalid Exif data: Invalid data offset.");return}if(length===1){return tagType.getValue(dataView,dataOffset,littleEndian)}values=[];for(i=0;idataView.byteLength){Base.log("Invalid Exif data: Invalid directory offset.");return}tagsNumber=dataView.getUint16(dirOffset,littleEndian);dirEndOffset=dirOffset+2+12*tagsNumber;if(dirEndOffset+4>dataView.byteLength){Base.log("Invalid Exif data: Invalid directory size.");return}for(i=0;idataView.byteLength){Base.log("Invalid Exif data: Invalid segment size.");return}if(dataView.getUint16(offset+8)!==0){Base.log("Invalid Exif data: Missing byte alignment offset.");return}switch(dataView.getUint16(tiffOffset)){case 18761:littleEndian=true;break;case 19789:littleEndian=false;break;default:Base.log("Invalid Exif data: Invalid byte alignment marker.");return}if(dataView.getUint16(tiffOffset+2,littleEndian)!==42){Base.log("Invalid Exif data: Missing TIFF marker.");return}dirOffset=dataView.getUint32(tiffOffset+4,littleEndian);data.exif=new EXIF.ExifMap();dirOffset=EXIF.parseExifTags(dataView,tiffOffset,tiffOffset+dirOffset,littleEndian,data)};ImageMeta.parsers[65505].push(EXIF.parseExifData);return EXIF});define("runtime/html5/jpegencoder",[],function(require,exports,module){function JPEGEncoder(quality){var self=this;var fround=Math.round;var ffloor=Math.floor;var YTable=new Array(64);var UVTable=new Array(64); var fdtbl_Y=new Array(64);var fdtbl_UV=new Array(64);var YDC_HT;var UVDC_HT;var YAC_HT;var UVAC_HT;var bitcode=new Array(65535);var category=new Array(65535);var outputfDCTQuant=new Array(64);var DU=new Array(64);var byteout=[];var bytenew=0;var bytepos=7;var YDU=new Array(64);var UDU=new Array(64);var VDU=new Array(64);var clt=new Array(256);var RGB_YUV_TABLE=new Array(2048);var currentQuality;var ZigZag=[0,1,5,6,14,15,27,28,2,4,7,13,16,26,29,42,3,8,12,17,25,30,41,43,9,11,18,24,31,40,44,53,10,19,23,32,39,45,52,54,20,22,33,38,46,51,55,60,21,34,37,47,50,56,59,61,35,36,48,49,57,58,62,63];var std_dc_luminance_nrcodes=[0,0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0];var std_dc_luminance_values=[0,1,2,3,4,5,6,7,8,9,10,11];var std_ac_luminance_nrcodes=[0,0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,125];var std_ac_luminance_values=[1,2,3,0,4,17,5,18,33,49,65,6,19,81,97,7,34,113,20,50,129,145,161,8,35,66,177,193,21,82,209,240,36,51,98,114,130,9,10,22,23,24,25,26,37,38,39,40,41,42,52,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,225,226,227,228,229,230,231,232,233,234,241,242,243,244,245,246,247,248,249,250];var std_dc_chrominance_nrcodes=[0,0,3,1,1,1,1,1,1,1,1,1,0,0,0,0,0];var std_dc_chrominance_values=[0,1,2,3,4,5,6,7,8,9,10,11];var std_ac_chrominance_nrcodes=[0,0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,119];var std_ac_chrominance_values=[0,1,2,3,17,4,5,33,49,6,18,65,81,7,97,113,19,34,50,129,8,20,66,145,161,177,193,9,35,51,82,240,21,98,114,209,10,22,36,52,225,37,241,23,24,25,26,38,39,40,41,42,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,130,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,226,227,228,229,230,231,232,233,234,242,243,244,245,246,247,248,249,250];function initQuantTables(sf){var YQT=[16,11,10,16,24,40,51,61,12,12,14,19,26,58,60,55,14,13,16,24,40,57,69,56,14,17,22,29,51,87,80,62,18,22,37,56,68,109,103,77,24,35,55,64,81,104,113,92,49,64,78,87,103,121,120,101,72,92,95,98,112,100,103,99];for(var i=0;i<64;i++){var t=ffloor((YQT[i]*sf+50)/100);if(t<1){t=1}else{if(t>255){t=255}}YTable[ZigZag[i]]=t}var UVQT=[17,18,24,47,99,99,99,99,18,21,26,66,99,99,99,99,24,26,56,99,99,99,99,99,47,66,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99];for(var j=0;j<64;j++){var u=ffloor((UVQT[j]*sf+50)/100);if(u<1){u=1}else{if(u>255){u=255}}UVTable[ZigZag[j]]=u}var aasf=[1,1.387039845,1.306562965,1.175875602,1,0.785694958,0.5411961,0.275899379];var k=0;for(var row=0;row<8;row++){for(var col=0;col<8;col++){fdtbl_Y[k]=(1/(YTable[ZigZag[k]]*aasf[row]*aasf[col]*8));fdtbl_UV[k]=(1/(UVTable[ZigZag[k]]*aasf[row]*aasf[col]*8));k++}}}function computeHuffmanTbl(nrcodes,std_table){var codevalue=0;var pos_in_table=0;var HT=new Array();for(var k=1;k<=16;k++){for(var j=1;j<=nrcodes[k];j++){HT[std_table[pos_in_table]]=[];HT[std_table[pos_in_table]][0]=codevalue;HT[std_table[pos_in_table]][1]=k;pos_in_table++;codevalue++}codevalue*=2}return HT}function initHuffmanTbl(){YDC_HT=computeHuffmanTbl(std_dc_luminance_nrcodes,std_dc_luminance_values);UVDC_HT=computeHuffmanTbl(std_dc_chrominance_nrcodes,std_dc_chrominance_values);YAC_HT=computeHuffmanTbl(std_ac_luminance_nrcodes,std_ac_luminance_values);UVAC_HT=computeHuffmanTbl(std_ac_chrominance_nrcodes,std_ac_chrominance_values)}function initCategoryNumber(){var nrlower=1;var nrupper=2;for(var cat=1;cat<=15;cat++){for(var nr=nrlower;nr>0]=38470*i;RGB_YUV_TABLE[(i+512)>>0]=7471*i+32768;RGB_YUV_TABLE[(i+768)>>0]=-11059*i;RGB_YUV_TABLE[(i+1024)>>0]=-21709*i;RGB_YUV_TABLE[(i+1280)>>0]=32768*i+8421375;RGB_YUV_TABLE[(i+1536)>>0]=-27439*i;RGB_YUV_TABLE[(i+1792)>>0]=-5329*i}}function writeBits(bs){var value=bs[0];var posval=bs[1]-1;while(posval>=0){if(value&(1<>8)&255);writeByte((value)&255)}function fDCTQuant(data,fdtbl){var d0,d1,d2,d3,d4,d5,d6,d7;var dataOff=0;var i;var I8=8;var I64=64;for(i=0;i0)?((fDCTQuant+0.5)|0):((fDCTQuant-0.5)|0)}return outputfDCTQuant}function writeAPP0(){writeWord(65504);writeWord(16);writeByte(74);writeByte(70);writeByte(73);writeByte(70);writeByte(0);writeByte(1);writeByte(1);writeByte(0);writeWord(1);writeWord(1);writeByte(0);writeByte(0)}function writeSOF0(width,height){writeWord(65472);writeWord(17);writeByte(8);writeWord(height);writeWord(width);writeByte(3);writeByte(1);writeByte(17);writeByte(0);writeByte(2);writeByte(17);writeByte(1);writeByte(3);writeByte(17);writeByte(1)}function writeDQT(){writeWord(65499);writeWord(132);writeByte(0);for(var i=0;i<64;i++){writeByte(YTable[i])}writeByte(1);for(var j=0;j<64;j++){writeByte(UVTable[j])}}function writeDHT(){writeWord(65476);writeWord(418);writeByte(0);for(var i=0;i<16;i++){writeByte(std_dc_luminance_nrcodes[i+1])}for(var j=0;j<=11;j++){writeByte(std_dc_luminance_values[j])}writeByte(16);for(var k=0;k<16;k++){writeByte(std_ac_luminance_nrcodes[k+1])}for(var l=0;l<=161;l++){writeByte(std_ac_luminance_values[l])}writeByte(1);for(var m=0;m<16;m++){writeByte(std_dc_chrominance_nrcodes[m+1])}for(var n=0;n<=11;n++){writeByte(std_dc_chrominance_values[n])}writeByte(17);for(var o=0;o<16;o++){writeByte(std_ac_chrominance_nrcodes[o+1])}for(var p=0;p<=161;p++){writeByte(std_ac_chrominance_values[p])}}function writeSOS(){writeWord(65498);writeWord(12);writeByte(3);writeByte(1);writeByte(0);writeByte(2);writeByte(17);writeByte(3);writeByte(17);writeByte(0);writeByte(63);writeByte(0)}function processDU(CDU,fdtbl,DC,HTDC,HTAC){var EOB=HTAC[0];var M16zeroes=HTAC[240];var pos;var I16=16;var I63=63;var I64=64;var DU_DCT=fDCTQuant(CDU,fdtbl);for(var j=0;j0)&&(DU[end0pos]==0);end0pos--){}if(end0pos==0){writeBits(EOB);return DC}var i=1;var lng;while(i<=end0pos){var startpos=i;for(;(DU[i]==0)&&(i<=end0pos);++i){}var nrzeroes=i-startpos;if(nrzeroes>=I16){lng=nrzeroes>>4;for(var nrmarker=1;nrmarker<=lng;++nrmarker){writeBits(M16zeroes)}nrzeroes=nrzeroes&15}pos=32767+DU[i];writeBits(HTAC[(nrzeroes<<4)+category[pos]]);writeBits(bitcode[pos]);i++}if(end0pos!=I63){writeBits(EOB)}return DC}function initCharLookupTable(){var sfcc=String.fromCharCode;for(var i=0;i<256;i++){clt[i]=sfcc(i)}}this.encode=function(image,quality){if(quality){setQuality(quality)}byteout=new Array();bytenew=0;bytepos=7;writeWord(65496);writeAPP0();writeDQT();writeSOF0(image.width,image.height);writeDHT();writeSOS();var DCY=0;var DCU=0;var DCV=0;bytenew=0;bytepos=7;this.encode.displayName="_encode_";var imageData=image.data;var width=image.width;var height=image.height;var quadWidth=width*4;var tripleWidth=width*3;var x,y=0;var r,g,b;var start,p,col,row,pos;while(y>3;col=(pos&7)*4;p=start+(row*quadWidth)+col;if(y+row>=height){p-=(quadWidth*(y+1+row-height))}if(x+col>=quadWidth){p-=((x+col)-quadWidth+4)}r=imageData[p++];g=imageData[p++];b=imageData[p++];YDU[pos]=((RGB_YUV_TABLE[r]+RGB_YUV_TABLE[(g+256)>>0]+RGB_YUV_TABLE[(b+512)>>0])>>16)-128; UDU[pos]=((RGB_YUV_TABLE[(r+768)>>0]+RGB_YUV_TABLE[(g+1024)>>0]+RGB_YUV_TABLE[(b+1280)>>0])>>16)-128;VDU[pos]=((RGB_YUV_TABLE[(r+1280)>>0]+RGB_YUV_TABLE[(g+1536)>>0]+RGB_YUV_TABLE[(b+1792)>>0])>>16)-128}DCY=processDU(YDU,fdtbl_Y,DCY,YDC_HT,YAC_HT);DCU=processDU(UDU,fdtbl_UV,DCU,UVDC_HT,UVAC_HT);DCV=processDU(VDU,fdtbl_UV,DCV,UVDC_HT,UVAC_HT);x+=32}y+=8}if(bytepos>=0){var fillbits=[];fillbits[1]=bytepos+1;fillbits[0]=(1<<(bytepos+1))-1;writeBits(fillbits)}writeWord(65497);var jpegDataUri="data:image/jpeg;base64,"+btoa(byteout.join(""));byteout=[];return jpegDataUri};function setQuality(quality){if(quality<=0){quality=1}if(quality>100){quality=100}if(currentQuality==quality){return}var sf=0;if(quality<50){sf=Math.floor(5000/quality)}else{sf=Math.floor(200-quality*2)}initQuantTables(sf);currentQuality=quality}function init(){if(!quality){quality=50}initCharLookupTable();initHuffmanTbl();initCategoryNumber();initRGBYUVTable();setQuality(quality)}init()}JPEGEncoder.encode=function(data,quality){var encoder=new JPEGEncoder(quality);return encoder.encode(data)};return JPEGEncoder});define("runtime/html5/androidpatch",["runtime/html5/util","runtime/html5/jpegencoder","base"],function(Util,encoder,Base){var origin=Util.canvasToDataUrl,supportJpeg;Util.canvasToDataUrl=function(canvas,type,quality){var ctx,w,h,fragement,parts;if(!Base.os.android){return origin.apply(null,arguments)}if(type==="image/jpeg"&&typeof supportJpeg==="undefined"){fragement=origin.apply(null,arguments);parts=fragement.split(",");if(~parts[0].indexOf("base64")){fragement=atob(parts[1])}else{fragement=decodeURIComponent(parts[1])}fragement=fragement.substring(0,2);supportJpeg=fragement.charCodeAt(0)===255&&fragement.charCodeAt(1)===216}if(type==="image/jpeg"&&!supportJpeg){w=canvas.width;h=canvas.height;ctx=canvas.getContext("2d");return encoder.encode(ctx.getImageData(0,0,w,h),quality)}return origin.apply(null,arguments)}});define("runtime/html5/image",["base","runtime/html5/runtime","runtime/html5/util"],function(Base,Html5Runtime,Util){var BLANK="data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs%3D";return Html5Runtime.register("Image",{modified:false,init:function(){var me=this,img=new Image();img.onload=function(){me._info={type:me.type,width:this.width,height:this.height};if(!me._metas&&"image/jpeg"===me.type){Util.parseMeta(me._blob,function(error,ret){me._metas=ret;me.owner.trigger("load")})}else{me.owner.trigger("load")}};img.onerror=function(){me.owner.trigger("error")};me._img=img},loadFromBlob:function(blob){var me=this,img=me._img;me._blob=blob;me.type=blob.type;img.src=Util.createObjectURL(blob.getSource());me.owner.once("load",function(){Util.revokeObjectURL(img.src)})},resize:function(width,height){var canvas=this._canvas||(this._canvas=document.createElement("canvas"));this._resize(this._img,canvas,width,height);this._blob=null;this.modified=true;this.owner.trigger("complete","resize")},crop:function(x,y,w,h,s){var cvs=this._canvas||(this._canvas=document.createElement("canvas")),opts=this.options,img=this._img,iw=img.naturalWidth,ih=img.naturalHeight,orientation=this.getOrientation();s=s||1;cvs.width=w;cvs.height=h;opts.preserveHeaders||this._rotate2Orientaion(cvs,orientation);this._renderImageToCanvas(cvs,img,-x,-y,iw*s,ih*s);this._blob=null;this.modified=true;this.owner.trigger("complete","crop")},getAsBlob:function(type){var blob=this._blob,opts=this.options,canvas;type=type||this.type;if(this.modified||this.type!==type){canvas=this._canvas;if(type==="image/jpeg"){blob=Util.canvasToDataUrl(canvas,type,opts.quality);if(opts.preserveHeaders&&this._metas&&this._metas.imageHead){blob=Util.dataURL2ArrayBuffer(blob);blob=Util.updateImageHead(blob,this._metas.imageHead);blob=Util.arrayBufferToBlob(blob,type);return blob}}else{blob=Util.canvasToDataUrl(canvas,type)}blob=Util.dataURL2Blob(blob)}return blob},getAsDataUrl:function(type){var opts=this.options;type=type||this.type;if(type==="image/jpeg"){return Util.canvasToDataUrl(this._canvas,type,opts.quality)}else{return this._canvas.toDataURL(type)}},getOrientation:function(){return this._metas&&this._metas.exif&&this._metas.exif.get("Orientation")||1},info:function(val){if(val){this._info=val;return this}return this._info},meta:function(val){if(val){this._meta=val;return this}return this._meta},destroy:function(){var canvas=this._canvas;this._img.onload=null;if(canvas){canvas.getContext("2d").clearRect(0,0,canvas.width,canvas.height);canvas.width=canvas.height=0;this._canvas=null}this._img.src=BLANK;this._img=this._blob=null},_resize:function(img,cvs,width,height){var opts=this.options,naturalWidth=img.width,naturalHeight=img.height,orientation=this.getOrientation(),scale,w,h,x,y;if(~[5,6,7,8].indexOf(orientation)){width^=height;height^=width;width^=height}scale=Math[opts.crop?"max":"min"](width/naturalWidth,height/naturalHeight);opts.allowMagnify||(scale=Math.min(1,scale));w=naturalWidth*scale;h=naturalHeight*scale;if(opts.crop){cvs.width=width;cvs.height=height}else{cvs.width=w; cvs.height=h}x=(cvs.width-w)/2;y=(cvs.height-h)/2;opts.preserveHeaders||this._rotate2Orientaion(cvs,orientation);this._renderImageToCanvas(cvs,img,x,y,w,h)},_rotate2Orientaion:function(canvas,orientation){var width=canvas.width,height=canvas.height,ctx=canvas.getContext("2d");switch(orientation){case 5:case 6:case 7:case 8:canvas.width=height;canvas.height=width;break}switch(orientation){case 2:ctx.translate(width,0);ctx.scale(-1,1);break;case 3:ctx.translate(width,height);ctx.rotate(Math.PI);break;case 4:ctx.translate(0,height);ctx.scale(1,-1);break;case 5:ctx.rotate(0.5*Math.PI);ctx.scale(1,-1);break;case 6:ctx.rotate(0.5*Math.PI);ctx.translate(0,-height);break;case 7:ctx.rotate(0.5*Math.PI);ctx.translate(width,-height);ctx.scale(-1,1);break;case 8:ctx.rotate(-0.5*Math.PI);ctx.translate(-width,0);break}},_renderImageToCanvas:(function(){if(!Base.os.ios){return function(canvas){var args=Base.slice(arguments,1),ctx=canvas.getContext("2d");ctx.drawImage.apply(ctx,args)}}function detectVerticalSquash(img,iw,ih){var canvas=document.createElement("canvas"),ctx=canvas.getContext("2d"),sy=0,ey=ih,py=ih,data,alpha,ratio;canvas.width=1;canvas.height=ih;ctx.drawImage(img,0,0);data=ctx.getImageData(0,0,1,ih).data;while(py>sy){alpha=data[(py-1)*4+3];if(alpha===0){ey=py}else{sy=py}py=(ey+sy)>>1}ratio=(py/ih);return(ratio===0)?1:ratio}if(Base.os.ios>=7){return function(canvas,img,x,y,w,h){var iw=img.naturalWidth,ih=img.naturalHeight,vertSquashRatio=detectVerticalSquash(img,iw,ih);return canvas.getContext("2d").drawImage(img,0,0,iw*vertSquashRatio,ih*vertSquashRatio,x,y,w,h)}}function detectSubsampling(img){var iw=img.naturalWidth,ih=img.naturalHeight,canvas,ctx;if(iw*ih>1024*1024){canvas=document.createElement("canvas");canvas.width=canvas.height=1;ctx=canvas.getContext("2d");ctx.drawImage(img,-iw+1,0);return ctx.getImageData(0,0,1,1).data[3]===0}else{return false}}return function(canvas,img,x,y,width,height){var iw=img.naturalWidth,ih=img.naturalHeight,ctx=canvas.getContext("2d"),subsampled=detectSubsampling(img),doSquash=this.type==="image/jpeg",d=1024,sy=0,dy=0,tmpCanvas,tmpCtx,vertSquashRatio,dw,dh,sx,dx;if(subsampled){iw/=2;ih/=2}ctx.save();tmpCanvas=document.createElement("canvas");tmpCanvas.width=tmpCanvas.height=d;tmpCtx=tmpCanvas.getContext("2d");vertSquashRatio=doSquash?detectVerticalSquash(img,iw,ih):1;dw=Math.ceil(d*width/iw);dh=Math.ceil(d*height/ih/vertSquashRatio);while(sy=200&&xhr.status<300){me._response=xhr.responseText;return me.trigger("load")}else{if(xhr.status>=500&&xhr.status<600){me._response=xhr.responseText;return me.trigger("error","server")}}return me.trigger("error",me._status?"http":"abort")};me._xhr=xhr;return xhr},_setRequestHeader:function(xhr,headers){$.each(headers,function(key,val){xhr.setRequestHeader(key,val)})},_parseJson:function(str){var json;try{json=JSON.parse(str)}catch(ex){json={}}return json}})});define("runtime/html5/md5",["runtime/html5/runtime"],function(FlashRuntime){var add32=function(a,b){return(a+b)&4294967295 },cmn=function(q,a,b,x,s,t){a=add32(add32(a,q),add32(x,t));return add32((a<>>(32-s)),b)},ff=function(a,b,c,d,x,s,t){return cmn((b&c)|((~b)&d),a,b,x,s,t)},gg=function(a,b,c,d,x,s,t){return cmn((b&d)|(c&(~d)),a,b,x,s,t)},hh=function(a,b,c,d,x,s,t){return cmn(b^c^d,a,b,x,s,t)},ii=function(a,b,c,d,x,s,t){return cmn(c^(b|(~d)),a,b,x,s,t)},md5cycle=function(x,k){var a=x[0],b=x[1],c=x[2],d=x[3];a=ff(a,b,c,d,k[0],7,-680876936);d=ff(d,a,b,c,k[1],12,-389564586);c=ff(c,d,a,b,k[2],17,606105819);b=ff(b,c,d,a,k[3],22,-1044525330);a=ff(a,b,c,d,k[4],7,-176418897);d=ff(d,a,b,c,k[5],12,1200080426);c=ff(c,d,a,b,k[6],17,-1473231341);b=ff(b,c,d,a,k[7],22,-45705983);a=ff(a,b,c,d,k[8],7,1770035416);d=ff(d,a,b,c,k[9],12,-1958414417);c=ff(c,d,a,b,k[10],17,-42063);b=ff(b,c,d,a,k[11],22,-1990404162);a=ff(a,b,c,d,k[12],7,1804603682);d=ff(d,a,b,c,k[13],12,-40341101);c=ff(c,d,a,b,k[14],17,-1502002290);b=ff(b,c,d,a,k[15],22,1236535329);a=gg(a,b,c,d,k[1],5,-165796510);d=gg(d,a,b,c,k[6],9,-1069501632);c=gg(c,d,a,b,k[11],14,643717713);b=gg(b,c,d,a,k[0],20,-373897302);a=gg(a,b,c,d,k[5],5,-701558691);d=gg(d,a,b,c,k[10],9,38016083);c=gg(c,d,a,b,k[15],14,-660478335);b=gg(b,c,d,a,k[4],20,-405537848);a=gg(a,b,c,d,k[9],5,568446438);d=gg(d,a,b,c,k[14],9,-1019803690);c=gg(c,d,a,b,k[3],14,-187363961);b=gg(b,c,d,a,k[8],20,1163531501);a=gg(a,b,c,d,k[13],5,-1444681467);d=gg(d,a,b,c,k[2],9,-51403784);c=gg(c,d,a,b,k[7],14,1735328473);b=gg(b,c,d,a,k[12],20,-1926607734);a=hh(a,b,c,d,k[5],4,-378558);d=hh(d,a,b,c,k[8],11,-2022574463);c=hh(c,d,a,b,k[11],16,1839030562);b=hh(b,c,d,a,k[14],23,-35309556);a=hh(a,b,c,d,k[1],4,-1530992060);d=hh(d,a,b,c,k[4],11,1272893353);c=hh(c,d,a,b,k[7],16,-155497632);b=hh(b,c,d,a,k[10],23,-1094730640);a=hh(a,b,c,d,k[13],4,681279174);d=hh(d,a,b,c,k[0],11,-358537222);c=hh(c,d,a,b,k[3],16,-722521979);b=hh(b,c,d,a,k[6],23,76029189);a=hh(a,b,c,d,k[9],4,-640364487);d=hh(d,a,b,c,k[12],11,-421815835);c=hh(c,d,a,b,k[15],16,530742520);b=hh(b,c,d,a,k[2],23,-995338651);a=ii(a,b,c,d,k[0],6,-198630844);d=ii(d,a,b,c,k[7],10,1126891415);c=ii(c,d,a,b,k[14],15,-1416354905);b=ii(b,c,d,a,k[5],21,-57434055);a=ii(a,b,c,d,k[12],6,1700485571);d=ii(d,a,b,c,k[3],10,-1894986606);c=ii(c,d,a,b,k[10],15,-1051523);b=ii(b,c,d,a,k[1],21,-2054922799);a=ii(a,b,c,d,k[8],6,1873313359);d=ii(d,a,b,c,k[15],10,-30611744);c=ii(c,d,a,b,k[6],15,-1560198380);b=ii(b,c,d,a,k[13],21,1309151649);a=ii(a,b,c,d,k[4],6,-145523070);d=ii(d,a,b,c,k[11],10,-1120210379);c=ii(c,d,a,b,k[2],15,718787259);b=ii(b,c,d,a,k[9],21,-343485551);x[0]=add32(a,x[0]);x[1]=add32(b,x[1]);x[2]=add32(c,x[2]);x[3]=add32(d,x[3])},md5blk=function(s){var md5blks=[],i;for(i=0;i<64;i+=4){md5blks[i>>2]=s.charCodeAt(i)+(s.charCodeAt(i+1)<<8)+(s.charCodeAt(i+2)<<16)+(s.charCodeAt(i+3)<<24)}return md5blks},md5blk_array=function(a){var md5blks=[],i;for(i=0;i<64;i+=4){md5blks[i>>2]=a[i]+(a[i+1]<<8)+(a[i+2]<<16)+(a[i+3]<<24)}return md5blks},md51=function(s){var n=s.length,state=[1732584193,-271733879,-1732584194,271733878],i,length,tail,tmp,lo,hi;for(i=64;i<=n;i+=64){md5cycle(state,md5blk(s.substring(i-64,i)))}s=s.substring(i-64);length=s.length;tail=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(i=0;i>2]|=s.charCodeAt(i)<<((i%4)<<3)}tail[i>>2]|=128<<((i%4)<<3);if(i>55){md5cycle(state,tail);for(i=0;i<16;i+=1){tail[i]=0}}tmp=n*8;tmp=tmp.toString(16).match(/(.*?)(.{0,8})$/);lo=parseInt(tmp[2],16);hi=parseInt(tmp[1],16)||0;tail[14]=lo;tail[15]=hi;md5cycle(state,tail);return state},md51_array=function(a){var n=a.length,state=[1732584193,-271733879,-1732584194,271733878],i,length,tail,tmp,lo,hi;for(i=64;i<=n;i+=64){md5cycle(state,md5blk_array(a.subarray(i-64,i)))}a=(i-64)>2]|=a[i]<<((i%4)<<3)}tail[i>>2]|=128<<((i%4)<<3);if(i>55){md5cycle(state,tail);for(i=0;i<16;i+=1){tail[i]=0}}tmp=n*8;tmp=tmp.toString(16).match(/(.*?)(.{0,8})$/);lo=parseInt(tmp[2],16);hi=parseInt(tmp[1],16)||0;tail[14]=lo;tail[15]=hi;md5cycle(state,tail);return state},hex_chr=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"],rhex=function(n){var s="",j;for(j=0;j<4;j+=1){s+=hex_chr[(n>>(j*8+4))&15]+hex_chr[(n>>(j*8))&15]}return s},hex=function(x){var i;for(i=0;i>16)+(y>>16)+(lsw>>16);return(msw<<16)|(lsw&65535)}}SparkMD5.prototype.append=function(str){if(/[\u0080-\uFFFF]/.test(str)){str=unescape(encodeURIComponent(str))}this.appendBinary(str);return this};SparkMD5.prototype.appendBinary=function(contents){this._buff+=contents;this._length+=contents.length;var length=this._buff.length,i;for(i=64;i<=length;i+=64){md5cycle(this._state,md5blk(this._buff.substring(i-64,i)))}this._buff=this._buff.substr(i-64);return this};SparkMD5.prototype.end=function(raw){var buff=this._buff,length=buff.length,i,tail=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],ret; for(i=0;i>2]|=buff.charCodeAt(i)<<((i%4)<<3)}this._finish(tail,length);ret=!!raw?this._state:hex(this._state);this.reset();return ret};SparkMD5.prototype._finish=function(tail,length){var i=length,tmp,lo,hi;tail[i>>2]|=128<<((i%4)<<3);if(i>55){md5cycle(this._state,tail);for(i=0;i<16;i+=1){tail[i]=0}}tmp=this._length*8;tmp=tmp.toString(16).match(/(.*?)(.{0,8})$/);lo=parseInt(tmp[2],16);hi=parseInt(tmp[1],16)||0;tail[14]=lo;tail[15]=hi;md5cycle(this._state,tail)};SparkMD5.prototype.reset=function(){this._buff="";this._length=0;this._state=[1732584193,-271733879,-1732584194,271733878];return this};SparkMD5.prototype.destroy=function(){delete this._state;delete this._buff;delete this._length};SparkMD5.hash=function(str,raw){if(/[\u0080-\uFFFF]/.test(str)){str=unescape(encodeURIComponent(str))}var hash=md51(str);return !!raw?hash:hex(hash)};SparkMD5.hashBinary=function(content,raw){var hash=md51(content);return !!raw?hash:hex(hash)};SparkMD5.ArrayBuffer=function(){this.reset()};SparkMD5.ArrayBuffer.prototype.append=function(arr){var buff=this._concatArrayBuffer(this._buff,arr),length=buff.length,i;this._length+=arr.byteLength;for(i=64;i<=length;i+=64){md5cycle(this._state,md5blk_array(buff.subarray(i-64,i)))}this._buff=(i-64)>2]|=buff[i]<<((i%4)<<3)}this._finish(tail,length);ret=!!raw?this._state:hex(this._state);this.reset();return ret};SparkMD5.ArrayBuffer.prototype._finish=SparkMD5.prototype._finish;SparkMD5.ArrayBuffer.prototype.reset=function(){this._buff=new Uint8Array(0);this._length=0;this._state=[1732584193,-271733879,-1732584194,271733878];return this};SparkMD5.ArrayBuffer.prototype.destroy=SparkMD5.prototype.destroy;SparkMD5.ArrayBuffer.prototype._concatArrayBuffer=function(first,second){var firstLength=first.length,result=new Uint8Array(firstLength+second.byteLength);result.set(first);result.set(new Uint8Array(second),firstLength);return result};SparkMD5.ArrayBuffer.hash=function(arr,raw){var hash=md51_array(new Uint8Array(arr));return !!raw?hash:hex(hash)};return FlashRuntime.register("Md5",{init:function(){},loadFromBlob:function(file){var blob=file.getSource(),chunkSize=2*1024*1024,chunks=Math.ceil(blob.size/chunkSize),chunk=0,owner=this.owner,spark=new SparkMD5.ArrayBuffer(),me=this,blobSlice=blob.mozSlice||blob.webkitSlice||blob.slice,loadNext,fr;fr=new FileReader();loadNext=function(){var start,end;start=chunk*chunkSize;end=Math.min(start+chunkSize,blob.size);fr.onload=function(e){spark.append(e.target.result);owner.trigger("progress",{total:file.size,loaded:end})};fr.onloadend=function(){fr.onloadend=fr.onload=null;if(++chunk'+''+''+''+""; container.html(html)},getFlash:function(){if(this._flash){return this._flash}this._flash=$("#"+this.uid).get(0);return this._flash}});FlashRuntime.register=function(name,component){component=components[name]=Base.inherits(CompBase,$.extend({flashExec:function(){var owner=this.owner,runtime=this.getRuntime();return runtime.flashExec.apply(owner,arguments)}},component));return component};if(getFlashVersion()>=11.4){Runtime.addRuntime(type,FlashRuntime)}return FlashRuntime});define("runtime/flash/filepicker",["base","runtime/flash/runtime"],function(Base,FlashRuntime){var $=Base.$;return FlashRuntime.register("FilePicker",{init:function(opts){var copy=$.extend({},opts),len,i;len=copy.accept&©.accept.length;for(i=0;i=200&&status<300){readBody=true}else{if(status>=500&&status<600){readBody=true;err="server"}else{err="http"}}if(readBody){me._response=xhr.exec("getResponse");me._response=decodeURIComponent(me._response);p=window.JSON&&window.JSON.parse||function(s){try{return new Function("return "+s).call()}catch(err){return{}}};me._responseJson=me._response?p(me._response):{}}xhr.destroy();xhr=null;return err?me.trigger("error",err):me.trigger("load")});xhr.on("error",function(){xhr.off();me._xhr=null;me.trigger("error","http")});me._xhr=xhr;return xhr},_setRequestHeader:function(xhr,headers){$.each(headers,function(key,val){xhr.exec("setRequestHeader",key,val)})}})});define("runtime/flash/blob",["runtime/flash/runtime","lib/blob"],function(FlashRuntime,Blob){return FlashRuntime.register("Blob",{slice:function(start,end){var blob=this.flashExec("Blob","slice",start,end);return new Blob(blob.uid,blob)}})});define("runtime/flash/md5",["runtime/flash/runtime"],function(FlashRuntime){return FlashRuntime.register("Md5",{init:function(){},loadFromBlob:function(blob){return this.flashExec("Md5","loadFromBlob",blob.uid)}})});define("preset/all",["base","widgets/filednd","widgets/filepaste","widgets/filepicker","widgets/image","widgets/queue","widgets/runtime","widgets/upload","widgets/validator","widgets/md5","runtime/html5/blob","runtime/html5/dnd","runtime/html5/filepaste","runtime/html5/filepicker","runtime/html5/imagemeta/exif","runtime/html5/androidpatch","runtime/html5/image","runtime/html5/transport","runtime/html5/md5","runtime/flash/filepicker","runtime/flash/image","runtime/flash/transport","runtime/flash/blob","runtime/flash/md5"],function(Base){return Base});define("widgets/log",["base","uploader","widgets/widget"],function(Base,Uploader){var $=Base.$,logUrl=" http://static.tieba.baidu.com/tb/pms/img/st.gif??",product=(location.hostname||location.host||"protected").toLowerCase(),enable=product&&/baidu/i.exec(product),base;if(!enable){return}base={dv:3,master:"webuploader",online:/test/.exec(product)?0:1,module:"",product:product,type:0};function send(data){var obj=$.extend({},base,data),url=logUrl.replace(/^(.*)\?/,"$1"+$.param(obj)),image=new Image();image.src=url}return Uploader.register({name:"log",init:function(){var owner=this.owner,count=0,size=0; owner.on("error",function(code){send({type:2,c_error_code:code})}).on("uploadError",function(file,reason){send({type:2,c_error_code:"UPLOAD_ERROR",c_reason:""+reason})}).on("uploadComplete",function(file){count++;size+=file.size}).on("uploadFinished",function(){send({c_count:count,c_size:size});count=size=0});send({c_usage:1})}})});define("webuploader",["preset/all","widgets/log"],function(preset){return preset});return require("webuploader")});