-
Notifications
You must be signed in to change notification settings - Fork 0
/
My.min.js
2 lines (2 loc) · 51.3 KB
/
My.min.js
1
2
(function(){function t(t,e){return new ae(t,e)}t.name="My";t.version="1.0.0";t.isReady=false;window.M=window.My=t;var e=["undefined","string","number","boolean"],i=Object.prototype.toString,n=Array.prototype.slice,r=false,a=[],u=0,o={isMy:function(t){return t instanceof ae},isDefined:function(t){return!this.isUndefined(t)},isUndefined:function(t){return typeof t==="undefined"},isDomElement:function(t){return t&&t.nodeType===1},clone:function(t,i){if(t===null)return t;var n=typeof t;if(n==="function"||p.contains(e,n))return t;if(p.isArray(t))return p.clone(t,i);return d.clone(t,i)},each:function(t,e,i,n){if(p.isArray(t)||p.isArrayLike(t))return p.each.apply(this,arguments);if(d.isPlainObject(t))return d.each.apply(this,arguments)},reach:function(t,e,i,n){if(p.isArray(t)||p.isArrayLike(t))return p.reach.apply(this,arguments)},filter:function(t,e,i,n){if(p.isArray(t)||p.isArrayLike(t))return p.filter.apply(this,arguments);if(d.isPlainObject(t))return d.filter.apply(this,arguments)},map:function(t,e,i,n){if(p.isArray(t)||p.isArrayLike(t))return p.map.apply(this,arguments);if(d.isPlainObject(t))return d.map.apply(this,arguments)},equals:function(t,i){if(t===null||i===null)return t===i;var n=typeof t,r=typeof i;if(n!=r)return false;if(n==="function"||p.contains(e,n))return t===i;var s=p.isArray(t),a=p.isArray(t);if(s!==a)return false;return s?p.equals(t,i):d.equals(t,i)},empty:function(t){return{undefined:undefined,"null":null,string:"",number:0,"boolean":false,object:{},array:[],"function":function(){},my:new ae}[t||"object"]},isEmpty:function(t){if(p.contains([undefined,null,"",0,false],t))return true;if(l.isNumber(t))return isNaN(t);if(m.isFunction(t))return m.isEmpty(t);if(this.isMy(t))return t.isEmpty();if(p.isArray(t)||p.isArrayLike(t))return p.isEmpty(t);if(d.isPlainObject(t))return d.isEmpty(t);return false},size:function(t){if(this.isMy(t)||f.isString(t)||p.isArray(t)||p.isArrayLike(t))return t.length;if(d.isPlainObject(t))return d.size(t);return 0},contains:function(t,e,i){if(f.isString(t))return f.contains(t,e,i);if(p.isArray(t))return p.contains(t,e,i);if(d.isPlainObject(t))return d.hasKey(t,e);return false},getKeys:function(t){if(p.isArray(t))return p.getKeys(t);if(d.isPlainObject(t))return d.getKeys(t);return null},getValues:function(t){if(p.isArray(t))return p.getValues(t);if(d.isPlainObject(t))return d.getValues(t);return null},fromArray:function(t,e){var i={};if((p.isArray(t)||p.isArrayLike(t))&&p.isArray(e)&&t.length<=e.length){p.each(t,function(t,n){i[e[n]]=t})}return i},toArray:function(t){if(p.isArrayLike(t)){return p.map(t,function(t){return t})}return[]},repeat:function(t,e){if(f.isString(t))return f.repeat(t,e);if(p.isArray(t))return p.repeat(t,e);return null},range:function(t,e,i,n){n=n||"array";if(n==="array")return p.range(t,e,i);if(n==="string")return f.range(t,e,i);return null},fill:function(t,e,i,n){if(f.isString(t))return f.fill(t,e,i,n);if(p.isArray(t))return p.fill(t,e,i,n)},merge:function(t,e){if(p.isArray(t)||p.isArrayLike(t))return p.merge(t,e);if(d.isPlainObject(t))return d.merge(t,e)},inherit:function(t,e,i){function r(){}r.prototype=e.prototype;var s=new r;s.constructor=t;i=n.call(arguments);p.each(i,function(t){d.each(t,function(t,e){s[e]=t})},2);t.prototype=s;t.superCls=e.prototype;e.prototype.constructor===Object.prototype.constructor&&(e.prototype.constructor=e);return this},extend:function(t,e){t=t||{};e=n.call(arguments);p.each(e,function(e){d.each(e,function(e,i){t[i]=e})},1);return this},augment:function(t,e,i){if(p.isArray(i)){t=t||{};e=e||{};p.each(i,function(i){if(!t.hasOwnProperty(i)&&e.hasOwnProperty(i))t[i]=e[i]})}return this},plugin:function(e,i){if(e&&d.isPlainObject(i)){var n=e.split("."),r=n.length,s=t;p.each(n,function(t,e){if(!s[t])s[t]=e==r-1?i:{};s=s[t]})}return this},create:function(t,e){return new ae(f.isString(t)&&(t.toUpperCase()==="TEXT"&&document.createTextNode(e)||document.createElement(t)))},query:function(t,e){this.isMy(e)&&(e=e[0]);return this.toArray((e||document).querySelectorAll(t))},ajax:function(t,e){e=e||{};var i=null;if(e.jsonp){i=new o.JSONPer;i.callback=e.callback||this.ajaxSettings.callback}else{i=new o.Loader;e.header&&i.beforeSend(e.header);i.method=(e.method||this.ajaxSettings.method).toUpperCase();i.params=e.params||{}}i.url=t;i.dataType=e.dataType||this.ajaxSettings.dataType;i.contentType=e.contentType||this.ajaxSettings.contentType;i.parse=o.isUndefined(e.parse)?this.ajaxSettings.parse:e.parse;i.async=o.isUndefined(e.async)?this.ajaxSettings.async:e.async;i.cache=o.isUndefined(e.cache)?this.ajaxSettings.cache:e.cache;i.timeout=o.isUndefined(e.timeout)?this.ajaxSettings.timeout:e.timeout;i.once({success:function(t){e.success&&e.success.call(this,this.data);this.release();i=null},fail:function(t,n){e.fail&&e.fail.call(this,this,t,n);this.release();i=null},timeout:function(){e.ontimeout&&e.ontimeout.call(this);this.release();i=null}});i.send();return{success:function(t){e.success=t;return this},fail:function(t){e.fail=t;return this},timeout:function(t){e.ontimeout=t;return this}}},require:function(t,e,i){m.isFunction(e)&&(i=e);f.isString(t)&&(t=[t]);var n=0,r=[],s=function(e){e&&r.push(this.src||this.href);n++;n===t.length&&i&&i(r)};p.each(t,function(t){var i={script:"js",css:"css"}[e]||null;if(!i){if(!/\.(\w+)$/.test(t))return;i=RegExp.$1;i=i.toLowerCase()}i==="js"?Q(t,s):i==="css"?te(t,s):null});return this},stringify:function(t,e){return{json:JSON.stringify(t),xml:this.serializeXML(t)}[e||"json"]},parse:function(t,e){return{json:JSON.parse(t),xml:this.parseXML(t),html:this.parseHTML(t)}[e||"json"]},serializeXML:function(t){try{var e=new XMLSerializer;return e.serializeToString(t)}catch(i){return""}},parseXML:function(t){if(!f.isString(t))return null;try{var e=new DOMParser;return e.parseFromString(t,"text/xml")}catch(i){return null}},on:function(t,e,i,n){R(t,e)?F.on(t,e,i,n):q.on(t,e,i,n);return this},once:function(t,e,i,n){R(t,e)?F.once(t,e,i,n):q.once(t,e,i,n);return this},off:function(t,e,i){R(t,e)?F.off(t,e,i):q.off(t,e,i);return this},listened:function(t,e){return R(t,e)?F.listened(t,e):q.listened(t,e)},release:function(t,e){R(t,e)?F.release(t,e):q.release(t,e);return this},trigger:function(t,e,i,n){R(t,e)?F.trigger(t,e,i,n):q.trigger(t,e,i,n);return this},now:function(){return(new Date).getTime()},guid:function(){return"guid_"+ ++u},template:function(t,e){if(!t||!e)return"";p.isArray(e)||(e=[e]);var i,n="";return p.map(e,function(e){n=t;while(i=/\{(\w+)\}/g.exec(n))n=n.replace(i[0],e[i[1]]);return n}).join("")}};function c(t){a.push(t);if(!r){o.on(window,"load",h);o.on(document,"DOMContentLoaded",h);r=true}}function h(){t.isReady=true;o.off(window,"load",h);o.off(document,"DOMContentLoaded",h);p.each(a,function(e){e.call(t)})}var f={isString:function(t){return typeof t==="string"},isEmpty:function(t){return!t},contains:function(t,e,i){return t.indexOf(e,i)>-1},repeat:function(t,e){e=Math.floor(Number(e));if(!l.isNumber(e)||e<0)return"";var i="";while(e--){i+=t}return i},range:function(t,e,i){return p.range(t,e,i).join("")},fill:function(t,e,i,n){if(o.isUndefined(e)||!l.isNumber(i)||i<=0||o.isUndefined(n))return"";return t.slice(0,e)+this.repeat(n,i)+t.slice(e+i)},ltrim:function(t){if(this.isEmpty(t))return t;if(t.ltrim)return t.ltrim();if(t.trimLeft)return t.trimLeft();return t.replace(/^\s+/,"")},rtrim:function(t){if(this.isEmpty(t))return t;if(t.rtrim)return t.rtrim();if(t.trimRight)return t.trimRight();return t.replace(/\s+$/,"")},trim:function(t){if(this.isEmpty(t))return t;if(t.trim)return t.trim();return this.rtrim(this.ltrim(t))},trimAll:function(t){if(this.isEmpty(t))return t;return t.replace(/\s/g,"")},camelCase:function(t,e){if(!this.isString(t))return"";o.isDefined(e)||(e="-");return t.replace(new RegExp(e+"(\\w)","g"),function(t,e){return e.toUpperCase()})},joinCase:function(t,e){if(!this.isString(t))return"";o.isDefined(e)||(e="-");return t.replace(/[A-Z]/g,function(t,i){return e+t.toLowerCase()})}};var l={isNumber:function(t){return typeof t==="number"},isNumeric:function(t){return!isNaN(parseFloat(t))&&isFinite(t)},zeroize:function(t,e){if(!this.isNumber(t))return"";o.isDefined(e)||(e=2);return t<Math.pow(10,e-1)?f.repeat("0",e-t.toString().length)+t:t.toString()}};var d={isPlainObject:function(t){if(!t||typeof t!=="object"||t.nodeType||t===t.window)return false;var e=Object.prototype.hasOwnProperty;try{if(t.constructor&&!e.call(t,"constructor")&&!e.call(t.constructor.prototype,"isPrototypeOf"))return false}catch(i){return false}for(var n in t){}return n===undefined||e.call(t,n)},isEmpty:function(t){return this.size(t)===0},size:function(t){var e=0;for(var i in t)e++;return e},equals:function(t,e){if(!this.isPlainObject(e))return false;if(!t&&!e)return true;if(this.size(t)!=this.size(e))return false;return this.each(t,function(t,i){if(!this.hasKey(e,i)||!o.equals(t,e[i]))return false;return true})},hasKey:function(t,e){return t.hasOwnProperty(e)},getKeys:function(t){return this.map(t,function(t,e){return e})},getValues:function(t){return this.map(t,function(t){return t})},each:function(t,e,i,n){if(!m.isFunction(e))return false;n||(n=this);var r,s;for(r in t){s=e.call(n,t[r],r,i);if(s===false)break}return!!s},filter:function(t,e,i,n){if(!m.isFunction(e))return[];n||(n=this);var r=[];this.each(t,function(t,n){if(e.call(this,t,n,i)){var s={};s[n]=t;r.push(s)}},null,n);return r},map:function(t,e,i,n){if(!m.isFunction(e))return[];n||(n=this);var r=[];this.each(t,function(t,n){r.push(e.call(this,t,n,i))},null,n);return r},clone:function(t,i){var n={};if(!i){this.each(t,function(t,e){n[e]=t});return n}this.each(t,function(t,i){if(t===null){n[i]=t;return true}var r=typeof t;if(r==="function"||p.contains(e,r)){n[i]=t;return true}n[i]=this.isPlainObject(t)?this.clone(t,true):p.clone(t,true)});return n},merge:function(t,e){if(!this.isPlainObject(e))return null;this.each(e,function(e,i){t[i]=e});return t}};var p={isArray:function(t){return i.call(t)==="[object Array]"},isArrayLike:function(t){if(t==null||t==window||t.document)return false;var e=t.length;if(o.isDomElement(t)&&e)return true;return f.isString(t)||p.isArray(t)||e===0||typeof e==="number"&&e>0&&e-1 in t},isEmpty:function(t){return!t||t.length===0},contains:function(t,e,i){return t.indexOf(e,i)>-1},repeat:function(t,e){e=Math.floor(Number(e));if(!l.isNumber(e)||e<0)return[];var i=[];while(e--){this.merge(i,t)}return i},range:function(t,e,i){if(o.isUndefined(t)||o.isUndefined(e))return[];var n=l.isNumber(t),r=!n&&f.isString(t);if(!n&&!r||n&&!l.isNumber(e)||r&&!f.isString(e))return[];if(o.isDefined(i)&&!l.isNumber(i))return[];t=r&&t.charCodeAt(0)||t;e=r&&e.charCodeAt(0)||e;i=i||1;if(i<0){t=[e,e=t][0];i=-i}var s=[],a=function(t){return n?t:String.fromCharCode(t)};if(t<=e){do{s.push(a(t))}while((t+=i)<=e)}else{do{s.push(a(t))}while((t-=i)>=e)}return s},fill:function(t,e,i,n){if(o.isUndefined(e)||!l.isNumber(i)||i<=0||o.isUndefined(n))return[];var r=0;this.each(t,function(e,s){if(r>=i)return false;t[s]=n;r++},e);return t},getKeys:function(t){return this.map(t,function(t,e){return e})},getValues:function(t){return t.concat()},each:function(t,e){if(!m.isFunction(e))return false;var i=0,n=t.length,r,s,a;if(arguments.length>2){var u=arguments[2],c=arguments[3],h=arguments[4],f=arguments[5];o.isDefined(f)&&(a=f);o.isDefined(h)&&(s=h);o.isDefined(c)&&(l.isNumber(c)&&(n=c)||(s=c,a=h));o.isDefined(u)&&(l.isNumber(u)&&(i=u)||(s=u,a=c))}for(;i<n;i++){r=e.call(a||this,t[i],i,s);if(r===false)break}return!!r},reach:function(t,e){if(!m.isFunction(e))return false;var i=t.length-1,n=0,r,a,u;if(arguments.length>2){var c=arguments[2],h=arguments[3],f=arguments[4],d=arguments[5];o.isDefined(d)&&(u=d);o.isDefined(f)&&(a=f);o.isDefined(h)&&(l.isNumber(h)&&(n=h)||(a=h,u=f));o.isDefined(c)&&(l.isNumber(c)&&(i=c)||(a=c,u=h))}for(;i>=n;i--){r=e.call(u||this,t[s],i,a);if(r===false)break}return!!r},filter:function(t,e,i,n){if(!m.isFunction(e))return[];n||(n=this);var r=[];this.each(t,function(t,s){e.call(n,t,s,i)&&r.push(t)});return r},map:function(t,e,i,n){if(!m.isFunction(e))return[];n||(n=this);var r=[];this.each(t,function(t,s){r.push(e.call(n,t,s,i))});return r},equals:function(t,e){if(!this.isArray(e))return false;if(!t&&!e)return true;if(t.length!=e.length)return false;var i=t.length;while(i--){if(!o.equals(t[i],e[i]))return false}return true},clone:function(t,i){if(!i)return t.concat();var n=[];this.each(t,function(t,i){if(t===null){n[i]=t;return true}var r=typeof t;if(r==="function"||p.contains(e,r)){n[i]=t;return true}n[i]=this.isArray(t)?this.clone(t,true):d.clone(t,true)});return n},order:function(t,e,i){if(!this.isArray(t)||this.isEmpty(t))return;var n=!i||i==="asc"?-1:1,r=p.isArray(e);t.sort(function(t,i){var s=r?e[0]:e;if(t[s]===i[s]&&r){p.each(e,function(e){if(t[e]!==i[e]){s=e;return false}})}t=t[s]||t;i=i[s]||i;if(t===undefined)return n;if(i===undefined)return-n;return t<i?n:t>i?-n:0})},unique:function(t,e){if(!this.isArray(t)||this.isEmpty(t))return null;var i=[],n={};this.each(t,function(t){if(e){if(!d.hasKey(t,e)){i.push(t);return true}if(n[t[e]]===undefined){i.push(t);n[t[e]]=t}}else{if(n[t]===undefined){i.push(t);n[t]=t}}});return i},merge:function(t,e){if(!this.isArray(e)&&!this.isArrayLike(e))return t;this.each(e,function(e){t[t.length++]=e});return t}};var g={isDate:function(t){return i.call(t)==="[object Date]"},formatDate:function(t,e){l.isNumber(t)&&(t=new Date(t));if(!this.isDate(t))return"";e=e||"yyyy-MM-dd hh:mm:ss";var i={"M+":t.getMonth()+1,"d+":t.getDate(),"H+":t.getHours()%12===0?12:t.getHours()%12,"h+":t.getHours(),"m+":t.getMinutes(),"s+":t.getSeconds(),"q+":Math.floor((t.getMonth()+3)/3),S:t.getMilliseconds()};/(y+)/.test(e)&&(e=e.replace(RegExp.$1,(t.getFullYear()+"").substr(4-RegExp.$1.length)));d.each(i,function(t,i){new RegExp("("+i+")").test(e)&&(e=e.replace(RegExp.$1,RegExp.$1.length===1?t:("00"+t).substr((""+t).length)))});return e}};var m={isFunction:function(t){return typeof t==="function"},empty:function(){return function(){}},isEmpty:function(t){var e=t.toString();return e.substr(e.indexOf("{")+1,1)==="}"}};o.extend(o,l);o.extend(o,g);o.augment(o,f,["isString","ltrim","rtrim","trim","trimAll","camelCase","joinCase"]);o.augment(o,d,["isPlainObject"]);o.augment(o,p,["isArray","isArrayLike","order","unique"]);o.augment(o,m,["isFunction"]);var v={encodeHTML:function(t){return(t||"").replace(/&/g,"&").replace(/\</g,"<").replace(/\>/g,">").replace(/ /g," ")},decodeHTML:function(t){return(t||"").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/ /g," ")},isHTML:function(t){var e=this.parseHTML(t);return e!=null&&e.length},parseHTML:function(t){if(!f.isString(t))return null;var e;try{var i=new DOMParser;e=i.parseFromString(t,"text/html");e&&(e=e.body.children||e.body.childNodes)}catch(n){e=null}return new ae(e)}};o.extend(o,v);var y={joinURL:function(t,e,i){if(!d.isPlainObject(t))return"";e||(e="&");var n="";d.each(t,function(t,r){n+=r+"="+(i&&encodeURIComponent(t)||t);n+=e});n=n.substring(0,n.length-e.length);return n},splitURL:function(t,e,i){if(!f.isString(t))return null;e||(e="&");var n=t.split(e),r,s={};p.each(n,function(t,e){r=t.split("=");s[r[0]]=i&&decodeURIComponent(r[1])||r[1]});return s},parseURL:function(t){var e={protocol:"",host:"",port:"",hostWidthPort:"",path:"",directory:"",file:"",query:"",hash:"",isHttp:false,isHttps:false,isEMail:false};if(f.isString(t)&&!f.isEmpty(t)){var i=["source","protocol","hostWidthPort","userInfo","user","password","host","ipv4","ipv6","basename","domain","port","relative","path","directory","file","query","hash"],n=/^(?:(?![^:@]+:[^:@\/]*@)([^[:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?((?:(\d+\.\d+\.\d+\.\d+)|\[([a-fA-F0-9:]+)\]|([^.:\/?#]*))(?:\.([^:\/?#]*))?)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/;var r=n.exec(t);var s={};var a=18;while(a--)s[i[a]]=r[a]||"";for(var u in e){e[u]=s[u]}e.isHttp=e.protocol==="http"||e.protocol==="https"||e.protocol==="rtmp"||e.protocol==="rtmps";e.isHttps=e.protocol==="https";e.isEMail=e.protocol==="mailto"}return e},toLink:function(t,e,i){t=t||"";return t.replace(/(http[s]?:\/\/[^\s\[]+)/gi,'<a target="'+(i||"_blank")+'" href="$1">'+(e||t)+"</a>")}};o.extend(o,y);var w=/^#([0-9a-f]{3}|[0-9a-f]{6})$/i,b=/^(rgb[a]?)/i,x=/(?:\(|\)|rgb[a]?)*/gi;var S={create:function(t,e,i,n,r){f.isString(t)&&(t=parseInt(t,16));f.isString(e)&&(e=parseInt(e,16));f.isString(i)&&(i=parseInt(i,16));return n?o.isDefined(r)?"RGBA("+t+","+e+","+i+","+r+")":"RGB("+t+","+e+","+i+")":"#"+t.toString(16)+e.toString(16)+i.toString(16)},red:function(t){if(!t)return;b.test(t)||(t=this.rgb(t));return parseInt(t.replace(x,"").split(",")[0])},green:function(t){if(!t)return;b.test(t)||(t=this.rgb(t));return parseInt(t.replace(x,"").split(",")[1])},blue:function(t){if(!t)return;b.test(t)||(t=this.rgb(t));return parseInt(t.replace(x,"").split(",")[2])},alpha:function(t){if(!t||!/^rgba\(\d+,\d+,\d+,[\d\.]+\)$/i.test(t))return;return parseFloat(t.replace(x,"").split(",")[3])},hex:function(t){if(b.test(t)){var e=t.replace(x,"").split(","),i="#",n=0,r;while(n<3){r=Number(e[n]).toString(16);r.length===1&&(r="0"+r);i+=r;n++}return i}if(w.test(t)){if(t.length===7)return t;if(t.length===4){var e=t.replace(/#/,"").split(""),i="#",n=0,s=e.length;for(;n<s;n++){i+=e[n]+e[n]}return i}}return t},rgb:function(t,e){if(!t)return"";t=t.toUpperCase();if(w.test(t)){if(t.length===4){var i="#",n=1;while(n<=3){i+=t.slice(n,n+1).concat(t.slice(n,n+1));n++}t=i}var r=[],n=1;while(n<=6){r.push(parseInt("0x"+t.slice(n,n+2)));n+=2}o.isDefined(e)&&r.push(e);return(o.isUndefined(e)&&"RGB"||"RBGA")+"("+r.join(",")+")"}o.isDefined(e)&&(t=t.replace(/rgb/i,"RGBA").replace(")",","+e+")"));return t}};o.plugin("Color",S);var T={},O=[],j=["click","dblclick","mousedown","mousemove","mouseup","mouseover","mouseout","mouseenter","mouseleave","mousewheel","drag","drop","dragstart","dragover","dragend","dragenter","dragleave"],L=["keydown","keypress","keyup"],A=["change","input","invalid","select","submit","reset","focus","blur"],E=["resize","scroll","load","DOMContentLoaded","unload","error","abort","message","open","online","offline","redo","undo","storage"],N=["success","complete","fail","timeout","destroy","timer","start","stop"],D={},C={},_=0,R=function(t,e){return(o.isDomElement(t)||t==window||t==document)&&p.contains(O,e)},H=function(){p.each(arguments,function(t){p.each(t,function(t){T[t.toUpperCase()]=t})})},k=function(t){var e=null;d.each(C,function(i,n){if(i===t){e=n;return false}});return e};O=j.concat(L,A,E);H(O,N);o.eventType=T;function P(t,e,i){var n=k(t);if(!n){n="events_"+_++;C[n]=t}D[n]||(D[n]={});D[n][e]||(D[n][e]=[]);var r=D[n][e];p.each(r,function(t){if(t.fn===i){n=false;return false}});return n}var F={on:function(t,e,i,n){function r(t,e,i,n){var r=P(t,e,i);if(!r)return;var s=function(t){var e=arguments.callee;e.fn.call(this,t,e.arg)};s.fn=i;s.arg=n;D[r][e].push(s);t.addEventListener(e,s,false)}if(d.isPlainObject(e)){n=i;d.each(e,function(e,i){r(t,i,e,n)});return}r(t,e,i,n)},off:function(t,e,i){function n(t,e,i){var n=this.handlers(t,e);p.each(n,function(r,s){if(r.fn===i||r.fn.sfn===i){t.removeEventListener(e,r,false);n.splice(s,1);delete r.fn.sfn;delete r.fn;delete r.arg;return false}})}if(d.isPlainObject(e)){d.each(e,function(e,i){n.call(this,t,i,e)},null,this);return}n.call(this,t,e,i)},once:function(t,e,i,n){function r(t,e,i,n,r){function s(t){r.off(t.target,t.type,arguments.callee);i.call(this,t,n)}s.sfn=i;r.on(t,e,s)}if(d.isPlainObject(e)){n=i;d.each(e,function(e,i){r(t,i,e,n,this)},null,this);return}r(t,e,i,n,this)},listened:function(t,e){return this.handlers(t,e).length>0},handlers:function(t,e){var i=k(t);return i&&D[i]&&D[i][e]||[]},release:function(t,e){if(!e){var i=k(t),n=i&&D[i]||{};d.each.call(this,n,function(e,i){this.releaseEvents(t,i,e||[])});return}this.releaseEvents(t,e,this.handlers(t,e))},releaseEvents:function(t,e,i){while(i.length){var n=i.shift();t.removeEventListener(e,n,false);delete n.fn.sfn;delete n.fn;delete n.arg}},trigger:function(t,e,i,n){var r=j.indexOf(e)>-1;try{var s=document.createEvent(r?"MouseEvents":"HTMLEvents");i&&(s.data=i);n||(n=t);r?s.initMouseEvent(e,true,true,t.ownerDocument.defaultView,1,0,0,0,0,false,false,false,false,0,null):s.initEvent(e,true,true);t.dispatchEvent.call(n,s)}catch(a){}}};var q={on:function(t,e,i,n){function r(t,e,i,n){var r=P(t,e,i);if(!r)return;var s=function(t,e,i){var n=arguments.callee;n.fn.call(this,new U(t,e,i),n.arg)};s.fn=i;s.arg=n;D[r][e].push(s)}if(d.isPlainObject(e)){n=i;d.each(e,function(e,i){r(t,i,e,n)});return}r(t,e,i,n)},off:function(t,e,i){function n(t,e,i){var n=this.handlers(t,e);p.each(n,function(t,e){if(t.fn===i||t.fn.sfn===i){n.splice(e,1);delete t.fn.sfn;delete t.fn;delete t.arg;return false}})}if(d.isPlainObject(e)){d.each(e,function(e,i){n.call(this,t,i,e)},null,this);return}n.call(this,t,e,i)},once:function(t,e,i,n){function r(t,e,i,n,r){function s(t){r.off(t.target,t.type,arguments.callee);i.call(this,t,n)}s.sfn=i;r.on(t,e,s)}if(d.isPlainObject(e)){n=i;d.each(e,function(e,i){r(t,i,e,n,this)},null,this);return}r(t,e,i,n,this)},listened:function(t,e){return this.handlers(t,e).length>0},handlers:function(t,e){var i=k(t);return i&&D[i]&&D[i][e]||[]},release:function(t,e){if(!e){var i=k(t),n=i&&D[i]||{};d.each.call(this,n,function(t){this.releaseEvents(t||[])});return}this.releaseEvents(this.handlers(t,e))},releaseEvents:function(t){while(t.length){var e=t.shift();delete e.fn.sfn;delete e.fn;delete e.arg}},trigger:function(t,e,i,n){var r=this.handlers(t,e);n=n||t;p.each(r,function(r){r.call(n,t,e,i)})}};function U(t,e,i){this.target=t;this.type=e;this.timeStamp=o.now();this.data=i}o.Dispatcher=function(){if(!(this instanceof o.Dispatcher))return new o.Dispatcher};o.Dispatcher.prototype={on:function(t,e,i){q.on(this,t,e,i);return this},off:function(t,e){q.off(this,t,e);return this},once:function(t,e,i){q.once(this,t,e,i);return this},listened:function(t){return q.listened(this,t)},release:function(t){q.release(this,t);return this},trigger:function(t,e,i){q.trigger(this,t,e,i);return this}};o.Timer=function(t,e){if(!(this instanceof o.Timer))return new o.Timer(t,e);o.Dispatcher.call(this);this.timer=-1;this.delay=t||0;this.curCount=0;this.totalCount=e||0;this.running=false};o.inherit(o.Timer,o.Dispatcher,{start:function(){if(this.timer===-1&&this.delay>0){var t=this;this.timer=setInterval(function(){t.curCount++;t.trigger("timer",null,t);if(t.totalCount>0&&t.curCount===t.totalCount){t.stop();t.trigger("complete",null,t)}},this.delay*1e3);this.running=true;this.trigger("start",null,this)}},stop:function(){if(this.timer!=-1){clearInterval(this.timer);this.timer=-1;this.curCount=0;this.totalCount=0;this.running=false;this.trigger("stop",null,this)}},reset:function(){if(this.timer!=-1){this.curCount=0;this.running=false;this.trigger("reset",null,this)}}});var I={JSON:"json",XML:"xml",HTML:"html",TXT:"txt",BINARY:"binary",BASE64:"base64"};var W={FORM:"application/x-www-form-urlencoded",JSON:"application/json",JS:"application/x-javascript",XML:"text/xml",HTML:"text/html",TXT:"text/plain",BINARY:"application/octet-stream"};var z={IO_ERROR:0,URL_ERROR:1,NOT_FOUND:2,TIME_OUT:3,PARSE_ERROR:4};o.dataType=I;o.contentType=W;o.errorCode=z;o.ajaxSettings={jsonp:false,callback:"callback",async:true,method:"GET",dataType:"json",contentType:W.FORM,parse:true,cache:false,timeout:0,header:null};o.Loader=function(t,e){if(!(this instanceof o.Loader))return new o.Loader(t,e);o.Dispatcher.call(this);e=e||{};this.url=t;this.method=(e.method||o.ajaxSettings.method).toUpperCase();this.params=e.params;this.dataType=e.dataType||o.ajaxSettings.dataType;this.contentType=e.contentType||o.ajaxSettings.contentType;this.async=o.isUndefined(e.async)&&o.ajaxSettings.async||e.async;this.parse=o.isUndefined(e.parse)&&o.ajaxSettings.parse||e.parse;this.cache=o.isUndefined(e.cache)&&o.ajaxSettings.cache||e.cache;this.timeout=o.isUndefined(e.timeout)&&o.ajaxSettings.timeout||e.timeout;this.data=null;this.header=null;this.timeoutWatcher=null;this.requester=new XMLHttpRequest};o.inherit(o.Loader,o.Dispatcher,{beforeSend:function(t){d.isPlainObject(t)&&(this.header=t)},send:function(t){f.isEmpty(t)||(this.url=t);if(f.isEmpty(this.url)){this.trigger("fail",{code:z.URL_ERROR,message:"url error"},this);return}var e=this;this.requester.onreadystatechange=function(){X(e)};if(this.timeout>0){this.timeoutWatcher=setTimeout(function(){B(e)},this.timeout*1e3)}V(this);this.requester.send(this.method==="POST"&&(d.isPlainObject(this.params)&&y.joinURL(this.params,"&",true)||this.params||""))},abort:function(){if(this.timeoutWatcher){clearTimeout(this.timeoutWatcher);this.timeoutWatcher=null}this.requester.abort();this.data=null;this.trigger("destroy",null,this)}});function V(t){t.cache||t.method!=="GET"||(t.url+=(t.url.indexOf("?")>-1?"&":"?")+"_="+o.now());t.requester.open(t.method.toUpperCase(),t.url,t.async);t.header&&d.each(t.header,function(e,i){t.requester.setRequestHeader(i,e)});t.requester.setRequestHeader("Content-type",t.contentType);t.cache||t.requester.setRequestHeader("Cache-Control","no-cache")}function X(t){t.timeout&&clearTimeout(t.timeoutWatcher);if(t.requester.readyState===4){if(t.requester.status===200){var e=t.requester.responseText;if(t.parse){try{e=J(t.dataType,e,t.requester.responseXML)}catch(i){t.trigger("fail",{code:z.PARSE_ERROR,message:"JSON parse error"},t);return}}t.data=e;t.trigger("success",null,t)}else if(t.requester.status===404){t.trigger("fail",{code:z.NOT_FOUND,message:"404,Not Found"},t)}else{t.trigger("fail",{code:z.IO_ERROR,message:"unknow error"},t)}}}function J(t,e,i){return{json:JSON.parse(e),xml:i}[t]||e}function B(t){t.abort();t.trigger("timeout",{code:z.TIME_OUT,message:"time out error"},t)}var $=0;o.callbacks={};o.JSONPer=function(t,e){if(!(this instanceof o.JSONPer))return new o.JSONPer(t,e);o.Dispatcher.call(this);e=e||{};this.url="";this.dataType=e.dataType||o.ajaxSettings.dataType;this.async=o.isUndefined(e.async)?o.ajaxSettings.async:e.async;this.parse=o.isUndefined(e.parse)?o.ajaxSettings.parse:e.parse;this.cache=o.isUndefined(e.cache)?o.ajaxSettings.cache:e.cache;this.timeout=o.isUndefined(e.timeout)?o.ajaxSettings.timeout:e.timeout;this.callback=e.callback||o.ajaxSettings.callback;this.requestID="";this.callbackName="";this.data=null;this.requester=null;this.timeoutWatcher=null};o.inherit(o.JSONPer,o.Dispatcher,{send:function(t){f.isEmpty(t)||(this.url=t);if(f.isEmpty(this.url)){this.trigger("fail",{code:z.URL_ERROR,message:"url error"},this);return}this.requestID=this.callback+"_"+ ++$;this.url+=(this.url.indexOf("?")===-1?"?":"&")+this.callback+"=My.callbacks."+this.requestID;this.cache||this.method!=="GET"||(this.url+="&_="+o.now());this.requester=document.createElement("script");this.requester.setAttribute("id",this.requestID);this.requester.setAttribute("type","text/javascript");this.async&&this.requester.setAttribute("async","async");var e=this;o.callbacks[this.requestID]=function(t){G(e,t)};this.requester.onerror=function(){Y(e)};if(this.timeout>0){this.timeoutWatcher=setTimeout(function(){Z(e)},this.timeout*1e3)}this.requester.setAttribute("src",this.url);document.getElementsByTagName("head")[0].appendChild(this.requester)},abort:function(t){clearTimeout(this.timeoutWatcher);this.timeoutWatcher=0;this.requester.parentNode.removeChild(this.requester);this.requester=null;delete o.callbacks[this.requestID];t||this.trigger("destroy",null,this)}});function G(t,e){if(t.parse){try{e=K(t.dataType,e)}catch(i){t.abort();t.trigger("fail",{code:z.PARSE_ERROR,message:"JSON parse error"},t);return}}t.data=e;t.trigger("success",null,t);t.abort(true)}function K(t,e){return{json:JSON.parse(e),xml:o.parseXML(e)}[t]||e}function Y(t){t.abort();t.trigger("fail",{code:z.IO_ERROR,message:"unknow error"},t)}function Z(t){t.abort();t.trigger("timeout",{code:z.TIME_OUT,message:"time out error"},t)}function Q(e,i){t("head").append(o.create("script").attr({type:"text/javascript",src:e}).load(function(){i&&i.call(this);t(this).release()}).error(function(){i&&i.call(this,"This script file is loaded error!");t(this).release()}))}function te(e,i){t("head").append(o.create("link").attr({rel:"stylesheet",type:"text/css",href:e}).load(function(){i&&i.call(this);t(this).release()}).error(function(){i&&i.call(this,"This css file is loaded error!");t(this).release()}))}var ee={cookie:function(t,e,i,n,r,s){if(e===undefined){var a=encodeURIComponent(t)+"=",u=document.cookie.indexOf(a),o=null;if(u>-1){var c=document.cookie.indexOf(";",u);c===-1&&(c=document.cookie.length);o=decodeURIComponent(document.cookie.substring(u+a.length,c))}return o}else{var h=encodeURIComponent(t)+"="+encodeURIComponent(e);i instanceof Date&&(h+=";expires="+i.toGMTString());n&&(h+=";path="+n);r&&(h+=";domain="+r);s&&(h+=";secure");document.cookie=h}},removeCookie:function(t,e,i,n){this.cookie(t,"",new Date(0),e,i,n)}};o.extend(o,ee);function ie(t){do{t=t.previousSibling}while(t&&!o.isDomElement(t));return t}function ne(t){do{t=t.nextSibling}while(t&&!o.isDomElement(t));return t}function re(t){if(l.isNumber(t)||f.isString(t)&&parseFloat(t).toString()!==t)return t+"px";return t}function se(t,e){p.each(t,function(t){o.isMy(t)?se(t,e):e[e.length++]=t})}function ae(t,e){if(m.isFunction(t)){c(t);return this}if(o.isMy(t))return t;this[0]=null;this.length=0;if(t){if(o.isDomElement(t)||t===document||t===window){this[0]=t;this.length=1}else if(f.isString(t)){se(v.isHTML(t)?v.parseHTML(t):o.query(t,e),this)}else if(p.isArray(t)||p.isArrayLike(t)){se(t,this)}}return this}o._=ae.prototype={each:function(t,e){if(m.isFunction(t)){var i=0,n=this.length,r,s;for(;i<n;i++){r=this[i];if(r){s=t.call(r,i,e);if(s===false)break}}}return this},reach:function(t,e){if(m.isFunction(t)){var i=this.length,n,r;for(;i>=0;i--){n=this[i];if(n){r=t.call(n,i,e);if(r===false)break}}}return this},map:function(t,e){if(m.isFunction(t)){return new ae(p.map(this,function(i,n){return t.call(i,i,n,e)}))}return this},isEmpty:function(){return this.length===0},elements:function(){return p.map(this,function(t){return t})},add:function(e){e&&p.merge(this,t(e));return this},index:function(){return this[0]&&this[0].parentNode?this.prevAll().length:-1},get:function(t){return t>=0&&t<this.length&&this[t]||null},first:function(){return new ae(this[0])},last:function(){return new ae(this[this.length-1])},nth:function(t){return new ae(this.get(t-1))},has:function(e){if(e){var i=t(e),n=false;this.each(function(){for(var t=0,e=i.length;t<e;t++){if(this===i[t]){n=true;return false}}});return n}return false},is:function(t){return this.filter(t).length>0},not:function(e){var i=[],n=t(e);n.length&&this.each(function(){for(var t=0,e=n.length;t<e;t++){this===n[t]||i.push(this)}})||(i=this.elements());return new ae(i)},filter:function(e){var i=[];if(e){var n=t(e);this.each(function(){for(var t=0,e=n.length;t<e;t++){this===n[t]&&i.push(this)}})}return new ae(i)},find:function(t){var e=[];if(t){var i=f.isString(t),n=!i&&o.isMy(t),r=!n&&o.isDomElement(t);if(i||n||r){this.each(function(){if(i){p.merge(e,o.query(t,this));return}if(n){p.each(o.query("*",this),function(i){t.has(i)&&e.push(i)});return}p.each(o.query("*",this),function(i){i===t&&e.push(i)})})}}return new ae(e)},children:function(t){var e=[];this.each(function(){var i=this.children||this.childNodes||[];if(t){var n=o.query(t,this);function r(t){p.each(n,function(i){if(i===t){e.push(t);return false}});return true}}p.each(i,function(i){i.tagName&&(t&&r(i)||e.push(i))})});return new ae(e)},parent:function(){return new ae(this[0]&&this[0].parentNode)},parents:function(e){var i=[],n=this[0];if(n){n=n.parentNode;while(n&&o.isDomElement(n)){if(e){t(n.parentNode).children(e).length&&(i[i.length++]=n);n=n.parentNode;continue}i[i.length++]=n;n=n.parentNode}}return new ae(i)},prepend:function(e){if(e){v.isHTML(e)&&(e=o.parseHTML(e));e=t(e);this.each(function(t){var i=t&&e.clone(true)||e,n=this;i.reach(function(){n.insertBefore(this,n.firstChild)})})}return this},prependTo:function(e){if(e){v.isHTML(e)&&(e=o.parseHTML(e));
t(e).prepend(this)}return this},append:function(e){if(e){v.isHTML(e)&&(e=o.parseHTML(e));e=t(e);this.each(function(t){var i=t&&e.clone(true)||e,n=this;i.reach(function(){n.appendChild(this)})})}return this},appendTo:function(e){if(e){v.isHTML(e)&&(e=o.parseHTML(e));t(e).append(this)}return this},before:function(e){if(e){v.isHTML(e)&&(e=o.parseHTML(e));e=t(e);this.each(function(t){var i=t&&e.clone(true)||e,n=this;i.reach(function(){n.parentNode.insertBefore(this,n)})})}return this},insertBefore:function(e){if(e){v.isHTML(e)&&(e=o.parseHTML(e));t(e).before(this)}return this},after:function(e){if(e){v.isHTML(e)&&(e=o.parseHTML(e));e=t(e);this.each(function(t){var i=t&&e.clone(true)||e,n=this;i.reach(function(){n.parentNode.insertBefore(this,n.nextSibling)})})}return this},insertAfter:function(e){if(e){v.isHTML(e)&&(e=o.parseHTML(e));t(e).after(this)}return this},replace:function(e){var i=[];if(e){v.isHTML(e)&&(e=o.parseHTML(e));e=t(e);this.each(function(t){var n=t&&e.clone(true)||e,r=this,s=this.parentNode;s&&n.reach(function(){var t=s.replaceChild(this,r);t&&i.push(t)})})}return new ae(i)},replaceTo:function(e){if(e){v.isHTML(e)&&(e=o.parseHTML(e));t(e).replace(this)}return this},remove:function(t){var e=[];this.each(function(){var i=this.parentNode;if(i){var n;if(!t){n=i.removeChild(this);n&&e.push(n)}else{var r=new ae(i).children(t);if(r.has(this)){n=i.removeChild(this);n&&e.push(n)}}}});return new ae(e)},clear:function(){this.remove();this.removeData();this.release()},prev:function(t){var e=[];this.each(function(){if(!t){var i=ie(this);i&&e.push(i);return}var n=new ae(this.parentNode).children(t);if(n.length){var i=this;do{i=ie(i)}while(i&&!n.has(i));i&&e.indexOf(i)===-1&&e.push(i)}});return new ae(e)},prevAll:function(t){var e=[];this.each(function(){function i(i){do{i=ie(i);i&&(t?n.has(i):true)&&e.indexOf(i)===-1&&e.push(i)}while(i)}if(!t){i(this);return}var n=new ae(this.parentNode).children(t);n.length&&i(this)});return new ae(e)},next:function(t){var e=[];this.each(function(){if(!t){var i=ne(this);i&&e.push(i);return}var n=new ae(this.parentNode).children(t);if(n.length){var i=this;do{i=ne(i)}while(i&&!n.has(i));i&&e.indexOf(i)===-1&&e.push(i)}});return new ae(e)},nextAll:function(t){var e=[];this.each(function(){function i(i){do{i=ne(i);i&&(t?n.has(i):true)&&e.indexOf(i)===-1&&e.push(i)}while(i)}if(!t){i(this);return}var n=new ae(this.parentNode).children(t);n.length&&i(this)});return new ae(e)},siblings:function(t){var e=[];this.each(function(){function i(i){var r=i;do{r=ie(r);r&&(t?n.has(r):true)&&e.indexOf(r)===-1&&e.push(r)}while(r);do{i=ne(i);i&&(t?n.has(i):true)&&e.indexOf(i)===-1&&e.push(i)}while(i)}if(!t){i(this);return}var n=new ae(this.parentNode).children(t);n.length&&i(this)});return new ae(e)},clone:function(t){return new ae(this.map(function(){return this.cloneNode(t)}))},html:function(t){if(t===undefined){var e=this[0];return e&&e.innerHTML||""}this.each(function(){o.isDefined(this.innerHTML)&&(this.innerHTML=t)});return this},ohtml:function(t){if(t===undefined){var e=this[0];return e&&e.outerHTML||""}this.replace(t);return this},text:function(t){if(t===undefined){var e=this[0];return e&&e.textContent||""}this.each(function(){o.isDefined(this.textContent)&&(this.textContent=t)});return this},val:function(t){var e=["INPUT","TEXTAREA","SELECT","OPTION"];if(t===undefined){var i=this[0];if(i&&e.indexOf(i.tagName)!=-1){if(i.tagName===e[2]&&i.multiple){var n=[];for(var r=0,s=i.length,a;r<s;r++){a=i.options[r];a.selected&&n.push(a.value)}return n}return i.value}return}var u=[];this.each(function(){if(e.indexOf(this.tagName)!=-1){if(p.isArray(t)){if(this.tagName=e[0]&&(this.type==="radio"||this.type==="checkbox")){this.checked=t.indexOf(this.value)>-1}else if(this.tagName===e[2]&&this.multiple){for(var i=0,n=this.length,r;i<n;i++){r=this.options[i];r.selected=t.indexOf(r.value)>-1}}else this.value=t[0]}else this.value=t;u.push(this)}});return new ae(u)},attr:function(t,e){var i=d.isPlainObject(t),n=["checked","selected","disabled","enabled","required","readonly","draggable"];if(o.isUndefined(e)&&!i){var r=this[0];if(r){fn=function(t){return p.contains(n,t)?t==="enabled"?r.getAttribute("disabled")==null:r.getAttribute(t)!=null:r.getAttribute(t)};if(f.isString(t))return fn(t);if(p.isArray(t)){return p.map(t,function(t){return fn(t)})}}return}var s=t;i||(s={},s[t]=e);d.each.call(this,s,function(t,e){var i=p.contains(n,e);this.each(function(){if(i){if(typeof t==="boolean"||t===e||t===""){if(e==="enabled"){e="disabled";t=!t}t?this.setAttribute(e,e):this.removeAttribute(e)}return}this.setAttribute(e,t)})});return this},removeAttr:function(t){f.isString(t)&&(t=[t]);p.each.call(this,t,function(t){this.each(function(){this.removeAttribute(t)})});return this},data:function(t,e){var i=d.isPlainObject(t);if(o.isUndefined(e)&&!i){var n=this[0];if(n){if(f.isString(t))return n.dataset[t];if(p.isArray(t)){return p.map(t,function(t){return n.dataset[t]})}}return}var r=t;i||(r={},r[t]=e);d.each.call(this,r,function(t,e){this.each(function(){this.dataset[e]=t})});return this},removeData:function(t){if(o.isEmpty(t)){this.each(function(){for(var t in this.dataset)this.removeAttribute("data-"+t)});return this}f.isString(t)&&(t=[t]);p.each.call(this,t,function(t){this.removeAttr("data-"+t)});return this},width:function(t){if(t===undefined){var e=this.first(),i=e[0];if(i){if(i===window||i===document)return window.innerWidth||document.documentElement.clientWidth;var n=i.offsetWidth;n-=Math.round(parseFloat(e.style("padding-left")))||0;n-=Math.round(parseFloat(e.style("padding-right")))||0;n-=Math.round(parseFloat(e.style("border-left-width")))||0;n-=Math.round(parseFloat(e.style("border-right-width")))||0;var r=e.style("box-sizing");if(r==="border-box"){n-=Math.round(parseFloat(e.style("margin-left")))||0;n-=Math.round(parseFloat(e.style("margin-right")))||0}return n>0?n:0}return}var s=re(t);s&&this.style("width",s);return this},height:function(t){if(t===undefined){var e=this.first(),i=this[0];if(i){if(i===window||i===document)return window.innerHeight||document.documentElement.clientHeight;var n=i.offsetHeight;n-=Math.round(parseFloat(e.style("padding-top")))||0;n-=Math.round(parseFloat(e.style("padding-bottom")))||0;n-=Math.round(parseFloat(e.style("border-top-width")))||0;n-=Math.round(parseFloat(e.style("border-bottom-width")))||0;var r=this.style("box-sizing");if(r==="border-box"){n-=Math.round(parseFloat(e.style("margin-top")))||0;n-=Math.round(parseFloat(e.style("margin-bottom")))||0}return n>0?n:0}return}var s=re(t);s&&this.style(" height",s);return this},size:function(t){if(t===undefined){return{width:this.width(),height:this.height()}}this.width(t.width);this.height(t.height);return this},innerWidth:function(){var t=this.first(),e=this[0];if(e){if(e===window||e===document)return window.innerWidth||document.documentElement.clientWidth;var i=e.offsetWidth;var n=t.style("box-sizing");if(n==="border-box"){i-=Math.round(parseFloat(t.style("margin-left")))||0;i-=Math.round(parseFloat(t.style("margin-right")))||0}i-=Math.round(parseFloat(t.style("border-left-width")))||0;i-=Math.round(parseFloat(t.style("border-right-width")))||0;return i>0?i:0}},innerHeight:function(){var t=this.first(),e=this[0];if(e){if(e===window||e===document)return window.innerHeight||document.documentElement.clientHeight;var i=e.offsetHeight;var n=this.style("box-sizing");if(n==="border-box"){i-=Math.round(parseFloat(this.style("margin-top")))||0;i-=Math.round(parseFloat(this.style("margin-bottom")))||0}i-=Math.round(parseFloat(t.style("border-top-width")))||0;i-=Math.round(parseFloat(t.style("border-bottom-width")))||0;return i>0?i:0}},offsetWidth:function(){var t=this.first(),e=this[0];if(e){if(e===window||e===document)return window.innerWidth||document.documentElement.clientWidth;var i=e.offsetWidth;var n=t.style("box-sizing");if(n==="border-box"){i-=Math.round(parseFloat(t.style("margin-left")))||0;i-=Math.round(parseFloat(t.style("margin-right")))||0}return i>0?i:0}},offsetHeight:function(){var t=this.first(),e=this[0];if(e){if(e===window||e===document)return window.innerHeight||document.documentElement.clientHeight;var i=e.offsetHeight;var n=this.style("box-sizing");if(n==="border-box"){ww-=Math.round(parseFloat(t.style("margin-top")))||0;ww-=Math.round(parseFloat(t.style("margin-bottom")))||0}return i>0?i:0}},outerWidth:function(){var t=this.first(),e=this[0];if(e){if(e===window||e===document)return window.innerWidth||document.documentElement.clientWidth;var i=e.offsetWidth;var n=t.style("box-sizing");if(n!="border-box"){i+=Math.round(parseFloat(t.style("margin-left")))||0;i+=Math.round(parseFloat(t.style("margin-right")))||0}return i>0?i:0}},outerHeight:function(){var t=this.first(),e=this[0];if(e){if(e===window||e===document)return window.innerHeight||document.documentElement.clientHeight;var i=e.offsetHeight;var n=t.style("box-sizing");if(n!="border-box"){i+=Math.round(parseFloat(t.style("margin-top")))||0;i+=Math.round(parseFloat(t.style("margin-bottom")))||0}return i>0?i:0}},offsetParent:function(){var t=this[0];return new ae(t&&t.offsetParent)},offsetLeft:function(t){if(t===undefined){var e=this[0];return e&&e.offsetLeft}var i=re(t);i&&this.each(function(){var t=new ae(this),e=t.style("position");e==="static"&&t.style("position","relative");t.style("left",i)});return this},offsetTop:function(t){if(t===undefined){var e=this[0];return e&&e.offsetTop}var i=re(t);i&&this.each(function(){var t=new ae(this),e=t.style("position");e==="static"&&t.style("position","relative");t.style("top",i)});return this},offset:function(t){if(t===undefined){return{left:this.offsetLeft(),top:this.offsetTop()}}this.offsetLeft(t.left);this.offsetTop(t.top);return this},left:function(t){if(t===undefined){var e=this[0];if(e){var i=0;while(e.offsetParent){i+=e.offsetLeft;e=e.offsetParent}return i}return}var n=re(t);n&&this.each(function(){var t=new ae(this),e=t.style("position");e==="static"&&t.style("position","absolute");t.style("left",n)});return this},top:function(t){if(t===undefined){var e=this[0];if(e){var i=0;while(e.offsetParent){i+=e.offsetTop;e=e.offsetParent}return i}return}var n=re(t);n&&this.each(function(){var t=new ae(this),e=t.style("position");e==="static"&&t.style("position","absolute");t.style("top",n)});return this},position:function(t){if(t===undefined){return{left:this.left(),top:this.top()}}this.left(t.left);this.top(t.top);return this},scrollWidth:function(){var t=this[0];return t&&t.scrollWidth},scrollHeight:function(){var t=this[0];return t&&t.scrollHeight},scrollLeft:function(t){if(t===undefined){var e=this[0];return e&&e.scrollLeft}l.isNumber(t)&&this.each(function(){this.scrollLeft=t});return this},scrollTop:function(t){if(t===undefined){var e=this[0];return e&&e.scrollTop}l.isNumber(t)&&this.each(function(){this.scrollTop=t});return this},show:function(){this.each(function(){this.style.display=""});return this},hide:function(){this.each(function(){this.style.display="none"});return this},toggle:function(){this.each(function(){this.style.display==="none"?this.style.display="":this.style.display="none"});return this},visible:function(){var t=this[0];return t&&(t.style.display!==""&&t.style.visibility!=="hidden")},cls:function(t){if(t===undefined)return this[0]&&this[0].className?this[0].className.replace(/\s+/," ").split(" "):[];p.isArray(t)&&(t=t.join(" "));this.each(function(){this.className=t});return this},addClass:function(e){f.isString(e)&&(e=e.split(" "));this.each(function(){p.each.call(this,e,function(e){t(this).hasClass(e)||(this.className+=(this.className?" ":"")+e)})});return this},removeClass:function(t){if(o.isEmpty(t)){this.each(function(){this.className=""});return this}f.isString(t)&&(t=t.split(" "));this.each(function(){var e=this.className&&this.className.replace(/\s+/," ").split(" ")||[];if(e.length){p.each(t,function(t){var i=e.indexOf(t);i>-1&&e.splice(i,1)});this.className=e.join(" ")}});return this},toggleClass:function(t){return this.hasClass(t)&&this.removeClass(t)||this.addClass(t)},hasClass:function(e){var i=false;this.each(function(){return p.each(t(this).cls(),function(t){if(t===e){i=true;return false}return true})});return i},style:function(t,e){if(e===undefined&&!d.isPlainObject(t)){var i=this[0];if(i){function n(t){if(i.style[t])return i.style[t];if(i.currentStyle)return i.currentStyle[t];if(document.defaultView&&document.defaultView.getComputedStyle)return document.defaultView.getComputedStyle(i,null).getPropertyValue(f.joinCase(t));return null}if(p.isArray(t)){return p.map(t,function(t){t=n(f.camelCase(t));return t==="auto"?"":t})}var r=n(f.camelCase(t));return r==="auto"?"":r}return}var s="";f.isString(t)&&(s=f.joinCase(t)+":"+e);if(p.isArray(t)&&p.isArray(e)){s=p.map(t,function(t,i){return f.joinCase(t)+":"+e[i]}).join(";")}if(d.isPlainObject(t)){s=d.map(t,function(t,e){return f.joinCase(e)+":"+t}).join(";")}this.each(function(){this.style.cssText+=" ;"+s});return this},removeStyle:function(t){if(o.isEmpty(t)){this.each(function(){this.style.cssText=""});return this}f.isString(t)&&(t=[t]);this.each(function(){var e=this.style.cssText.split(";");if(e.length){function i(t){p.each(e,function(i,n){var r=i.split(":");if(f.trim(r[0]).toLowerCase()===f.joinCase(t)){e.splice(n,1);return false}})}p.each(t,function(t){i(t)});this.style.cssText=e.join(";")}});return this},on:function(t,e,i){this.each(function(){o.on(this,t,e,i)});return this},once:function(t,e,i){this.each(function(){o.once(this,t,e,i)});return this},off:function(t,e){this.each(function(){o.off(this,t,e)});return this},release:function(t){this.each(function(){o.release(this,t)});return this},trigger:function(t){this.each(function(){o.trigger(this,t)});return this},hover:function(e,i){this.each(function(){t(this).mouseover(function(){e.call(this)}).mouseout(function(){i.call(this)})});return this},globalclick:function(t){var e=this;M(window).click(function(i){i=i.target;if(e.has(i)||e.find(i).length)return;m.isFunction(t)?t.call(e,i):e.hide()});return this},move:function(e,i){var n=f.isString(e),r=!n&&o.isDomElement(e),s=!r&&o.isMy(e);if(n||r||s){var a=new ae;(r||s)&&a.add(e)||this.each(function(){a.add(o.query(e,this))});var u=null,c=null,h=null,l=function(t){var e={x:t.pageX,y:t.pageY};if(u){var n=c.outerWidth(),r=c.outerHeight(),s=c[h]();s.left+=e.x-u.x;s.top+=e.y-u.y;if(i){s.left<i.left&&(s.left=0);s.left+n>i.width&&(s.left=i.width-n);s.top<i.top&&(s.top=0);s.top+r>i.height&&(s.top=i.height-r)}c[h](s)}u=e},d=function(e){t(document.body).off("mousemove",l).off("mouseup",d).off("mouseleave",d);c=null;u=null};this.mousedown(function(e){if(a.has(e.target)||a.find(e.target).length){t(document.body).mousemove(l).mouseup(d).mouseleave(d);u={x:e.pageX,y:e.pageY};c=t(this);h=c.parent().style("position")==="static"&&"position"||"offset"}})}return this},validate:function(t){return this.each(function(){return t.test(this.value)})}};p.each(("click dblclick mousedown mousemove mouseup mouseover mouseout mouseenter mouseleave mousewheel scroll drag dragstart dragend dragover dragenter dragleave drop"+" keydown keypress keyup change input invalid select submit reset focus blur resize load unload error abort").split(" "),function(t){var e=function(t){return arguments.length&&this.on(arguments.callee.type,t)||this.trigger(arguments.callee.type)};e.type=t;ae.prototype[t]=e});o.DataProvider=function(t){if(!(this instanceof o.DataProvider))return new o.DataProvider(t);o.Dispatcher.call(this);this.__source=p.isArray(t)&&t||[t]};o.inherit(o.DataProvider,o.Dispatcher,{owner:function(t){this.__owner=t;return this},get:function(t){if(l.isNumber(t))return this.__source[t];if(!f.isString(t))return null;t=t.split(".");l.isNumeric(t[0])||t.unshift("0");for(var e=0,i=t.length,n=this.__source;e<i;e++)n=n[t[e]];return n},set:function(t,e){function i(t,e){t.trigger("change:"+e).trigger("change");if(t.__owner&&t.__owner instanceof o.Dispatcher){t.__owner.trigger("change:"+e).trigger("change")}}if(l.isNumber(t)){var n=this.__source[t];if(n!==e){this.__source[t]=e;i(this,t)}return this}var r=f.isString(t),s=!r&&d.isPlainObject(t);if(!r&&!s)return this;var a=t;r&&(a={},a[t]=e);d.each.call(this,a,function(t,n){var r=n.split("."),s=0,a=0,u=this.__source;l.isNumeric(r[0])||r.unshift("0");a=r.length;for(;s<a-1;s++)u=u[r[s]];var o=u[r[a-1]];if(o!==e){u[r[a-1]]=e;i(this,n)}});return this},reset:function(t,e){p.isArray(t)||(t=[t]);this.__source=t;if(!e){this.trigger("change");this.__owner&&this.__owner instanceof o.Dispatcher&&this.__owner.trigger("change")}return this},unset:function(t){function e(t,e){t.trigger("unset",e);t.__owner&&t.__owner instanceof o.Dispatcher&&t.__owner.trigger("unset",e)}if(l.isNumber(t)){this.__source.splice(t,1);e(this,t);return this}if(!f.isString(t))return this;var i=t.split("."),n=0,r=0,s=this.__source;l.isNumeric(i[0])||i.unshift("0");r=i.length;for(;n<r-1;n++)s=s[i[n]];p.isArray(s)?s.splice(i[r-1],1):delete s[i[r-1]];e(this,t);return this},has:function(t){return o.isDefined(this.get(t))},clear:function(){this.__source=[];this.trigger("clear");this.__owner&&this.__owner instanceof o.Dispatcher&&this.__owner.trigger("clear");return this},toSource:function(){return p.clone(this.__source,true)},clone:function(){return new o.DataProvider(this.toSource()).owner(this.__owner)},pick:function(t,e,i){var n={};p.each(arguments,function(t){n[t]=this.get(t)},null,this);return n}});o.Model=function(t,e){if(!(this instanceof o.Model))return new o.Model(t,e);o.Dispatcher.call(this);this.url=t;this.provider=e instanceof o.DataProvider&&e||new o.DataProvider(e);this.provider.owner(this)};o.inherit(o.Model,o.Dispatcher,{get:function(t){return this.provider.get(t)},set:function(t,e){this.provider.set(t,e);return this},reset:function(t,e){this.provider.reset(t instanceof o.DataProvider&&t.toSource()||t,e);return this},unset:function(t){this.provider.unset(t);return this},has:function(t){return this.provider.has(t)},clear:function(){this.provider.clear();return this},toSource:function(){return this.provider.toSource()},pick:function(t,e,i){return this.provider.pick.apply(this.provider,arguments)},beforeLoad:function(t){},load:function(){var t=new o.Loader,e=this;t.url=this.url;t.once({success:function(t){t&&e.reset(t,true);e.trigger("load");this.release()},fail:function(){e.trigger("fail");this.release()},timeout:function(){e.trigger("fail");this.release()}});this.beforeLoad(t);t.send()},beforeCommit:function(t){},commit:function(){var t=new o.Loader,e=this;t.url=this.url;t.method="post";t.params=this.toSource();t.once({success:function(t){e.trigger("commit");this.release()},fail:function(){e.trigger("fail");this.release()},timeout:function(){e.trigger("fail");this.release()}});this.beforeCommit(t);t.send()},clone:function(){return new o.Model(this.url,this.toSource())}});o.View=function(e,i){if(!(this instanceof o.View))return new o.View(i);o.Dispatcher.call(this);this.ui=t(e);this.model=i;this.initialize();this.render();this.delegate()};o.View.extend=function(t){function e(t,e){o.View.call(this,t,e)}o.inherit(e,o.View,t);return e};o.inherit(o.View,o.Dispatcher,{initialize:function(){return this},template:function(){return o.template(this.tpl,this.model.toSource())},render:function(){this.ui.html(this.template());return this},remove:function(){this.release();this.undelegate();this.ui&&this.ui.remove();return this},delegate:function(){if(this.events){d.each(this.events,function(e,i){i=i.replace(/\s+/," ").split(" ");if(i.length>=2){var n=i.shift(),r=f.contains(n,"?"),s=r&&"once"||"on";r&&(n=n.slice(0,n.length-1));i=i.join(" ");t(i,this.ui)[s](n,e,this)}},null,this)}return this},undelegate:function(){if(this.events){d.each(this.events,function(e,i){i=i.replace(/\s+/," ").split(" ");if(i.length>=2){var n=i.shift(),r=f.contains(n,"?");r&&(n=n.slice(0,n.length-1));i=i.join(" ");t(i,this.ui).off(n,e)}},null,this)}return this}});o.extend(t,o);console.log("*****************************************************\n*** ** ** *** *** ***\n*** **** **** *** *** ***\n*** ** *** **** * ** *** ***\n*** ** * ** * *** ***\n*** ** ** *** ***\n*** ** ** *** ***\n*** ** ** *** ***\n*** ** ** *** ***\n*****************************************************\nWelcome to use My.js JavaScript Library!")})();