io-base-min.js revision 1e1de88d535f8f631a7c97b76fa69f14bb02a5ec
486N/AYUI.add("io-base",function(D){var e="io:start",Q="io:complete",B="io:success",G="io:failure",f="io:end",Z=0,P={"X-Requested-With":"XMLHttpRequest"},a={},L=D.config.win;function c(h,p,g){var j,l,Y;p=p||{};l=X(p.xdr,parseInt(g));Y=p.method?p.method.toUpperCase():"GET";if(p.form){if(p.form.upload){return D.io._upload(l,h,p);}else{j=D.io._serialize(p.form,p.data);if(Y==="POST"){p.data=j;W("Content-Type","application/x-www-form-urlencoded");}else{if(Y==="GET"){h=R(h,j);}}}}else{if(p.data&&Y==="GET"){h=R(h,j);}}if(p.xdr){if(p.xdr.use==="native"&&window.XDomainRequest||p.xdr.use==="flash"){return D.io._xdr(h,l,p);}if(p.xdr.credentials){l.c.withCredentials=true;}}l.c.onreadystatechange=function(){d(l,p);};try{l.c.open(Y,h,true);}catch(n){if(p.xdr){return A(l,h,p);}}if(p.data&&Y==="POST"){W("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");}C(l.c,p.headers||{});try{l.c.send(p.data||"");}catch(k){if(p.xdr){return A(l,p);}}T(l.id,p);if(p.timeout){S(l,p.timeout);}return{id:l.id,abort:function(){O(l,"abort");},isInProgress:function(){l.c.readyState!==4&&l.c.readyState!==0;}};}function V(g,h){var Y=new D.EventTarget().publish("transaction:"+g);Y.subscribe(h.on[g],(h.context||D),h.arguments);return Y;}function T(h,g){var Y;g.on=g.on||{};D.fire(e,h);if(g.on.start){Y=V("start",g);Y.fire(h);}}function H(h,i){var g,Y;i.on=i.on||{};g=h.status?F(h.status):h.c;D.fire(Q,h.id,g);if(i.on.complete){Y=V("complete",i);Y.fire(h.id,g);}}function U(g,h){var Y;h.on=h.on||{};D.fire(B,g.id,g.c);if(h.on.success){Y=V("success",h);Y.fire(g.id,g.c);}K(g,h);}function J(h,i){var g=h.status?F(h.status):h.c,Y;i.on=i.on||{};D.fire(G,h.id,g);if(i.on.failure){Y=V("failure",i);Y.fire(h.id,g);}K(h,i);}function K(g,h){var Y;h.on=h.on||{};D.fire(f,g.id);if(h.on.end){Y=V("end",h);Y.fire(g.id);}I(g,h.xdr?true:false);}function O(g,Y){if(g&&g.c){g.status=Y;g.c.abort();}}function F(Y){return{status:0,statusText:Y};}function A(g,Y,i){var h=parseInt(g.id);I(g);i.xdr.use="flash";return D.io(Y,i,h);}function E(){var Y=Z;Z++;return Y;}function X(Y,g){var h={};h.id=D.Lang.isNumber(g)?g:E();if(!Y){h.c=M();}else{if(Y){if(Y.use==="flash"){h.c=D.io._transport[Y.use];}else{if(Y.use==="native"&&window.XDomainRequest){h.c=new XDomainRequest();}else{h.c=M();}}}else{h.c={};}}return h;}function M(){return L.XMLHttpRequest?new XMLHttpRequest():new ActiveXObject("Microsoft.XMLHTTP");}function R(Y,g){Y+=((Y.indexOf("?")==-1)?"?":"&")+g;return Y;}function W(Y,g){if(g){P[Y]=g;}else{delete P[Y];}}function C(i,Y){var g;for(g in P){if(P.hasOwnProperty(g)){if(Y[g]){break;}else{Y[g]=P[g];}}}for(g in Y){if(Y.hasOwnProperty(g)){i.setRequestHeader(g,Y[g]);}}}function S(g,Y){a[g.id]=L.setTimeout(function(){O(g,"timeout");},Y);}function N(Y){L.clearTimeout(a[Y]);delete a[Y];}function d(Y,g){if(Y.c.readyState===4){if(g.timeout){N(Y.id);}L.setTimeout(function(){H(Y,g);b(Y,g);},0);}}function b(h,i){var Y;try{if(h.c.status&&h.c.status!==0){Y=h.c.status;}else{Y=0;}}catch(g){Y=0;}if(Y>=200&&Y<300||Y===1223){U(h,i);}else{J(h,i);}}function I(Y,g){if(L.XMLHttpRequest&&!g){if(Y.c){Y.c.onreadystatechange=null;}}Y.c=null;Y=null;}c.start=T;c.complete=H;c.success=U;c.failure=J;c._id=E;c.header=W;D.io=c;D.io.http=c;},"@VERSION@",{requires:["event-custom-base"]});