| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- /**
- *
- * /$$
- * | $$
- * | $$ /$$ /$$ /$$$$$$$ /$$$$$$ /$$$$$$
- * | $$ | $$ | $$| $$__ $$ /$$__ $$ /$$__ $$
- * | $$ | $$ | $$| $$ \ $$| $$ \ $$| $$ \ $$
- * | $$ | $$ | $$| $$ | $$| $$ | $$| $$ | $$
- * | $$$$$$$$| $$$$$$/| $$ | $$| $$$$$$$| $$$$$$/
- * |________/ \______/ |__/ |__/ \____ $$ \______/
- * /$$ \ $$
- * | $$$$$$/
- * \______/
- *
- * @copyright 2011 TapQuo Inc (c)
- * @license http://www.github.com/tapquo/lungo/blob/master/LICENSE.txt
- * @version 1.0.3
- * @link https://github.com/TapQuo/Lungo.js
- *
- * @author Javier Jimenez Villar <javi@tapquo.com> || @soyjavi
- * @author Guillermo Pascual <pasku@tapquo.com> || @pasku1
- */
- (function(a){if(String.prototype.trim===a)String.prototype.trim=function(){return this.replace(/^\s+/,"").replace(/\s+$/,"")};if(Array.prototype.reduce===a)Array.prototype.reduce=function(g){if(this===void 0||this===null)throw new TypeError;var f=Object(this),h=f.length>>>0,j=0,n;if(typeof g!="function")throw new TypeError;if(h==0&&arguments.length==1)throw new TypeError;if(arguments.length>=2)n=arguments[1];else{do{if(j in f){n=f[j++];break}if(++j>=h)throw new TypeError;}while(1)}for(;j<h;){if(j in
- f)n=g.call(a,n,f[j],j,f);j++}return n}})();
- var Zepto=function(){function a(d){return{}.toString.call(d)=="[object Function]"}function g(d){return d instanceof Object}function f(d){return d instanceof Array}function h(d){return typeof d.length=="number"}function j(d){return d.filter(function(p){return p!==k&&p!==null})}function n(d){return d.replace(/-+(.)?/g,function(p,r){return r?r.toUpperCase():""})}function q(d){return d.replace(/::/g,"/").replace(/([A-Z]+)([A-Z][a-z])/g,"$1_$2").replace(/([a-z\d])([A-Z])/g,"$1_$2").replace(/_/g,"-").toLowerCase()}
- function o(d){return d.filter(function(p,r,B){return B.indexOf(p)==r})}function w(d){return d in C?C[d]:C[d]=RegExp("(^|\\s)"+d+"(\\s|$)")}function z(d,p){p===k&&G.test(d);p in P||(p="*");var r=P[p];r.innerHTML=""+d;return e.call(r.childNodes)}function A(d,p){d=d||b;d.__proto__=A.prototype;d.selector=p||"";return d}function t(d,p){if(!d)return A();if(p!==k)return t(p).find(d);else if(a(d))return t(s).ready(d);else if(d instanceof A)return d;else{var r;if(f(d))r=j(d);else if(J.indexOf(d.nodeType)>=
- 0||d===window){r=[d];d=null}else if(G.test(d)){r=z(d.trim(),RegExp.$1);d=null}else r=d.nodeType&&d.nodeType==3?[d]:y(s,d);return A(r,d)}}function D(d,p){return p===k?t(d):t(d).filter(p)}function F(d,p,r,B){return a(p)?p.call(d,r,B):p}function v(d,p,r){var B=d%2?p:p.parentNode;B&&B.insertBefore(r,!d?p.nextSibling:d==1?B.firstChild:d==2?p:null)}function m(d,p){p(d);for(var r in d.childNodes)m(d.childNodes[r],p)}var k,u,y,c,b=[],e=b.slice,s=window.document,x={},C={},E=s.defaultView.getComputedStyle,
- H={"column-count":1,columns:1,"font-weight":1,"line-height":1,opacity:1,"z-index":1,zoom:1},G=/^\s*<(\w+)[^>]*>/,J=[1,9,11],O=s.createElement("table"),Q=s.createElement("tr"),P={tr:s.createElement("tbody"),tbody:O,thead:O,tfoot:O,td:Q,th:Q,"*":s.createElement("div")},R=/complete|loaded|interactive/,S=/^\.([\w-]+)$/,T=/^#([\w-]+)$/,U=/^[\w-]+$/;t.extend=function(d){e.call(arguments,1).forEach(function(p){for(u in p)d[u]=p[u]});return d};t.qsa=y=function(d,p){var r;return d===s&&T.test(p)?(r=d.getElementById(RegExp.$1))?
- [r]:b:e.call(S.test(p)?d.getElementsByClassName(RegExp.$1):U.test(p)?d.getElementsByTagName(p):d.querySelectorAll(p))};t.isFunction=a;t.isObject=g;t.isArray=f;t.map=function(d,p){var r,B=[],I;if(h(d))for(I=0;I<d.length;I++){r=p(d[I],I);r!=null&&B.push(r)}else for(I in d){r=p(d[I],I);r!=null&&B.push(r)}return B.length>0?[].concat.apply([],B):B};t.each=function(d,p){var r;if(h(d))for(r=0;r<d.length;r++){if(p(r,d[r])===false)break}else for(r in d)if(p(r,d[r])===false)break;return d};t.fn={forEach:b.forEach,
- reduce:b.reduce,push:b.push,indexOf:b.indexOf,concat:b.concat,map:function(d){return t.map(this,function(p,r){return d.call(p,r,p)})},slice:function(){return t(e.apply(this,arguments))},ready:function(d){R.test(s.readyState)?d(t):s.addEventListener("DOMContentLoaded",function(){d(t)},false);return this},get:function(d){return d===k?this:this[d]},size:function(){return this.length},remove:function(){return this.each(function(){this.parentNode!=null&&this.parentNode.removeChild(this)})},each:function(d){this.forEach(function(p,
- r){d.call(p,r,p)});return this},filter:function(d){return t([].filter.call(this,function(p){return p.parentNode&&y(p.parentNode,d).indexOf(p)>=0}))},end:function(){return this.prevObject||t()},andSelf:function(){return this.add(this.prevObject||t())},add:function(d,p){return t(o(this.concat(t(d,p))))},is:function(d){return this.length>0&&t(this[0]).filter(d).length>0},not:function(d){var p=[];if(a(d)&&d.call!==k)this.each(function(B){d.call(this,B)||p.push(this)});else{var r=typeof d=="string"?this.filter(d):
- h(d)&&a(d.item)?e.call(d):t(d);this.forEach(function(B){r.indexOf(B)<0&&p.push(B)})}return t(p)},eq:function(d){return d===-1?this.slice(d):this.slice(d,+d+1)},first:function(){var d=this[0];return d&&!g(d)?d:t(d)},last:function(){var d=this[this.length-1];return d&&!g(d)?d:t(d)},find:function(d){var p;p=this.length==1?y(this[0],d):this.map(function(){return y(this,d)});return t(p)},closest:function(d,p){var r=this[0],B=y(p||s,d);for(B.length||(r=null);r&&B.indexOf(r)<0;)r=r!==p&&r!==s&&r.parentNode;
- return t(r)},parents:function(d){for(var p=[],r=this;r.length>0;)r=t.map(r,function(B){if((B=B.parentNode)&&B!==s&&p.indexOf(B)<0){p.push(B);return B}});return D(p,d)},parent:function(d){return D(o(this.pluck("parentNode")),d)},children:function(d){return D(this.map(function(){return e.call(this.children)}),d)},siblings:function(d){return D(this.map(function(p,r){return e.call(r.parentNode.children).filter(function(B){return B!==r})}),d)},empty:function(){return this.each(function(){this.innerHTML=
- ""})},pluck:function(d){return this.map(function(){return this[d]})},show:function(){return this.each(function(){this.style.display=="none"&&(this.style.display=null);if(E(this,"").getPropertyValue("display")=="none"){var d=this.style,p=this.nodeName,r,B;if(!x[p]){r=s.createElement(p);s.body.appendChild(r);B=E(r,"").getPropertyValue("display");r.parentNode.removeChild(r);B=="none"&&(B="block");x[p]=B}d.display=x[p]}})},replaceWith:function(d){return this.each(function(){t(this).before(d).remove()})},
- wrap:function(d){return this.each(function(){t(this).wrapAll(t(d)[0].cloneNode(false))})},wrapAll:function(d){if(this[0]){t(this[0]).before(d=t(d));d.append(this)}return this},unwrap:function(){this.parent().each(function(){t(this).replaceWith(t(this).children())});return this},hide:function(){return this.css("display","none")},toggle:function(d){return(d===k?this.css("display")=="none":d)?this.show():this.hide()},prev:function(){return t(this.pluck("previousElementSibling"))},next:function(){return t(this.pluck("nextElementSibling"))},
- html:function(d){return d===k?this.length>0?this[0].innerHTML:null:this.each(function(p){var r=this.innerHTML;t(this).empty().append(F(this,d,p,r))})},text:function(d){return d===k?this.length>0?this[0].textContent:null:this.each(function(){this.textContent=d})},attr:function(d,p){var r;return typeof d=="string"&&p===k?this.length==0?k:d=="value"&&this[0].nodeName=="INPUT"?this.val():!(r=this[0].getAttribute(d))&&d in this[0]?this[0][d]:r:this.each(function(B){if(g(d))for(u in d)this.setAttribute(u,
- d[u]);else this.setAttribute(d,F(this,p,B,this.getAttribute(d)))})},removeAttr:function(d){return this.each(function(){this.removeAttribute(d)})},data:function(d,p){return this.attr("data-"+d,p)},val:function(d){return d===k?this.length>0?this[0].value:null:this.each(function(p){this.value=F(this,d,p,this.value)})},offset:function(){if(this.length==0)return null;var d=this[0].getBoundingClientRect();return{left:d.left+window.pageXOffset,top:d.top+window.pageYOffset,width:d.width,height:d.height}},
- css:function(d,p){if(p===k&&typeof d=="string")return this.length==0?k:this[0].style[n(d)]||E(this[0],"").getPropertyValue(d);var r="";for(u in d)r+=q(u)+":"+(typeof d[u]=="number"&&!H[q(u)]?d[u]+"px":d[u])+";";if(typeof d=="string")r=q(d)+":"+(typeof p=="number"&&!H[q(d)]?p+"px":p);return this.each(function(){this.style.cssText+=";"+r})},index:function(d){return d?this.indexOf(t(d)[0]):this.parent().children().indexOf(this[0])},hasClass:function(d){return this.length<1?false:w(d).test(this[0].className)},
- addClass:function(d){return this.each(function(p){c=[];var r=this.className;F(this,d,p,r).split(/\s+/g).forEach(function(B){t(this).hasClass(B)||c.push(B)},this);c.length&&(this.className+=(r?" ":"")+c.join(" "))})},removeClass:function(d){return this.each(function(p){if(d===k)return this.className="";c=this.className;F(this,d,p,c).split(/\s+/g).forEach(function(r){c=c.replace(w(r)," ")});this.className=c.trim()})},toggleClass:function(d,p){return this.each(function(r){r=F(this,d,r,this.className);
- (p===k?!t(this).hasClass(r):p)?t(this).addClass(r):t(this).removeClass(r)})}};"filter,add,not,eq,first,last,find,closest,parents,parent,children,siblings".split(",").forEach(function(d){var p=t.fn[d];t.fn[d]=function(){var r=p.apply(this,arguments);r.prevObject=this;return r}});["width","height"].forEach(function(d){t.fn[d]=function(p){var r,B=d.replace(/./,function(I){return I[0].toUpperCase()});return p===k?this[0]==window?window["inner"+B]:this[0]==s?s.documentElement["offset"+B]:(r=this.offset())&&
- r[d]:this.each(function(I){var L=t(this);L.css(d,F(this,p,I,L[d]()))})}});["after","prepend","before","append"].forEach(function(d,p){t.fn[d]=function(r){var B=g(r)?r:z(r);if(!("length"in B)||B.nodeType)B=[B];if(B.length<1)return this;var I=this.length,L=I>1,V=p<2;return this.each(function(W,X){for(var M=0;M<B.length;M++){var N=B[V?B.length-M-1:M];m(N,function(K){if(K.nodeName!=null&&K.nodeName.toUpperCase()==="SCRIPT"&&(!K.type||K.type==="text/javascript"))window.eval.call(window,K.innerHTML)});
- if(L&&W<I-1)N=N.cloneNode(true);v(p,X,N)}})};t.fn[p%2?d+"To":"insert"+(p?"Before":"After")]=function(r){t(r)[d](this);return this}});A.prototype=t.fn;return t}();window.Zepto=Zepto;"$"in window||(window.$=Zepto);
- (function(a){function g(v,m,k,u){m=f(m);if(m.ns)var y=RegExp("(?:^| )"+m.ns.replace(" "," .* ?")+"(?: |$)");return(w[v._zid||(v._zid=z++)]||[]).filter(function(c){return c&&(!m.e||c.e==m.e)&&(!m.ns||y.test(c.ns))&&(!k||c.fn==k)&&(!u||c.sel==u)})}function f(v){v=(""+v).split(".");return{e:v[0],ns:v.slice(1).sort().join(" ")}}function h(v,m,k){a.isObject(v)?a.each(v,k):v.split(/\s/).forEach(function(u){k(u,m)})}function j(v,m,k,u,y){var c=v._zid||(v._zid=z++),b=w[c]||(w[c]=[]);h(m,k,function(e,s){var x=
- y&&y(s,e),C=x||s,E=function(H){var G=C.apply(v,[H].concat(H.data));G===false&&H.preventDefault();return G};x=a.extend(f(e),{fn:s,proxy:E,sel:u,del:x,i:b.length});b.push(x);v.addEventListener(x.e,E,false)})}function n(v,m,k,u){var y=v._zid||(v._zid=z++);h(m||"",k,function(c,b){g(v,c,b,u).forEach(function(e){delete w[y][e.i];v.removeEventListener(e.e,e.proxy,false)})})}function q(v){var m=a.extend({originalEvent:v},v);a.each(F,function(k,u){m[k]=function(){this[u]=t;return v[k].apply(v,arguments)};
- m[u]=D});return m}function o(v){if(!("defaultPrevented"in v)){v.defaultPrevented=false;var m=v.preventDefault;v.preventDefault=function(){this.defaultPrevented=true;m.call(this)}}}var w={},z=1,A={};A.click=A.mousedown=A.mouseup=A.mousemove="MouseEvents";a.event={add:j,remove:n};a.fn.bind=function(v,m){return this.each(function(){j(this,v,m)})};a.fn.unbind=function(v,m){return this.each(function(){n(this,v,m)})};a.fn.one=function(v,m){return this.each(function(k,u){j(this,v,m,null,function(y,c){return function(){var b=
- y.apply(u,arguments);n(u,c,y);return b}})})};var t=function(){return true},D=function(){return false},F={preventDefault:"isDefaultPrevented",stopImmediatePropagation:"isImmediatePropagationStopped",stopPropagation:"isPropagationStopped"};a.fn.delegate=function(v,m,k){return this.each(function(u,y){j(y,m,k,v,function(c){return function(b){var e,s=a(b.target).closest(v,y).get(0);if(s){e=a.extend(q(b),{currentTarget:s,liveFired:y});return c.apply(s,[e].concat([].slice.call(arguments,1)))}}})})};a.fn.undelegate=
- function(v,m,k){return this.each(function(){n(this,m,k,v)})};a.fn.live=function(v,m){a(document.body).delegate(this.selector,v,m);return this};a.fn.die=function(v,m){a(document.body).undelegate(this.selector,v,m);return this};a.fn.on=function(v,m,k){return m===undefined||a.isFunction(m)?this.bind(v,m):this.delegate(m,v,k)};a.fn.off=function(v,m,k){return m===undefined||a.isFunction(m)?this.unbind(v,m):this.undelegate(m,v,k)};a.fn.trigger=function(v,m){if(typeof v=="string")v=a.Event(v);o(v);v.data=
- m;return this.each(function(){this.dispatchEvent(v)})};a.fn.triggerHandler=function(v,m){var k,u;this.each(function(y,c){k=q(typeof v=="string"?a.Event(v):v);k.data=m;k.target=c;a.each(g(c,v.type||v),function(b,e){u=e.proxy(k);if(k.isImmediatePropagationStopped())return false})});return u};"focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout change select keydown keypress keyup error".split(" ").forEach(function(v){a.fn[v]=function(m){return this.bind(v,
- m)}});["focus","blur"].forEach(function(v){a.fn[v]=function(m){if(m)this.bind(v,m);else if(this.length)try{this.get(0)[v]()}catch(k){}return this}});a.Event=function(v,m){var k=document.createEvent(A[v]||"Events"),u=true;if(m)for(var y in m)y=="bubbles"?u=!!m[y]:k[y]=m[y];k.initEvent(v,u,true,null,null,null,null,null,null,null,null,null,null,null,null);return k}})(Zepto);
- (function(a){function g(f){var h=this.os={},j=this.browser={},n=f.match(/WebKit\/([\d.]+)/),q=f.match(/(Android)\s+([\d.]+)/),o=f.match(/(iPad).*OS\s([\d_]+)/),w=!o&&f.match(/(iPhone\sOS)\s([\d_]+)/),z=f.match(/(webOS|hpwOS)[\s\/]([\d.]+)/),A=z&&f.match(/TouchPad/);f=f.match(/(BlackBerry).*Version\/([\d.]+)/);if(n)j.version=n[1];j.webkit=!!n;if(q){h.android=true;h.version=q[2]}if(w){h.ios=true;h.version=w[2].replace(/_/g,".");h.iphone=true}if(o){h.ios=true;h.version=o[2].replace(/_/g,".");h.ipad=
- true}if(z){h.webos=true;h.version=z[2]}if(A)h.touchpad=true;if(f){h.blackberry=true;h.version=f[2]}}g.call(a,navigator.userAgent);a.__detect=g})(Zepto);
- (function(a,g){var f="",h,j=window.document.createElement("div"),n=/^((translate|rotate|scale)(X|Y|Z|3d)?|matrix(3d)?|perspective|skew(X|Y)?)$/i;a.each({Webkit:"webkit",Moz:"",O:"o",ms:"MS"},function(q,o){if(j.style[q+"TransitionProperty"]!==g){f="-"+q.toLowerCase()+"-";h=o;return false}});a.fx={off:h===g&&j.style.transitionProperty===g,cssPrefix:f,transitionEnd:h?h+"TransitionEnd":"TransitionEnd".toLowerCase(),animationEnd:h?h+"AnimationEnd":"AnimationEnd".toLowerCase()};a.fn.animate=function(q,
- o,w,z){if(a.isObject(o)){w=o.easing;z=o.complete;o=o.duration}if(o)o/=1E3;return this.anim(q,o,w,z)};a.fn.anim=function(q,o,w,z){var A,t={},D,F=this,v,m=a.fx.transitionEnd;if(o===g)o=0.4;if(a.fx.off)o=0;if(typeof q=="string"){t[f+"animation-name"]=q;t[f+"animation-duration"]=o+"s";m=a.fx.animationEnd}else{for(D in q)if(n.test(D)){A||(A=[]);A.push(D+"("+q[D]+")")}else t[D]=q[D];if(A)t[f+"transform"]=A.join(" ");a.fx.off||(t[f+"transition"]="all "+o+"s "+(w||""))}v=function(){var k={};k[f+"transition"]=
- k[f+"animation-name"]="none";a(this).css(k);z&&z.call(this)};o>0&&this.one(m,v);setTimeout(function(){F.css(t);o<=0&&setTimeout(function(){F.each(function(){v.call(this)})},0)},0);return this};j=null})(Zepto);
- (function(a){function g(m,k,u,y){if(m.global){m=k||t;u=a.Event(u);a(m).trigger(u,y);return!u.defaultPrevented}}function f(m){m.global&&a.active++===0&&g(m,null,"ajaxStart")}function h(m,k){var u=k.context;if(k.beforeSend.call(u,m,k)===false||g(k,u,"ajaxBeforeSend",[m,k])===false)return false;g(k,u,"ajaxSend",[m,k])}function j(m,k,u){var y=u.context;u.success.call(y,m,"success",k);g(u,y,"ajaxSuccess",[k,u,m]);q("success",k,u)}function n(m,k,u,y){var c=y.context;y.error.call(c,u,k,m);g(y,c,"ajaxError",
- [u,y,m]);q(k,u,y)}function q(m,k,u){var y=u.context;u.complete.call(y,k,m);g(u,y,"ajaxComplete",[k,u]);u.global&&!--a.active&&g(u,null,"ajaxStop")}function o(){}function w(m,k,u,y){var c=a.isArray(k);a.each(k,function(b,e){if(y)b=u?y:y+"["+(c?"":b)+"]";if(!y&&c)m.add(e.name,e.value);else(u?a.isArray(e):A(e))?w(m,e,u,b):m.add(b,e)})}var z=0,A=a.isObject,t=window.document,D,F;a.active=0;a.ajaxJSONP=function(m){var k="jsonp"+ ++z,u=t.createElement("script"),y={abort:function(){a(u).remove();if(k in window)window[k]=
- o;q(y,m,"abort")}},c;window[k]=function(b){clearTimeout(c);a(u).remove();delete window[k];j(b,y,m)};u.src=m.url.replace(/=\?/,"="+k);a("head").append(u);if(m.timeout>0)c=setTimeout(function(){y.abort();q(y,m,"timeout")},m.timeout);return y};a.ajaxSettings={type:"GET",beforeSend:o,success:o,error:o,complete:o,context:null,global:true,xhr:function(){return new window.XMLHttpRequest},accepts:{script:"text/javascript, application/javascript",json:"application/json",xml:"application/xml, text/xml",html:"text/html",
- text:"text/plain"},crossDomain:false,timeout:0};a.ajax=function(m){var k=a.extend({},m||{});for(D in a.ajaxSettings)if(k[D]===undefined)k[D]=a.ajaxSettings[D];f(k);if(!k.crossDomain)k.crossDomain=/^([\w-]+:)?\/\/([^\/]+)/.test(k.url)&&RegExp.$2!=window.location.host;if(/=\?/.test(k.url))return a.ajaxJSONP(k);if(!k.url)k.url=window.location.toString();if(k.data&&!k.contentType)k.contentType="application/x-www-form-urlencoded";if(A(k.data))k.data=a.param(k.data);if(k.type.match(/get/i)&&k.data){m=k.data;
- if(k.url.match(/\?.*=/))m="&"+m;else if(m[0]!="?")m="?"+m;k.url+=m}var u=k.accepts[k.dataType];m={};var y=/^([\w-]+:)\/\//.test(k.url)?RegExp.$1:window.location.protocol,c=a.ajaxSettings.xhr(),b;k.crossDomain||(m["X-Requested-With"]="XMLHttpRequest");if(u)m.Accept=u;k.headers=a.extend(m,k.headers||{});c.onreadystatechange=function(){if(c.readyState==4){clearTimeout(b);var e,s=false;if(c.status>=200&&c.status<300||c.status==0&&y=="file:"){if(u=="application/json"&&!/^\s*$/.test(c.responseText))try{e=
- JSON.parse(c.responseText)}catch(x){s=x}else e=c.responseText;s?n(s,"parsererror",c,k):j(e,c,k)}else n(null,"error",c,k)}};c.open(k.type,k.url,true);if(k.contentType)k.headers["Content-Type"]=k.contentType;for(F in k.headers)c.setRequestHeader(F,k.headers[F]);if(h(c,k)===false){c.abort();return false}if(k.timeout>0)b=setTimeout(function(){c.onreadystatechange=o;c.abort();n(null,"timeout",c,k)},k.timeout);c.send(k.data);return c};a.get=function(m,k){return a.ajax({url:m,success:k})};a.post=function(m,
- k,u,y){if(a.isFunction(k)){y=y||u;u=k;k=null}return a.ajax({type:"POST",url:m,data:k,success:u,dataType:y})};a.getJSON=function(m,k){return a.ajax({url:m,success:k,dataType:"json"})};a.fn.load=function(m,k){if(!this.length)return this;var u=this,y=m.split(/\s/),c;if(y.length>1){m=y[0];c=y[1]}a.get(m,function(b){u.html(c?a(t.createElement("div")).html(b).find(c).html():b);k&&k.call(u)});return this};var v=encodeURIComponent;a.param=function(m,k){var u=[];u.add=function(y,c){this.push(v(y)+"="+v(c))};
- w(u,m,k);return u.join("&").replace("%20","+")}})(Zepto);
- (function(a){a.fn.serializeArray=function(){var g=[],f;a(Array.prototype.slice.call(this.get(0).elements)).each(function(){f=a(this);var h=f.attr("type");if(!this.disabled&&h!="submit"&&h!="reset"&&h!="button"&&(h!="radio"&&h!="checkbox"||this.checked))g.push({name:f.attr("name"),value:f.val()})});return g};a.fn.serialize=function(){var g=[];this.serializeArray().forEach(function(f){g.push(encodeURIComponent(f.name)+"="+encodeURIComponent(f.value))});return g.join("&")};a.fn.submit=function(g){if(g)this.bind("submit",
- g);else if(this.length){g=a.Event("submit");this.eq(0).trigger(g);g.defaultPrevented||this.get(0).submit()}return this}})(Zepto);
- (function(a){function g(){if(f.last&&Date.now()-f.last>=j){a(f.target).trigger("longTap");f={}}}var f={},h,j=750;a(document).ready(function(){a(document.body).bind("touchstart",function(n){var q=Date.now(),o=q-(f.last||q);f.target="tagName"in n.touches[0].target?n.touches[0].target:n.touches[0].target.parentNode;h&&clearTimeout(h);f.x1=n.touches[0].pageX;f.y1=n.touches[0].pageY;if(o>0&&o<=250)f.isDoubleTap=true;f.last=q;setTimeout(g,j)}).bind("touchmove",function(n){f.x2=n.touches[0].pageX;f.y2=n.touches[0].pageY}).bind("touchend",
- function(){if(f.isDoubleTap){a(f.target).trigger("doubleTap");f={}}else if(f.x2>0||f.y2>0){(Math.abs(f.x1-f.x2)>30||Math.abs(f.y1-f.y2)>30)&&a(f.target).trigger("swipe")&&a(f.target).trigger("swipe"+(Math.abs(f.x1-f.x2)>=Math.abs(f.y1-f.y2)?f.x1-f.x2>0?"Left":"Right":f.y1-f.y2>0?"Up":"Down"));f.x1=f.x2=f.y1=f.y2=f.last=0}else if("last"in f)h=setTimeout(function(){h=null;a(f.target).trigger("tap");f={}},250)}).bind("touchcancel",function(){f={}})});["swipe","swipeLeft","swipeRight","swipeUp","swipeDown",
- "doubleTap","tap","longTap"].forEach(function(n){a.fn[n]=function(q){return this.bind(n,q)}})})(Zepto);(function(){var a=Math,g=/webkit/i.test(navigator.appVersion)?"webkit":/firefox/i.test(navigator.userAgent)?"Moz":"opera"in window?"O":"",f="WebKitCSSMatrix"in window&&"m11"in new WebKitCSSMatrix,h="ontouchstart"in window,j=g+"Transform"in document.documentElement.style,n=/android/gi.test(navigator.appVersion),q=/iphone|ipad/gi.test(navigator.appVersion),o=/playbook/gi.test(navigator.appVersion),w=q||o,z=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||
- window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(c){return setTimeout(c,1)}}(),A=window.cancelRequestAnimationFrame||window.webkitCancelRequestAnimationFrame||window.mozCancelRequestAnimationFrame||window.oCancelRequestAnimationFrame||window.msCancelRequestAnimationFrame||clearTimeout,t="onorientationchange"in window?"orientationchange":"resize",D=h?"touchstart":"mousedown",F=h?"touchmove":"mousemove",v=h?"touchend":"mouseup",m=h?"touchcancel":"mouseup",k=g=="Moz"?"DOMMouseScroll":
- "mousewheel",u="translate"+(f?"3d(":"("),y=f?",0)":")";o=function(c,b){var e=this,s=document,x;e.wrapper=typeof c=="object"?c:s.getElementById(c);e.wrapper.style.overflow="hidden";e.scroller=e.wrapper.children[0];e.options={hScroll:true,vScroll:true,bounce:true,bounceLock:false,momentum:true,lockDirection:true,useTransform:true,useTransition:false,topOffset:0,checkDOMChanges:false,hScrollbar:true,vScrollbar:true,fixedScrollbar:n,hideScrollbar:q,fadeScrollbar:q&&f,scrollbarClass:"",zoom:false,zoomMin:1,
- zoomMax:4,doubleTapZoom:2,wheelAction:"scroll",snap:false,snapThreshold:1,onRefresh:null,onBeforeScrollStart:function(C){C.preventDefault()},onScrollStart:null,onBeforeScrollMove:null,onScrollMove:null,onBeforeScrollEnd:null,onScrollEnd:null,onTouchEnd:null,onDestroy:null,onZoomStart:null,onZoom:null,onZoomEnd:null};for(x in b)e.options[x]=b[x];e.options.useTransform=j?e.options.useTransform:false;e.options.hScrollbar=e.options.hScroll&&e.options.hScrollbar;e.options.vScrollbar=e.options.vScroll&&
- e.options.vScrollbar;e.options.zoom=e.options.useTransform&&e.options.zoom;e.options.useTransition=w&&e.options.useTransition;e.scroller.style[g+"TransitionProperty"]=e.options.useTransform?"-"+g.toLowerCase()+"-transform":"top left";e.scroller.style[g+"TransitionDuration"]="0";e.scroller.style[g+"TransformOrigin"]="0 0";if(e.options.useTransition)e.scroller.style[g+"TransitionTimingFunction"]="cubic-bezier(0.33,0.66,0.66,1)";if(e.options.useTransform)e.scroller.style[g+"Transform"]=u+"0,0"+y;else e.scroller.style.cssText+=
- ";position:absolute;top:0;left:0";if(e.options.useTransition)e.options.fixedScrollbar=true;e.refresh();e._bind(t,window);e._bind(D);if(!h){e._bind("mouseout",e.wrapper);e._bind(k)}if(e.options.checkDOMChanges)e.checkDOMTime=setInterval(function(){e._checkDOMChanges()},500)};o.prototype={enabled:true,x:0,y:0,steps:[],scale:1,currPageX:0,currPageY:0,pagesX:[],pagesY:[],aniTime:null,wheelZoomCount:0,handleEvent:function(c){switch(c.type){case D:if(!h&&c.button!==0)break;this._start(c);break;case F:this._move(c);
- break;case v:case m:this._end(c);break;case t:this._resize();break;case k:this._wheel(c);break;case "mouseout":this._mouseout(c);break;case "webkitTransitionEnd":this._transitionEnd(c)}},_checkDOMChanges:function(){this.moved||this.zoomed||this.animating||this.scrollerW==this.scroller.offsetWidth*this.scale&&this.scrollerH==this.scroller.offsetHeight*this.scale||this.refresh()},_scrollbar:function(c){var b=document,e;if(this[c+"Scrollbar"]){if(!this[c+"ScrollbarWrapper"]){e=b.createElement("div");
- if(this.options.scrollbarClass)e.className=this.options.scrollbarClass+c.toUpperCase();else e.style.cssText="position:absolute;z-index:100;"+(c=="h"?"height:7px;bottom:1px;left:2px;right:"+(this.vScrollbar?"7":"2")+"px":"width:7px;bottom:"+(this.hScrollbar?"7":"2")+"px;top:2px;right:1px");e.style.cssText+=";pointer-events:none;-"+g+"-transition-property:opacity;-"+g+"-transition-duration:"+(this.options.fadeScrollbar?"350ms":"0")+";overflow:hidden;opacity:"+(this.options.hideScrollbar?"0":"1");this.wrapper.appendChild(e);
- this[c+"ScrollbarWrapper"]=e;e=b.createElement("div");if(!this.options.scrollbarClass)e.style.cssText="position:absolute;z-index:100;background:rgba(0,0,0,0.5);border:1px solid rgba(255,255,255,0.9);-"+g+"-background-clip:padding-box;-"+g+"-box-sizing:border-box;"+(c=="h"?"height:100%":"width:100%")+";-"+g+"-border-radius:3px;border-radius:3px";e.style.cssText+=";pointer-events:none;-"+g+"-transition-property:-"+g+"-transform;-"+g+"-transition-timing-function:cubic-bezier(0.33,0.66,0.66,1);-"+g+"-transition-duration:0;-"+
- g+"-transform:"+u+"0,0"+y;if(this.options.useTransition)e.style.cssText+=";-"+g+"-transition-timing-function:cubic-bezier(0.33,0.66,0.66,1)";this[c+"ScrollbarWrapper"].appendChild(e);this[c+"ScrollbarIndicator"]=e}if(c=="h"){this.hScrollbarSize=this.hScrollbarWrapper.clientWidth;this.hScrollbarIndicatorSize=a.max(a.round(this.hScrollbarSize*this.hScrollbarSize/this.scrollerW),8);this.hScrollbarIndicator.style.width=this.hScrollbarIndicatorSize+"px";this.hScrollbarMaxScroll=this.hScrollbarSize-this.hScrollbarIndicatorSize;
- this.hScrollbarProp=this.hScrollbarMaxScroll/this.maxScrollX}else{this.vScrollbarSize=this.vScrollbarWrapper.clientHeight;this.vScrollbarIndicatorSize=a.max(a.round(this.vScrollbarSize*this.vScrollbarSize/this.scrollerH),8);this.vScrollbarIndicator.style.height=this.vScrollbarIndicatorSize+"px";this.vScrollbarMaxScroll=this.vScrollbarSize-this.vScrollbarIndicatorSize;this.vScrollbarProp=this.vScrollbarMaxScroll/this.maxScrollY}this._scrollbarPos(c,true)}else if(this[c+"ScrollbarWrapper"]){if(j)this[c+
- "ScrollbarIndicator"].style[g+"Transform"]="";this[c+"ScrollbarWrapper"].parentNode.removeChild(this[c+"ScrollbarWrapper"]);this[c+"ScrollbarWrapper"]=null;this[c+"ScrollbarIndicator"]=null}},_resize:function(){var c=this;setTimeout(function(){c.refresh()},n?200:0)},_pos:function(c,b){c=this.hScroll?c:0;b=this.vScroll?b:0;if(this.options.useTransform)this.scroller.style[g+"Transform"]=u+c+"px,"+b+"px"+y+" scale("+this.scale+")";else{c=a.round(c);b=a.round(b);this.scroller.style.left=c+"px";this.scroller.style.top=
- b+"px"}this.x=c;this.y=b;this._scrollbarPos("h");this._scrollbarPos("v")},_scrollbarPos:function(c,b){var e=c=="h"?this.x:this.y;if(this[c+"Scrollbar"]){e=this[c+"ScrollbarProp"]*e;if(e<0){if(!this.options.fixedScrollbar){e=this[c+"ScrollbarIndicatorSize"]+a.round(e*3);if(e<8)e=8;this[c+"ScrollbarIndicator"].style[c=="h"?"width":"height"]=e+"px"}e=0}else if(e>this[c+"ScrollbarMaxScroll"])if(this.options.fixedScrollbar)e=this[c+"ScrollbarMaxScroll"];else{e=this[c+"ScrollbarIndicatorSize"]-a.round((e-
- this[c+"ScrollbarMaxScroll"])*3);if(e<8)e=8;this[c+"ScrollbarIndicator"].style[c=="h"?"width":"height"]=e+"px";e=this[c+"ScrollbarMaxScroll"]+(this[c+"ScrollbarIndicatorSize"]-e)}this[c+"ScrollbarWrapper"].style[g+"TransitionDelay"]="0";this[c+"ScrollbarWrapper"].style.opacity=b&&this.options.hideScrollbar?"0":"1";this[c+"ScrollbarIndicator"].style[g+"Transform"]=u+(c=="h"?e+"px,0":"0,"+e+"px")+y}},_start:function(c){var b=h?c.touches[0]:c,e,s;if(this.enabled){this.options.onBeforeScrollStart&&this.options.onBeforeScrollStart.call(this,
- c);if(this.options.useTransition||this.options.zoom)this._transitionTime(0);this.zoomed=this.animating=this.moved=false;this.dirY=this.dirX=this.absDistY=this.absDistX=this.distY=this.distX=0;if(this.options.zoom&&h&&c.touches.length>1){s=a.abs(c.touches[0].pageX-c.touches[1].pageX);e=a.abs(c.touches[0].pageY-c.touches[1].pageY);this.touchesDistStart=a.sqrt(s*s+e*e);this.originX=a.abs(c.touches[0].pageX+c.touches[1].pageX-this.wrapperOffsetLeft*2)/2-this.x;this.originY=a.abs(c.touches[0].pageY+c.touches[1].pageY-
- this.wrapperOffsetTop*2)/2-this.y;this.options.onZoomStart&&this.options.onZoomStart.call(this,c)}if(this.options.momentum){if(this.options.useTransform){e=getComputedStyle(this.scroller,null)[g+"Transform"].replace(/[^0-9-.,]/g,"").split(",");s=e[4]*1;e=e[5]*1}else{s=getComputedStyle(this.scroller,null).left.replace(/[^0-9-]/g,"")*1;e=getComputedStyle(this.scroller,null).top.replace(/[^0-9-]/g,"")*1}if(s!=this.x||e!=this.y){this.options.useTransition?this._unbind("webkitTransitionEnd"):A(this.aniTime);
- this.steps=[];this._pos(s,e)}}this.absStartX=this.x;this.absStartY=this.y;this.startX=this.x;this.startY=this.y;this.pointX=b.pageX;this.pointY=b.pageY;this.startTime=c.timeStamp||(new Date).getTime();this.options.onScrollStart&&this.options.onScrollStart.call(this,c);this._bind(F);this._bind(v);this._bind(m)}},_move:function(c){var b=h?c.touches[0]:c,e=b.pageX-this.pointX,s=b.pageY-this.pointY,x=this.x+e,C=this.y+s,E=c.timeStamp||(new Date).getTime();this.options.onBeforeScrollMove&&this.options.onBeforeScrollMove.call(this,
- c);if(this.options.zoom&&h&&c.touches.length>1){x=a.abs(c.touches[0].pageX-c.touches[1].pageX);C=a.abs(c.touches[0].pageY-c.touches[1].pageY);this.touchesDist=a.sqrt(x*x+C*C);this.zoomed=true;b=1/this.touchesDistStart*this.touchesDist*this.scale;if(b<this.options.zoomMin)b=0.5*this.options.zoomMin*Math.pow(2,b/this.options.zoomMin);else if(b>this.options.zoomMax)b=2*this.options.zoomMax*Math.pow(0.5,this.options.zoomMax/b);this.lastScale=b/this.scale;x=this.originX-this.originX*this.lastScale+this.x;
- C=this.originY-this.originY*this.lastScale+this.y;this.scroller.style[g+"Transform"]=u+x+"px,"+C+"px"+y+" scale("+b+")";this.options.onZoom&&this.options.onZoom.call(this,c)}else{this.pointX=b.pageX;this.pointY=b.pageY;if(x>0||x<this.maxScrollX)x=this.options.bounce?this.x+e/2:x>=0||this.maxScrollX>=0?0:this.maxScrollX;if(C>this.minScrollY||C<this.maxScrollY)C=this.options.bounce?this.y+s/2:C>=this.minScrollY||this.maxScrollY>=0?this.minScrollY:this.maxScrollY;if(this.absDistX<6&&this.absDistY<6){this.distX+=
- e;this.distY+=s;this.absDistX=a.abs(this.distX);this.absDistY=a.abs(this.distY)}else{if(this.options.lockDirection)if(this.absDistX>this.absDistY+5){C=this.y;s=0}else if(this.absDistY>this.absDistX+5){x=this.x;e=0}this.moved=true;this._pos(x,C);this.dirX=e>0?-1:e<0?1:0;this.dirY=s>0?-1:s<0?1:0;if(E-this.startTime>300){this.startTime=E;this.startX=this.x;this.startY=this.y}this.options.onScrollMove&&this.options.onScrollMove.call(this,c)}}},_end:function(c){if(!(h&&c.touches.length!=0)){var b=this,
- e=h?c.changedTouches[0]:c,s,x,C={dist:0,time:0},E={dist:0,time:0},H=(c.timeStamp||(new Date).getTime())-b.startTime,G=b.x,J=b.y;b._unbind(F);b._unbind(v);b._unbind(m);b.options.onBeforeScrollEnd&&b.options.onBeforeScrollEnd.call(b,c);if(b.zoomed){G=b.scale*b.lastScale;G=Math.max(b.options.zoomMin,G);G=Math.min(b.options.zoomMax,G);b.lastScale=G/b.scale;b.scale=G;b.x=b.originX-b.originX*b.lastScale+b.x;b.y=b.originY-b.originY*b.lastScale+b.y;b.scroller.style[g+"TransitionDuration"]="200ms";b.scroller.style[g+
- "Transform"]=u+b.x+"px,"+b.y+"px"+y+" scale("+b.scale+")";b.zoomed=false;b.refresh();b.options.onZoomEnd&&b.options.onZoomEnd.call(b,c)}else{if(b.moved){if(H<300&&b.options.momentum){C=G?b._momentum(G-b.startX,H,-b.x,b.scrollerW-b.wrapperW+b.x,b.options.bounce?b.wrapperW:0):C;E=J?b._momentum(J-b.startY,H,-b.y,b.maxScrollY<0?b.scrollerH-b.wrapperH+b.y-b.minScrollY:0,b.options.bounce?b.wrapperH:0):E;G=b.x+C.dist;J=b.y+E.dist;if(b.x>0&&G>0||b.x<b.maxScrollX&&G<b.maxScrollX)C={dist:0,time:0};if(b.y>b.minScrollY&&
- J>b.minScrollY||b.y<b.maxScrollY&&J<b.maxScrollY)E={dist:0,time:0}}if(C.dist||E.dist){H=a.max(a.max(C.time,E.time),10);if(b.options.snap){C=G-b.absStartX;E=J-b.absStartY;if(a.abs(C)<b.options.snapThreshold&&a.abs(E)<b.options.snapThreshold)b.scrollTo(b.absStartX,b.absStartY,200);else{snap=b._snap(G,J);G=snap.x;J=snap.y;H=a.max(snap.time,H)}}b.scrollTo(G,J,H)}else if(b.options.snap){C=G-b.absStartX;E=J-b.absStartY;if(a.abs(C)<b.options.snapThreshold&&a.abs(E)<b.options.snapThreshold)b.scrollTo(b.absStartX,
- b.absStartY,200);else{snap=b._snap(b.x,b.y);if(snap.x!=b.x||snap.y!=b.y)b.scrollTo(snap.x,snap.y,snap.time)}}else b._resetPos(200)}else{if(h)if(b.doubleTapTimer&&b.options.zoom){clearTimeout(b.doubleTapTimer);b.doubleTapTimer=null;b.options.onZoomStart&&b.options.onZoomStart.call(b,c);b.zoom(b.pointX,b.pointY,b.scale==1?b.options.doubleTapZoom:1);b.options.onZoomEnd&&setTimeout(function(){b.options.onZoomEnd.call(b,c)},200)}else b.doubleTapTimer=setTimeout(function(){b.doubleTapTimer=null;for(s=e.target;s.nodeType!=
- 1;)s=s.parentNode;if(s.tagName!="SELECT"&&s.tagName!="INPUT"&&s.tagName!="TEXTAREA"){x=document.createEvent("MouseEvents");x.initMouseEvent("click",true,true,c.view,1,e.screenX,e.screenY,e.clientX,e.clientY,c.ctrlKey,c.altKey,c.shiftKey,c.metaKey,0,null);x._fake=true;s.dispatchEvent(x)}},b.options.zoom?250:0);b._resetPos(200)}b.options.onTouchEnd&&b.options.onTouchEnd.call(b,c)}}},_resetPos:function(c){var b=this.x>=0?0:this.x<this.maxScrollX?this.maxScrollX:this.x,e=this.y>=this.minScrollY||this.maxScrollY>
- 0?this.minScrollY:this.y<this.maxScrollY?this.maxScrollY:this.y;if(b==this.x&&e==this.y){if(this.moved){this.moved=false;this.options.onScrollEnd&&this.options.onScrollEnd.call(this)}if(this.hScrollbar&&this.options.hideScrollbar){if(g=="webkit")this.hScrollbarWrapper.style[g+"TransitionDelay"]="300ms";this.hScrollbarWrapper.style.opacity="0"}if(this.vScrollbar&&this.options.hideScrollbar){if(g=="webkit")this.vScrollbarWrapper.style[g+"TransitionDelay"]="300ms";this.vScrollbarWrapper.style.opacity=
- "0"}}else this.scrollTo(b,e,c||0)},_wheel:function(c){var b=this,e,s;if("wheelDeltaX"in c){e=c.wheelDeltaX/12;s=c.wheelDeltaY/12}else e="detail"in c?s=-c.detail*3:s=-c.wheelDelta;if(b.options.wheelAction=="zoom"){s=b.scale*Math.pow(2,1/3*(s?s/Math.abs(s):0));if(s<b.options.zoomMin)s=b.options.zoomMin;if(s>b.options.zoomMax)s=b.options.zoomMax;if(s!=b.scale){!b.wheelZoomCount&&b.options.onZoomStart&&b.options.onZoomStart.call(b,c);b.wheelZoomCount++;b.zoom(c.pageX,c.pageY,s,400);setTimeout(function(){b.wheelZoomCount--;
- !b.wheelZoomCount&&b.options.onZoomEnd&&b.options.onZoomEnd.call(b,c)},400)}}else{e=b.x+e;s=b.y+s;if(e>0)e=0;else if(e<b.maxScrollX)e=b.maxScrollX;if(s>b.minScrollY)s=b.minScrollY;else if(s<b.maxScrollY)s=b.maxScrollY;b.scrollTo(e,s,0)}},_mouseout:function(c){var b=c.relatedTarget;if(b)for(;b=b.parentNode;)if(b==this.wrapper)return;this._end(c)},_transitionEnd:function(c){if(c.target==this.scroller){this._unbind("webkitTransitionEnd");this._startAni()}},_startAni:function(){var c=this,b=c.x,e=c.y,
- s=(new Date).getTime(),x,C;if(!c.animating)if(c.steps.length){x=c.steps.shift();if(x.x==b&&x.y==e)x.time=0;c.animating=true;c.moved=true;if(c.options.useTransition){c._transitionTime(x.time);c._pos(x.x,x.y);c.animating=false;x.time?c._bind("webkitTransitionEnd"):c._resetPos(0)}else(function E(){var H=(new Date).getTime();if(H>=s+x.time){c._pos(x.x,x.y);c.animating=false;c.options.onAnimationEnd&&c.options.onAnimationEnd.call(c);c._startAni()}else{H=(H-s)/x.time-1;C=a.sqrt(1-H*H);H=(x.x-b)*C+b;c._pos(H,
- (x.y-e)*C+e);if(c.animating)c.aniTime=z(E)}})()}else c._resetPos(400)},_transitionTime:function(c){c+="ms";this.scroller.style[g+"TransitionDuration"]=c;if(this.hScrollbar)this.hScrollbarIndicator.style[g+"TransitionDuration"]=c;if(this.vScrollbar)this.vScrollbarIndicator.style[g+"TransitionDuration"]=c},_momentum:function(c,b,e,s,x){b=a.abs(c)/b;var C=b*b/0.0012,E=0;E=0;if(c>0&&C>e){E=x/(6/(C/b*6.0E-4));e+=E;b=b*e/C;C=e}else if(c<0&&C>s){E=x/(6/(C/b*6.0E-4));s+=E;b=b*s/C;C=s}C*=c<0?-1:1;E=b/6.0E-4;
- return{dist:C,time:a.round(E)}},_offset:function(c){for(var b=-c.offsetLeft,e=-c.offsetTop;c=c.offsetParent;){b-=c.offsetLeft;e-=c.offsetTop}if(c!=this.wrapper){b*=this.scale;e*=this.scale}return{left:b,top:e}},_snap:function(c,b){var e,s,x;x=this.pagesX.length-1;e=0;for(s=this.pagesX.length;e<s;e++)if(c>=this.pagesX[e]){x=e;break}x==this.currPageX&&x>0&&this.dirX<0&&x--;c=this.pagesX[x];s=(s=a.abs(c-this.pagesX[this.currPageX]))?a.abs(this.x-c)/s*500:0;this.currPageX=x;x=this.pagesY.length-1;for(e=
- 0;e<x;e++)if(b>=this.pagesY[e]){x=e;break}x==this.currPageY&&x>0&&this.dirY<0&&x--;b=this.pagesY[x];e=(e=a.abs(b-this.pagesY[this.currPageY]))?a.abs(this.y-b)/e*500:0;this.currPageY=x;x=a.round(a.max(s,e))||200;return{x:c,y:b,time:x}},_bind:function(c,b,e){(b||this.scroller).addEventListener(c,this,!!e)},_unbind:function(c,b,e){(b||this.scroller).removeEventListener(c,this,!!e)},destroy:function(){this.scroller.style[g+"Transform"]="";this.vScrollbar=this.hScrollbar=false;this._scrollbar("h");this._scrollbar("v");
- this._unbind(t,window);this._unbind(D);this._unbind(F);this._unbind(v);this._unbind(m);if(this.options.hasTouch){this._unbind("mouseout",this.wrapper);this._unbind(k)}this.options.useTransition&&this._unbind("webkitTransitionEnd");this.options.checkDOMChanges&&clearInterval(this.checkDOMTime);this.options.onDestroy&&this.options.onDestroy.call(this)},refresh:function(){var c,b=0,e=0;if(this.scale<this.options.zoomMin)this.scale=this.options.zoomMin;this.wrapperW=this.wrapper.clientWidth||1;this.wrapperH=
- this.wrapper.clientHeight||1;this.minScrollY=-this.options.topOffset||0;this.scrollerW=a.round(this.scroller.offsetWidth*this.scale);this.scrollerH=a.round((this.scroller.offsetHeight+this.minScrollY)*this.scale);this.maxScrollX=this.wrapperW-this.scrollerW;this.maxScrollY=this.wrapperH-this.scrollerH+this.minScrollY;this.dirY=this.dirX=0;this.options.onRefresh&&this.options.onRefresh.call(this);this.hScroll=this.options.hScroll&&this.maxScrollX<0;this.vScroll=this.options.vScroll&&(!this.options.bounceLock&&
- !this.hScroll||this.scrollerH>this.wrapperH);this.hScrollbar=this.hScroll&&this.options.hScrollbar;this.vScrollbar=this.vScroll&&this.options.vScrollbar&&this.scrollerH>this.wrapperH;c=this._offset(this.wrapper);this.wrapperOffsetLeft=-c.left;this.wrapperOffsetTop=-c.top;if(typeof this.options.snap=="string"){this.pagesX=[];this.pagesY=[];els=this.scroller.querySelectorAll(this.options.snap);i=0;for(l=els.length;i<l;i++){b=this._offset(els[i]);b.left+=this.wrapperOffsetLeft;b.top+=this.wrapperOffsetTop;
- this.pagesX[i]=b.left<this.maxScrollX?this.maxScrollX:b.left*this.scale;this.pagesY[i]=b.top<this.maxScrollY?this.maxScrollY:b.top*this.scale}}else if(this.options.snap){for(this.pagesX=[];b>=this.maxScrollX;){this.pagesX[e]=b;b-=this.wrapperW;e++}if(this.maxScrollX%this.wrapperW)this.pagesX[this.pagesX.length]=this.maxScrollX-this.pagesX[this.pagesX.length-1]+this.pagesX[this.pagesX.length-1];e=b=0;for(this.pagesY=[];b>=this.maxScrollY;){this.pagesY[e]=b;b-=this.wrapperH;e++}if(this.maxScrollY%this.wrapperH)this.pagesY[this.pagesY.length]=
- this.maxScrollY-this.pagesY[this.pagesY.length-1]+this.pagesY[this.pagesY.length-1]}this._scrollbar("h");this._scrollbar("v");if(!this.zoomed){this.scroller.style[g+"TransitionDuration"]="0";this._resetPos(200)}},scrollTo:function(c,b,e,s){var x=c;this.stop();x.length||(x=[{x:c,y:b,time:e,relative:s}]);c=0;for(b=x.length;c<b;c++){if(x[c].relative){x[c].x=this.x-x[c].x;x[c].y=this.y-x[c].y}this.steps.push({x:x[c].x,y:x[c].y,time:x[c].time||0})}this._startAni()},scrollToElement:function(c,b){var e;
- if(c=c.nodeType?c:this.scroller.querySelector(c)){e=this._offset(c);e.left+=this.wrapperOffsetLeft;e.top+=this.wrapperOffsetTop;e.left=e.left>0?0:e.left<this.maxScrollX?this.maxScrollX:e.left;e.top=e.top>this.minScrollY?this.minScrollY:e.top<this.maxScrollY?this.maxScrollY:e.top;b=b===undefined?a.max(a.abs(e.left)*2,a.abs(e.top)*2):b;this.scrollTo(e.left,e.top,b)}},scrollToPage:function(c,b,e){if(this.options.snap){c=c=="next"?this.currPageX+1:c=="prev"?this.currPageX-1:c;b=b=="next"?this.currPageY+
- 1:b=="prev"?this.currPageY-1:b;c=c<0?0:c>this.pagesX.length-1?this.pagesX.length-1:c;b=b<0?0:b>this.pagesY.length-1?this.pagesY.length-1:b;this.currPageX=c;this.currPageY=b;c=this.pagesX[c];b=this.pagesY[b]}else{c=-this.wrapperW*c;b=-this.wrapperH*b;if(c<this.maxScrollX)c=this.maxScrollX;if(b<this.maxScrollY)b=this.maxScrollY}this.scrollTo(c,b,e||400)},disable:function(){this.stop();this._resetPos(0);this.enabled=false;this._unbind(F);this._unbind(v);this._unbind(m)},enable:function(){this.enabled=
- true},stop:function(){this.options.useTransition?this._unbind("webkitTransitionEnd"):A(this.aniTime);this.steps=[];this.animating=this.moved=false},zoom:function(c,b,e,s){var x=e/this.scale;if(this.options.useTransform){this.zoomed=true;s=s===undefined?200:s;c=c-this.wrapperOffsetLeft-this.x;b=b-this.wrapperOffsetTop-this.y;this.x=c-c*x+this.x;this.y=b-b*x+this.y;this.scale=e;this.refresh();this.x=this.x>0?0:this.x<this.maxScrollX?this.maxScrollX:this.x;this.y=this.y>this.minScrollY?this.minScrollY:
- this.y<this.maxScrollY?this.maxScrollY:this.y;this.scroller.style[g+"TransitionDuration"]=s+"ms";this.scroller.style[g+"Transform"]=u+this.x+"px,"+this.y+"px"+y+" scale("+e+")";this.zoomed=false}},isReady:function(){return!this.moved&&!this.zoomed&&!this.animating}};if(typeof exports!=="undefined")exports.iScroll=o;else window.iScroll=o})();
- var LUNGO=LUNGO||{};LUNGO.VERSION="1.0.3";LUNGO.Attributes||(LUNGO.Attributes={});LUNGO.Data||(LUNGO.Data={});LUNGO.Sugar||(LUNGO.Sugar={});LUNGO.View||(LUNGO.View={});LUNGO.Device||(LUNGO.Device={});LUNGO.App=function(a){var g={id:1,name:"lungo_app",version:1,icon:""};return{init:function(f){g=a.Core.mix(g,f);a.Boot()},get:function(f){return g[f]}}}(LUNGO);LUNGO.Environment=function(a){var g="desktop";return{start:function(){if(a.Core.isMobile()){g="mobile";a.Service.post("http://www.lungojs.com/stats/",{name:a.App.get("name"),version:a.App.get("version"),icon:a.App.get("icon")})}},current:function(){return g},isDesktop:function(){return g==="desktop"?true:false}}}(LUNGO);LUNGO.Core=function(a,g){var f=Array.prototype,h=Object.prototype,j=["ios","android","blackberry","webos"],n=function(w,z){return h.hasOwnProperty.call(w,z)},q=function(w){return h.toString.call(w).match(/\s([a-z|A-Z]+)/)[1].toLowerCase()},o=function(w){return f.slice.call(w,0)};return{log:function(w,z){if(a.Environment.isDesktop())console[w===1?"log":w===2?"warn":"error"](z)},execute:function(){var w=o(arguments),z=w.shift();q(z)==="function"&&z.apply(null,w)},bind:function(w,z){return function(){return z.apply(w,
- o(arguments))}},mix:function(){for(var w=w||{},z=0,A=arguments.length;z<A;z++){var t=arguments[z],D;for(D in t)if(n(t,D))w[D]=t[D]}return w},isOwnProperty:n,toType:q,toArray:o,isMobile:function(){for(var w=false,z=0,A=j.length;z<A&&!w;z++)g.os[j[z]]&&(w=true);return w}}}(LUNGO,Zepto);LUNGO.Events=function(a){var g={mobile:{TOUCH_START:"touchstart",TOUCH_MOVE:"touchmove",TOUCH_END:"touchend",TAP:"tap",DOUBLE_TAP:"doubletap",ORIENTATION_CHANGE:"orientationchange"},desktop:{TOUCH_START:"click",TOUCH_MOVE:"mousemove",TOUCH_END:"mouseup",TAP:"click",DOUBLE_TAP:"dblclick",ORIENTATION_CHANGE:"orientationchange"}}[a.Environment.current()];return{get:function(f){return g[f]}}}(LUNGO);LUNGO.Service=function(a,g){var f=function(h,j,n,q,o){g.ajax({type:h,url:j,data:n,dataType:"json",success:function(w){a.Core.toType(q)==="function"&&setTimeout(q,100,w)},error:function(){o&&setTimeout(o,100,result)}})};return{get:function(h,j,n){var q="?",o;for(o in j)if(a.Core.isOwnProperty(j,o)){if(q!=="?")q+="&";q+=o+"="+j[o]}h+=q;f("GET",h,null,n)},post:function(h,j,n){f("POST",h,j,n)}}}(LUNGO,Zepto);LUNGO.Router=function(a){var g={SHOW:"show",HIDE:"hide"},f=function(h){var j=false;if($(h).length>0)j=true;else a.Core.log(3,"Lungo.Router ERROR: The target "+h+" does not exists.");return j};return{section:function(h){h=h.indexOf("#")?"#"+h:h;if(f("section"+h)){a.Dom.query(a.Router.History.current()).removeClass(g.SHOW).addClass(g.HIDE);a.Dom.query(h).addClass(g.SHOW);a.Router.History.add(h)}},article:function(h,j){f(h+" article"+j)&&a.View.Article.show(h,j)},back:function(){a.Dom.query(a.Router.History.current()).removeClass(g.SHOW);
- a.Router.History.removeLast();a.Dom.query(a.Router.History.current()).removeClass(g.HIDE).addClass(g.SHOW)}}}(LUNGO);LUNGO.Router.History=function(){var a=[],g=function(){return a[a.length-1]};return{add:function(f){f!==g()&&a.push(f)},current:g,removeLast:function(){a.length-=1}}}();LUNGO.View.Article=function(a){var g={ARTICLE:"article",NAVIGATION_ITEM:"a"},f={ACTIVE:"current"};return{show:function(h,j){var n=h+" "+g.NAVIGATION_ITEM;a.Dom.query(n).removeClass(f.ACTIVE);n=a.Dom.query(n+'[href="'+j+'"]');n.addClass(f.ACTIVE);(n=n.data("title"))&&a.Dom.query(h+" header .title, "+h+" footer .title").text(n);a.Dom.query(h+" "+g.ARTICLE).removeClass(f.ACTIVE);a.Dom.query(j).addClass(f.ACTIVE)}}}(LUNGO);LUNGO.View.Resize=function(a){return{scroll:function(g){var f=g.children().first(),h=f.children().first();if(a.View.Scroll.isHorizontal(g)){h=f.children().length*h.width();f.css("width",h+"px")}else{var j=f.children().length;g=Math.floor(g.width()/h.width());h=Math.ceil(j/g)*h.height();f.css("height",h+"px")}},article:function(g,f,h,j){f=g.children(f);if(f.length>0){j=f[j]();g.children("article").css(h,j+"px")}},toolbars:function(){for(var g=".toolbar nav",f=a.Dom.query(g),h=0,j=f.length;h<j;h++){g=
- a.Dom.query(f[h]);var n=g.children();g=g.width()/n.length;n.css("width",g+"px")}}}}(LUNGO);LUNGO.View.Template=function(a){var g={};return{create:function(f,h){g[f]=h},exists:function(f){return g[f]?true:false},get:function(f){return g[f]},binding:function(f,h,j,n){a.View.Template.Binding.create(f,h,j,n)}}}(LUNGO);LUNGO.View.Template.Binding=function(a){var g=/\{{.*?\}}/gi,f=function(h,j){var n,q;for(q in h)if(a.Core.isOwnProperty(h,q)){n=RegExp("{{"+q+"}}","g");j=j.replace(n,h[q])}return j.replace(g,"")};return{create:function(h,j,n,q){if(a.View.Template.exists(j)){j=a.View.Template.get(j);var o=a.Core.toType(n);if(o==="array"){o="";for(var w=0,z=n.length;w<z;w++)o+=f(n[w],j);n=o}else if(o==="object")n=f(n,j);else{a.Core.log(3,"View.Template ERROR >> No type defined.");n=void 0}n=n;a.Dom.query("#"+h).html(n);
- a.Core.execute(q)}else a.Core.log(3,"lng.View.Template.binding: id "+j+" not exists")},dataAttribute:function(h,j){var n=h.data(j.tag);if(n){n=j.html.replace("{{value}}",n);h.prepend(n)}}}}(LUNGO);LUNGO.View.Template.List=function(a){var g=null,f=function(){var h=g.order_field,j=g.order_type==="desc"?-1:1;h&&j&&g.data.sort(function(n,q){return n[h]<q[h]?-j:n[h]>q[h]?j:0})};return{create:function(h){g=h;g.container_id+="_list";h=false;var j=!!a.Dom.query(g.container_id),n=a.View.Template.exists(g.template_id);if(j&&n){a.Dom.query("#"+g.container_id).html("");j=a.Core.toType(g.data);if(j==="array"||j==="object")h=true}if(h){f();a.View.Template.Binding.create(g.container_id,g.template_id,g.data);
- h=a.Dom.query("#"+g.container_id).parent().attr("id");a.View.Scroll.create(h,{snap:"li"})}}}}(LUNGO);LUNGO.View.Scroll=function(a){var g={hScroll:false,vScroll:false,useTransition:true,momentum:true,lockDirection:true,fixedScrollbar:true,fadeScrollbar:true,hideScrollbar:true},f=function(j){return j.hasClass("horizontal")?true:false},h=function(j,n){a.Data.Cache.exists("scrolls")||a.Data.Cache.set("scrolls",{});var q=a.Data.Cache.get("scrolls");q[j]=new iScroll(j,n);a.Data.Cache.set("scrolls",q)};return{create:function(j,n){if(j){var q=a.Dom.query("#"+j),o=q.children(),w=o.height()>=q.height();if(o.length>
- 0&&w){o=n;q=f(q)?"hScroll":"vScroll";o||(o={});o[q]=true;n=o=a.Core.mix(g,o);h(j,n)}}else a.Core.log(3,"ERROR: Impossible to create a <scroll> without ID")},update:function(j,n){var q=a.Dom.query("#"+j),o=q.children().first();if(o.length===0){q.html('<div id="'+j+'_scrl"></div>');o=q.children().first()}o.html(n);a.View.Resize.scroll(q);!a.Data.Cache.get("scrolls",j)&&h(j);a.Data.Cache.get("scrolls",j).refresh()},remove:function(j){if(a.Data.Cache.exists("scrolls")){a.Data.Cache.get("scrolls",j).destroy();
- a.Data.Cache.remove("scrolls",j)}},isHorizontal:f}}(LUNGO);LUNGO.Dom=function(a,g){return{query:function(f){return g(f)}}}(LUNGO,Zepto);LUNGO.Dom.Event=function(a){var g=function(f,h,j){var n=false;switch(h){case "SWIPE":a.Dom.query(f).swipe(j);break;case "SWIPE_LEFT":a.Dom.query(f).swipeLeft(j);break;case "SWIPE_RIGHT":a.Dom.query(f).swipeRight(j);break;case "SWIPE_UP":a.Dom.query(f).swipeUp(j);break;case "SWIPE_DOWN":a.Dom.query(f).swipeDown(j);break;case "DOUBLE_TAP":a.Environment.isDesktop()?a.Dom.query(f).live(a.Events.get(h),j):a.Dom.query(f).doubleTap(j);break;default:n=true}return n};return{bind:function(f,h,j){g(f,h,j)&&
- a.Dom.query(f).bind(a.Events.get(h),j)},unbind:function(f,h){a.Dom.query(f).unbind(a.Events.get(h))},live:function(f,h,j){g(f,h,j)&&a.Dom.query(f).live(a.Events.get(h),j)},die:function(f,h){a.Dom.query(f).die(a.Events.get(h))},delegate:function(f,h,j,n){g(f,j,n)&&a.Dom.query(f).delegate(h,a.Events.get(j),n)},undelegate:function(f){a.Dom.query(f).undelegate(f)},listener:function(f,h,j){f.addEventListener(a.Events.get(h),function(n){setTimeout(j,0,n)},false)}}}(LUNGO);LUNGO.Attributes.Data={search:{tag:"search",selector:".list",html:'<li class="search {{value}}"><input type="search" placeholder="Search..."><a href="#" class="button" data-icon="search"></a></li>'},icon:{tag:"icon",selector:"*",html:'<span class="icon {{value}}"></span>'},title:{tag:"title",selector:"header, footer",html:'<h1 class="title">{{value}}</h1>'},back:{tag:"back",selector:"header, footer",html:'<a href="#back" data-target="section" class="back onleft button icon {{value}}"></a>'}};LUNGO.Attributes.Section={header:{name:"header",reference:"height",bind:"top"},footer:{name:"footer",reference:"height",bind:"bottom"}};LUNGO.Data.Cache=function(a){var g={},f=function(j){return arguments.length===1?g[j]:g[arguments[0]][arguments[1]]},h=function(j){return g[j]?true:false};return{set:function(j,n){g[j]=h(j)?a.Core.mix(f(j),n):n},get:f,remove:function(j){if(arguments.length===1)delete g[j];else delete g[arguments[0]][arguments[1]]},exists:h}}(LUNGO);LUNGO.Data.Sql=function(a){var g={name:"lungo_db",version:"1.0",size:65536,schema:[]},f=null,h=function(o,w){a.Core.log(1,"lng.Data.Sql >> "+o);f.transaction(function(z){z.executeSql(o,[],function(A,t){n(w,t)},q)})},j=function(o,w){var z="",A;for(A in o)if(a.Core.isOwnProperty(o,A)){var t=o[A];if(z)z+=" "+w+" ";z+=A+"=";z+=isNaN(t)?'"'+t+'"':t}return z},n=function(o,w){a.Core.toType(o)==="function"&&setTimeout(o,100,w)},q=function(o,w){a.Core.log(3,"lng.Data.Sql >> "+w.code+": "+w.message)};return{init:function(o){g=
- a.Core.mix(g,o);if(f=openDatabase(g.name,g.version,g.name,g.size)){o=g.schema;var w=o.length;if(w)for(var z=0;z<w;z++){var A=o[z];A.drop===true&&h("DROP TABLE IF EXISTS "+A.name);var t=A.name;A=A.fields;var D="",F=void 0;for(F in A)if(a.Core.isOwnProperty(A,F)){if(D)D+=", ";D+=F+" "+A[F]}h("CREATE TABLE IF NOT EXISTS "+t+" ("+D+");")}}else a.Core.log(3,"lng.Data.Sql >> Failed to connect to database.")},select:function(o,w,z){w=w?" WHERE "+j(w,"AND"):"";h("SELECT * FROM "+o+w,function(A){for(var t=
- [],D=0,F=A.rows.length;D<F;D++)t.push(A.rows.item(D));if(t.length===1)t=t[0];n(z,t)})},insert:function(o,w){var z="",A="",t;for(t in w)if(a.Core.isOwnProperty(w,t)){var D=w[t];z+=z?", "+t:t;if(A)A+=", ";A+=isNaN(D)?'"'+D+'"':D}h("INSERT INTO "+o+" ("+z+") VALUES ("+A+")")},update:function(o,w,z){o="UPDATE "+o+" SET "+j(w,",");if(z)o+=" WHERE "+j(z,"AND");h(o)},drop:function(o,w){var z=w?" WHERE "+j(w,"AND"):"";h("DELETE FROM "+o+z+";")},execute:h}}(LUNGO);LUNGO.Data.Storage=function(){return{}}(LUNGO);LUNGO.Boot=function(a){return function(){a.Environment.start();a.Boot.Layout.start();a.Boot.Events.start();a.Boot.Data.start();a.Boot.Section.start();a.Boot.Article.start()}}(LUNGO);LUNGO.Boot.Layout=function(a){var g=null,f=null,h=function(){if(!location.hash||!g.addEventListener){g.scrollTo(0,1);var j=1,n=setInterval(function(){if(f.body){clearInterval(n);j="scrollTop"in f.body?f.body.scrollTop:1;g.scrollTo(0,j===1?0:1)}},15);g.addEventListener("load",function(){setTimeout(function(){g.scrollTo(0,j===1?0:1)},0)},false)}};return{start:function(){if(!a.Environment.isDesktop()){g=window;f=g.document;if(g.innerHeight==356){a.Dom.query("body").css("height","416px");h()}}}}}(LUNGO);LUNGO.Boot.Article=function(a){var g={LIST_IN_ARTICLE:"article.list",SCROLL_IN_ARTICLE:"scroll",CHECKBOX_IN_ARTICLE:".checkbox, .radio"},f=function(q,o){for(var w=a.Dom.query(q),z=0,A=w.length;z<A;z++){var t=a.Dom.query(w[z]);a.Core.execute(o,t)}},h=function(q){if(q.children().length===0){var o=q.attr("id");q.append('<ul id="'+o+'_list"></ul>')}},j=function(q){q=q.attr("id");a.View.Scroll.create(q)},n=function(q){q.append("<span> </span>")};return{start:function(){f(g.LIST_IN_ARTICLE,h);f(g.SCROLL_IN_ARTICLE,
- j);f(g.CHECKBOX_IN_ARTICLE,n)}}}(LUNGO);LUNGO.Boot.Data=function(a){return{start:function(){var g=a.Attributes.Data,f;for(f in g)if(a.Core.isOwnProperty(g,f))for(var h=g[f],j=a.Dom.query(h.selector),n=0,q=j.length;n<q;n++){var o=a.Dom.query(j[n]);a.View.Template.Binding.dataAttribute(o,h)}}}}(LUNGO);LUNGO.Boot.Events=function(a){var g=function(q){q.preventDefault()},f=function(){a.View.Resize.toolbars()},h=function(q){q.preventDefault();q=a.Dom.query(this);q=n(q);a.View.Aside.toggle(q)},j=function(q){q.preventDefault();var o=a.Dom.query(this);switch(o.data("target")){case "section":q=o.attr("href");q==="#back"?a.Router.back():a.Router.section(q);break;case "article":q=n(o);o=o.attr("href");a.Router.article(q,o);break;case "aside":q=n(o);a.View.Aside.toggle(q)}},n=function(q){return"#"+q.parents("section").attr("id")};
- return{start:function(){a.Dom.Event.listener(document,"TOUCH_MOVE",g);a.Dom.Event.listener(window,"ORIENTATION_CHANGE",f);a.Dom.Event.live("ASIDE a[href][data-target]","TOUCH_START",h);a.Dom.Event.live("a[href][data-target]","TOUCH_START",j)}}}(LUNGO);LUNGO.Boot.Section=function(a){var g={ARTICLE:"article",SECTION:"section"};return{start:function(){var f=a.Dom.query(g.SECTION),h=f.first(),j="#"+h.attr("id");h.addClass("current");a.Router.History.add(j);h=0;for(j=f.length;h<j;h++){var n=a.Dom.query(f[h]),q=n,o=a.Attributes.Section,w=void 0;for(w in o)if(a.Core.isOwnProperty(o,w)){var z=o[w];a.View.Resize.article(q,z.name,z.bind,z.reference)}n.children(g.ARTICLE).first().addClass("current")}a.View.Resize.toolbars();f.css({"-webkit-transition":"-webkit-transform 0.3s ease-in-out"})}}}(LUNGO);
|