//========START OF MOOTOOLS========================================================== /* --- MooTools: the javascript framework web build: - http://mootools.net/core/76bf47062d6c1983d66ce47ad66aa0e0 packager build: - packager build Core/Core Core/Array Core/String Core/Number Core/Function Core/Object Core/Event Core/Browser Core/Class Core/Class.Extras Core/Slick.Parser Core/Slick.Finder Core/Element Core/Element.Style Core/Element.Event Core/Element.Delegation Core/Element.Dimensions Core/Fx Core/Fx.CSS Core/Fx.Tween Core/Fx.Morph Core/Fx.Transitions Core/Request Core/Request.HTML Core/Request.JSON Core/Cookie Core/JSON Core/DOMReady Core/Swiff copyrights: - [MooTools](http://mootools.net) licenses: - [MIT License](http://mootools.net/license.txt) ... */ (function(){ this.MooTools={version:"1.4.5",build:"ab8ea8824dc3b24b6666867a2c4ed58ebb762cf0"}; var o=this.typeOf=function(i){ if(i==null){ return "null"; } if(i.$family!=null){ return i.$family(); } if(i.nodeName){ if(i.nodeType==1){ return "element"; } if(i.nodeType==3){ return (/\S/).test(i.nodeValue)?"textnode":"whitespace"; } }else{ if(typeof i.length=="number"){ if(i.callee){ return "arguments"; } if("item" in i){ return "collection"; } } } return typeof i; }; var j=this.instanceOf=function(t,i){ if(t==null){ return false; } var s=t.$constructor||t.constructor; while(s){ if(s===i){ return true; } s=s.parent; } if(!t.hasOwnProperty){ return false; } return t instanceof i; }; var f=this.Function; var p=true; for(var k in {toString:1}){ p=null; } if(p){ p=["hasOwnProperty","valueOf","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","constructor"]; } f.prototype.overloadSetter=function(s){ var i=this; return function(u,t){ if(u==null){ return this; } if(s||typeof u!="string"){ for(var v in u){ i.call(this,v,u[v]); } if(p){ for(var w=p.length;w--;){ v=p[w]; if(u.hasOwnProperty(v)){ i.call(this,v,u[v]); } } } }else{ i.call(this,u,t); } return this; }; }; f.prototype.overloadGetter=function(s){ var i=this; return function(u){ var v,t; if(typeof u!="string"){ v=u; }else{ if(arguments.length>1){ v=arguments; }else{ if(s){ v=[u]; } } } if(v){ t={}; for(var w=0;w>>0;b>>0;b>>0; for(var a=(d<0)?Math.max(0,b+d):d||0;a>>0,b=Array(d); for(var a=0;a>>0;b-1:String(this).indexOf(a)>-1; },trim:function(){ return String(this).replace(/^\s+|\s+$/g,""); },clean:function(){ return String(this).replace(/\s+/g," ").trim(); },camelCase:function(){ return String(this).replace(/-\D/g,function(a){ return a.charAt(1).toUpperCase(); }); },hyphenate:function(){ return String(this).replace(/[A-Z]/g,function(a){ return ("-"+a.charAt(0).toLowerCase()); }); },capitalize:function(){ return String(this).replace(/\b[a-z]/g,function(a){ return a.toUpperCase(); }); },escapeRegExp:function(){ return String(this).replace(/([-.*+?^${}()|[\]\/\\])/g,"\\$1"); },toInt:function(a){ return parseInt(this,a||10); },toFloat:function(){ return parseFloat(this); },hexToRgb:function(b){ var a=String(this).match(/^#?(\w{1,2})(\w{1,2})(\w{1,2})$/); return (a)?a.slice(1).hexToRgb(b):null; },rgbToHex:function(b){ var a=String(this).match(/\d{1,3}/g); return (a)?a.rgbToHex(b):null; },substitute:function(a,b){ return String(this).replace(b||(/\\?\{([^{}]+)\}/g),function(d,c){ if(d.charAt(0)=="\\"){ return d.slice(1); } return (a[c]!=null)?a[c]:""; }); }}); Number.implement({limit:function(b,a){ return Math.min(a,Math.max(b,this)); },round:function(a){ a=Math.pow(10,a||0).toFixed(a<0?-a:0); return Math.round(this*a)/a; },times:function(b,c){ for(var a=0;a1?Array.slice(arguments,1):null,d=function(){ }; var c=function(){ var g=e,h=arguments.length; if(this instanceof c){ d.prototype=a.prototype; g=new d; } var f=(!b&&!h)?a.call(g):a.apply(g,b&&h?b.concat(Array.slice(arguments)):b||arguments); return g==e?f:g; }; return c; },pass:function(b,c){ var a=this; if(b!=null){ b=Array.from(b); } return function(){ return a.apply(c,b||arguments); }; },delay:function(b,c,a){ return setTimeout(this.pass((a==null?[]:a),c),b); },periodical:function(c,b,a){ return setInterval(this.pass((a==null?[]:a),b),c); }}); (function(){ var a=Object.prototype.hasOwnProperty; Object.extend({subset:function(d,g){ var f={}; for(var e=0,b=g.length;e]*>([\s\S]*?)<\/script>/gi,function(q,r){ e+=r+"\n"; return ""; }); if(o===true){ n.exec(e); }else{ if(typeOf(o)=="function"){ o(e,p); } } return p; }); n.extend({Document:this.Document,Window:this.Window,Element:this.Element,Event:this.Event}); this.Window=this.$constructor=new Type("Window",function(){ }); this.$family=Function.from("window").hide(); Window.mirror(function(e,o){ g[e]=o; }); this.Document=j.$constructor=new Type("Document",function(){ }); j.$family=Function.from("document").hide(); Document.mirror(function(e,o){ j[e]=o; }); j.html=j.documentElement; if(!j.head){ j.head=j.getElementsByTagName("head")[0]; } if(j.execCommand){ try{ j.execCommand("BackgroundImageCache",false,true); } catch(f){ } } if(this.attachEvent&&!this.addEventListener){ var c=function(){ this.detachEvent("onunload",c); j.head=j.html=j.window=null; }; this.attachEvent("onunload",c); } var l=Array.from; try{ l(j.html.childNodes); } catch(f){ Array.from=function(o){ if(typeof o!="string"&&Type.isEnumerable(o)&&typeOf(o)!="array"){ var e=o.length,p=new Array(e); while(e--){ p[e]=o[e]; } return p; } return l(o); }; var k=Array.prototype,m=k.slice; ["pop","push","reverse","shift","sort","splice","unshift","concat","join","slice"].each(function(e){ var o=k[e]; Array[e]=function(p){ return o.apply(Array.from(p),m.call(arguments,1)); }; }); } })(); (function(){ var b={}; var a=this.DOMEvent=new Type("DOMEvent",function(c,g){ if(!g){ g=window; } c=c||g.event; if(c.$extended){ return c; } this.event=c; this.$extended=true; this.shift=c.shiftKey; this.control=c.ctrlKey; this.alt=c.altKey; this.meta=c.metaKey; var i=this.type=c.type; var h=c.target||c.srcElement; while(h&&h.nodeType==3){ h=h.parentNode; } this.target=document.id(h); if(i.indexOf("key")==0){ var d=this.code=(c.which||c.keyCode); this.key=b[d]; if(i=="keydown"){ if(d>111&&d<124){ this.key="f"+(d-111); }else{ if(d>95&&d<106){ this.key=d-96; } } } if(this.key==null){ this.key=String.fromCharCode(d).toLowerCase(); } }else{ if(i=="click"||i=="dblclick"||i=="contextmenu"||i=="DOMMouseScroll"||i.indexOf("mouse")==0){ var j=g.document; j=(!j.compatMode||j.compatMode=="CSS1Compat")?j.html:j.body; this.page={x:(c.pageX!=null)?c.pageX:c.clientX+j.scrollLeft,y:(c.pageY!=null)?c.pageY:c.clientY+j.scrollTop}; this.client={x:(c.pageX!=null)?c.pageX-g.pageXOffset:c.clientX,y:(c.pageY!=null)?c.pageY-g.pageYOffset:c.clientY}; if(i=="DOMMouseScroll"||i=="mousewheel"){ this.wheel=(c.wheelDelta)?c.wheelDelta/120:-(c.detail||0)/3; } this.rightClick=(c.which==3||c.button==2); if(i=="mouseover"||i=="mouseout"){ var k=c.relatedTarget||c[(i=="mouseover"?"from":"to")+"Element"]; while(k&&k.nodeType==3){ k=k.parentNode; } this.relatedTarget=document.id(k); } }else{ if(i.indexOf("touch")==0||i.indexOf("gesture")==0){ this.rotation=c.rotation; this.scale=c.scale; this.targetTouches=c.targetTouches; this.changedTouches=c.changedTouches; var f=this.touches=c.touches; if(f&&f[0]){ var e=f[0]; this.page={x:e.pageX,y:e.pageY}; this.client={x:e.clientX,y:e.clientY}; } } } } if(!this.client){ this.client={}; } if(!this.page){ this.page={}; } }); a.implement({stop:function(){ return this.preventDefault().stopPropagation(); },stopPropagation:function(){ if(this.event.stopPropagation){ this.event.stopPropagation(); }else{ this.event.cancelBubble=true; } return this; },preventDefault:function(){ if(this.event.preventDefault){ this.event.preventDefault(); }else{ this.event.returnValue=false; } return this; }}); a.defineKey=function(d,c){ b[d]=c; return this; }; a.defineKeys=a.defineKey.overloadSetter(true); a.defineKeys({"38":"up","40":"down","37":"left","39":"right","27":"esc","32":"space","8":"backspace","9":"tab","46":"delete","13":"enter"}); })(); (function(){ var a=this.Class=new Type("Class",function(h){ if(instanceOf(h,Function)){ h={initialize:h}; } var g=function(){ e(this); if(g.$prototyping){ return this; } this.$caller=null; var i=(this.initialize)?this.initialize.apply(this,arguments):this; this.$caller=this.caller=null; return i; }.extend(this).implement(h); g.$constructor=a; g.prototype.$constructor=g; g.prototype.parent=c; return g; }); var c=function(){ if(!this.$caller){ throw new Error("The method \"parent\" cannot be called."); } var g=this.$caller.$name,h=this.$caller.$owner.parent,i=(h)?h.prototype[g]:null; if(!i){ throw new Error("The method \""+g+"\" has no parent."); } return i.apply(this,arguments); }; var e=function(g){ for(var h in g){ var j=g[h]; switch(typeOf(j)){ case "object": var i=function(){ }; i.prototype=j; g[h]=e(new i); break; case "array": g[h]=j.clone(); break; } } return g; }; var b=function(g,h,j){ if(j.$origin){ j=j.$origin; } var i=function(){ if(j.$protected&&this.$caller==null){ throw new Error("The method \""+h+"\" cannot be called."); } var l=this.caller,m=this.$caller; this.caller=m; this.$caller=i; var k=j.apply(this,arguments); this.$caller=m; this.caller=l; return k; }.extend({$owner:g,$origin:j,$name:h}); return i; }; var f=function(h,i,g){ if(a.Mutators.hasOwnProperty(h)){ i=a.Mutators[h].call(this,i); if(i==null){ return this; } } if(typeOf(i)=="function"){ if(i.$hidden){ return this; } this.prototype[h]=(g)?i:b(this,h,i); }else{ Object.merge(this.prototype,h,i); } return this; }; var d=function(g){ g.$prototyping=true; var h=new g; delete g.$prototyping; return h; }; a.implement("implement",f.overloadSetter()); a.Mutators={Extends:function(g){ this.parent=g; this.prototype=d(g); },Implements:function(g){ Array.from(g).each(function(j){ var h=new j; for(var i in h){ f.call(this,i,h[i],true); } },this); }}; })(); (function(){ this.Chain=new Class({$chain:[],chain:function(){ this.$chain.append(Array.flatten(arguments)); return this; },callChain:function(){ return (this.$chain.length)?this.$chain.shift().apply(this,arguments):false; },clearChain:function(){ this.$chain.empty(); return this; }}); var a=function(b){ return b.replace(/^on([A-Z])/,function(c,d){ return d.toLowerCase(); }); }; this.Events=new Class({$events:{},addEvent:function(d,c,b){ d=a(d); this.$events[d]=(this.$events[d]||[]).include(c); if(b){ c.internal=true; } return this; },addEvents:function(b){ for(var c in b){ this.addEvent(c,b[c]); } return this; },fireEvent:function(e,c,b){ e=a(e); var d=this.$events[e]; if(!d){ return this; } c=Array.from(c); d.each(function(f){ if(b){ f.delay(b,this,c); }else{ f.apply(this,c); } },this); return this; },removeEvent:function(e,d){ e=a(e); var c=this.$events[e]; if(c&&!d.internal){ var b=c.indexOf(d); if(b!=-1){ delete c[b]; } } return this; },removeEvents:function(d){ var e; if(typeOf(d)=="object"){ for(e in d){ this.removeEvent(e,d[e]); } return this; } if(d){ d=a(d); } for(e in this.$events){ if(d&&d!=e){ continue; } var c=this.$events[e]; for(var b=c.length;b--;){ if(b in c){ this.removeEvent(e,c[b]); } } } return this; }}); this.Options=new Class({setOptions:function(){ var b=this.options=Object.merge.apply(null,[{},this.options].append(arguments)); if(this.addEvent){ for(var c in b){ if(typeOf(b[c])!="function"||!(/^on[A-Z]/).test(c)){ continue; } this.addEvent(c,b[c]); delete b[c]; } } return this; }}); })(); (function(){ var k,n,l,g,a={},c={},m=/\\/g; var e=function(q,p){ if(q==null){ return null; } if(q.Slick===true){ return q; } q=(""+q).replace(/^\s+|\s+$/g,""); g=!!p; var o=(g)?c:a; if(o[q]){ return o[q]; } k={Slick:true,expressions:[],raw:q,reverse:function(){ return e(this.raw,true); }}; n=-1; while(q!=(q=q.replace(j,b))){ } k.length=k.expressions.length; return o[k.raw]=(g)?h(k):k; }; var i=function(o){ if(o==="!"){ return " "; }else{ if(o===" "){ return "!"; }else{ if((/^!/).test(o)){ return o.replace(/^!/,""); }else{ return "!"+o; } } } }; var h=function(u){ var r=u.expressions; for(var p=0;p+)\\s*|(\\s+)|(+|\\*)|\\#(+)|\\.(+)|\\[\\s*(+)(?:\\s*([*^$!~|]?=)(?:\\s*(?:([\"']?)(.*?)\\9)))?\\s*\\](?!\\])|(:+)(+)(?:\\((?:(?:([\"'])([^\\13]*)\\13)|((?:\\([^)]+\\)|[^()]*)+))\\))?)".replace(//,"["+f(">+~`!@$%^&={}\\;/g,"(?:[\\w\\u00a1-\\uFFFF-]|\\\\[^\\s0-9a-f])").replace(//g,"(?:[:\\w\\u00a1-\\uFFFF-]|\\\\[^\\s0-9a-f])")); function b(x,s,D,z,r,C,q,B,A,y,u,F,G,v,p,w){ if(s||n===-1){ k.expressions[++n]=[]; l=-1; if(s){ return ""; } } if(D||z||l===-1){ D=D||" "; var t=k.expressions[n]; if(g&&t[l]){ t[l].reverseCombinator=i(D); } t[++l]={combinator:D,tag:"*"}; } var o=k.expressions[n][l]; if(r){ o.tag=r.replace(m,""); }else{ if(C){ o.id=C.replace(m,""); }else{ if(q){ q=q.replace(m,""); if(!o.classList){ o.classList=[]; } if(!o.classes){ o.classes=[]; } o.classList.push(q); o.classes.push({value:q,regexp:new RegExp("(^|\\s)"+f(q)+"(\\s|$)")}); }else{ if(G){ w=w||p; w=w?w.replace(m,""):null; if(!o.pseudos){ o.pseudos=[]; } o.pseudos.push({key:G.replace(m,""),value:w,type:F.length==1?"class":"element"}); }else{ if(B){ B=B.replace(m,""); u=(u||"").replace(m,""); var E,H; switch(A){ case "^=": H=new RegExp("^"+f(u)); break; case "$=": H=new RegExp(f(u)+"$"); break; case "~=": H=new RegExp("(^|\\s)"+f(u)+"(\\s|$)"); break; case "|=": H=new RegExp("^"+f(u)+"(-|$)"); break; case "=": E=function(I){ return u==I; }; break; case "*=": E=function(I){ return I&&I.indexOf(u)>-1; }; break; case "!=": E=function(I){ return u!=I; }; break; default: E=function(I){ return !!I; }; } if(u==""&&(/^[*$^]=$/).test(A)){ E=function(){ return false; }; } if(!E){ E=function(I){ return I&&H.test(I); }; } if(!o.attributes){ o.attributes=[]; } o.attributes.push({key:B,operator:A,value:u,test:E}); } } } } } return ""; }; var d=(this.Slick||{}); d.parse=function(o){ return e(o); }; d.escapeRegExp=f; if(!this.Slick){ this.Slick=d; } }).apply((typeof exports!="undefined")?exports:this); (function(){ var k={},m={},d=Object.prototype.toString; k.isNativeCode=function(c){ return (/\{\s*\[native code\]\s*\}/).test(""+c); }; k.isXML=function(c){ return (!!c.xmlVersion)||(!!c.xml)||(d.call(c)=="[object XMLDocument]")||(c.nodeType==9&&c.documentElement.nodeName!="HTML"); }; k.setDocument=function(w){ var p=w.nodeType; if(p==9){ }else{ if(p){ w=w.ownerDocument; }else{ if(w.navigator){ w=w.document; }else{ return; } } } if(this.document===w){ return; } this.document=w; var A=w.documentElement,o=this.getUIDXML(A),s=m[o],r; if(s){ for(r in s){ this[r]=s[r]; } return; } s=m[o]={}; s.root=A; s.isXMLDocument=this.isXML(w); s.brokenStarGEBTN=s.starSelectsClosedQSA=s.idGetsName=s.brokenMixedCaseQSA=s.brokenGEBCN=s.brokenCheckedQSA=s.brokenEmptyAttributeQSA=s.isHTMLDocument=s.nativeMatchesSelector=false; var q,u,y,z,t; var x,v="slick_uniqueid"; var c=w.createElement("div"); var n=w.body||w.getElementsByTagName("body")[0]||A; n.appendChild(c); try{ c.innerHTML=""; s.isHTMLDocument=!!w.getElementById(v); } catch(C){ } if(s.isHTMLDocument){ c.style.display="none"; c.appendChild(w.createComment("")); u=(c.getElementsByTagName("*").length>1); try{ c.innerHTML="foo"; x=c.getElementsByTagName("*"); q=(x&&!!x.length&&x[0].nodeName.charAt(0)=="/"); } catch(C){ } s.brokenStarGEBTN=u||q; try{ c.innerHTML=""; s.idGetsName=w.getElementById(v)===c.firstChild; } catch(C){ } if(c.getElementsByClassName){ try{ c.innerHTML=""; c.getElementsByClassName("b").length; c.firstChild.className="b"; z=(c.getElementsByClassName("b").length!=2); } catch(C){ } try{ c.innerHTML=""; y=(c.getElementsByClassName("a").length!=2); } catch(C){ } s.brokenGEBCN=z||y; } if(c.querySelectorAll){ try{ c.innerHTML="foo"; x=c.querySelectorAll("*"); s.starSelectsClosedQSA=(x&&!!x.length&&x[0].nodeName.charAt(0)=="/"); } catch(C){ } try{ c.innerHTML=""; s.brokenMixedCaseQSA=!c.querySelectorAll(".MiX").length; } catch(C){ } try{ c.innerHTML=""; s.brokenCheckedQSA=(c.querySelectorAll(":checked").length==0); } catch(C){ } try{ c.innerHTML=""; s.brokenEmptyAttributeQSA=(c.querySelectorAll("[class*=\"\"]").length!=0); } catch(C){ } } try{ c.innerHTML="
"; t=(c.firstChild.getAttribute("action")!="s"); } catch(C){ } s.nativeMatchesSelector=A.matchesSelector||A.mozMatchesSelector||A.webkitMatchesSelector; if(s.nativeMatchesSelector){ try{ s.nativeMatchesSelector.call(A,":slick"); s.nativeMatchesSelector=null; } catch(C){ } } } try{ A.slick_expando=1; delete A.slick_expando; s.getUID=this.getUIDHTML; } catch(C){ s.getUID=this.getUIDXML; } n.removeChild(c); c=x=n=null; s.getAttribute=(s.isHTMLDocument&&t)?function(G,E){ var H=this.attributeGetters[E]; if(H){ return H.call(G); } var F=G.getAttributeNode(E); return (F)?F.nodeValue:null; }:function(F,E){ var G=this.attributeGetters[E]; return (G)?G.call(F):F.getAttribute(E); }; s.hasAttribute=(A&&this.isNativeCode(A.hasAttribute))?function(F,E){ return F.hasAttribute(E); }:function(F,E){ F=F.getAttributeNode(E); return !!(F&&(F.specified||F.nodeValue)); }; var D=A&&this.isNativeCode(A.contains),B=w&&this.isNativeCode(w.contains); s.contains=(D&&B)?function(E,F){ return E.contains(F); }:(D&&!B)?function(E,F){ return E===F||((E===w)?w.documentElement:E).contains(F); }:(A&&A.compareDocumentPosition)?function(E,F){ return E===F||!!(E.compareDocumentPosition(F)&16); }:function(E,F){ if(F){ do{ if(F===E){ return true; } }while((F=F.parentNode)); } return false; }; s.documentSorter=(A.compareDocumentPosition)?function(F,E){ if(!F.compareDocumentPosition||!E.compareDocumentPosition){ return 0; } return F.compareDocumentPosition(E)&4?-1:F===E?0:1; }:("sourceIndex" in A)?function(F,E){ if(!F.sourceIndex||!E.sourceIndex){ return 0; } return F.sourceIndex-E.sourceIndex; }:(w.createRange)?function(H,F){ if(!H.ownerDocument||!F.ownerDocument){ return 0; } var G=H.ownerDocument.createRange(),E=F.ownerDocument.createRange(); G.setStart(H,0); G.setEnd(H,0); E.setStart(F,0); E.setEnd(F,0); return G.compareBoundaryPoints(Range.START_TO_END,E); }:null; A=null; for(r in s){ this[r]=s[r]; } }; var f=/^([#.]?)((?:[\w-]+|\*))$/,h=/\[.+[*$^]=(?:""|'')?\]/,g={}; k.search=function(U,z,H,s){ var p=this.found=(s)?null:(H||[]); if(!U){ return p; }else{ if(U.navigator){ U=U.document; }else{ if(!U.nodeType){ return p; } } } var F,O,V=this.uniques={},I=!!(H&&H.length),y=(U.nodeType==9); if(this.document!==(y?U:U.ownerDocument)){ this.setDocument(U); } if(I){ for(O=p.length;O--;){ V[this.getUID(p[O])]=true; } } if(typeof z=="string"){ var r=z.match(f); simpleSelectors: if(r){ var u=r[1],v=r[2],A,E; if(!u){ if(v=="*"&&this.brokenStarGEBTN){ break simpleSelectors; } E=U.getElementsByTagName(v); if(s){ return E[0]||null; } for(O=0;A=E[O++];){ if(!(I&&V[this.getUID(A)])){ p.push(A); } } }else{ if(u=="#"){ if(!this.isHTMLDocument||!y){ break simpleSelectors; } A=U.getElementById(v); if(!A){ return p; } if(this.idGetsName&&A.getAttributeNode("id").nodeValue!=v){ break simpleSelectors; } if(s){ return A||null; } if(!(I&&V[this.getUID(A)])){ p.push(A); } }else{ if(u=="."){ if(!this.isHTMLDocument||((!U.getElementsByClassName||this.brokenGEBCN)&&U.querySelectorAll)){ break simpleSelectors; } if(U.getElementsByClassName&&!this.brokenGEBCN){ E=U.getElementsByClassName(v); if(s){ return E[0]||null; } for(O=0;A=E[O++];){ if(!(I&&V[this.getUID(A)])){ p.push(A); } } }else{ var T=new RegExp("(^|\\s)"+e.escapeRegExp(v)+"(\\s|$)"); E=U.getElementsByTagName("*"); for(O=0;A=E[O++];){ className=A.className; if(!(className&&T.test(className))){ continue; } if(s){ return A; } if(!(I&&V[this.getUID(A)])){ p.push(A); } } } } } } if(I){ this.sort(p); } return (s)?null:p; } querySelector: if(U.querySelectorAll){ if(!this.isHTMLDocument||g[z]||this.brokenMixedCaseQSA||(this.brokenCheckedQSA&&z.indexOf(":checked")>-1)||(this.brokenEmptyAttributeQSA&&h.test(z))||(!y&&z.indexOf(",")>-1)||e.disableQSA){ break querySelector; } var S=z,x=U; if(!y){ var C=x.getAttribute("id"),t="slickid__"; x.setAttribute("id",t); S="#"+t+" "+S; U=x.parentNode; } try{ if(s){ return U.querySelector(S)||null; }else{ E=U.querySelectorAll(S); } } catch(Q){ g[z]=1; break querySelector; } finally{ if(!y){ if(C){ x.setAttribute("id",C); }else{ x.removeAttribute("id"); } U=x; } } if(this.starSelectsClosedQSA){ for(O=0;A=E[O++];){ if(A.nodeName>"@"&&!(I&&V[this.getUID(A)])){ p.push(A); } } }else{ for(O=0;A=E[O++];){ if(!(I&&V[this.getUID(A)])){ p.push(A); } } } if(I){ this.sort(p); } return p; } F=this.Slick.parse(z); if(!F.length){ return p; } }else{ if(z==null){ return p; }else{ if(z.Slick){ F=z; }else{ if(this.contains(U.documentElement||U,z)){ (p)?p.push(z):p=z; return p; }else{ return p; } } } } this.posNTH={}; this.posNTHLast={}; this.posNTHType={}; this.posNTHTypeLast={}; this.push=(!I&&(s||(F.length==1&&F.expressions[0].length==1)))?this.pushArray:this.pushUID; if(p==null){ p=[]; } var M,L,K; var B,J,D,c,q,G,W; var N,P,o,w,R=F.expressions; search: for(O=0;(P=R[O]);O++){ for(M=0;(o=P[M]);M++){ B="combinator:"+o.combinator; if(!this[B]){ continue search; } J=(this.isXMLDocument)?o.tag:o.tag.toUpperCase(); D=o.id; c=o.classList; q=o.classes; G=o.attributes; W=o.pseudos; w=(M===(P.length-1)); this.bitUniques={}; if(w){ this.uniques=V; this.found=p; }else{ this.uniques={}; this.found=[]; } if(M===0){ this[B](U,J,D,q,G,W,c); if(s&&w&&p.length){ break search; } }else{ if(s&&w){ for(L=0,K=N.length;L1)){ this.sort(p); } return (s)?(p[0]||null):p; }; k.uidx=1; k.uidk="slick-uniqueid"; k.getUIDXML=function(n){ var c=n.getAttribute(this.uidk); if(!c){ c=this.uidx++; n.setAttribute(this.uidk,c); } return c; }; k.getUIDHTML=function(c){ return c.uniqueNumber||(c.uniqueNumber=this.uidx++); }; k.sort=function(c){ if(!this.documentSorter){ return c; } c.sort(this.documentSorter); return c; }; k.cacheNTH={}; k.matchNTH=/^([+-]?\d*)?([a-z]+)?([+-]\d+)?$/; k.parseNTHArgument=function(q){ var o=q.match(this.matchNTH); if(!o){ return false; } var p=o[2]||false; var n=o[1]||1; if(n=="-"){ n=-1; } var c=+o[3]||0; o=(p=="n")?{a:n,b:c}:(p=="odd")?{a:2,b:1}:(p=="even")?{a:2,b:0}:{a:0,b:n}; return (this.cacheNTH[q]=o); }; k.createNTHPseudo=function(p,n,c,o){ return function(s,q){ var u=this.getUID(s); if(!this[c][u]){ var A=s.parentNode; if(!A){ return false; } var r=A[p],t=1; if(o){ var z=s.nodeName; do{ if(r.nodeName!=z){ continue; } this[c][this.getUID(r)]=t++; }while((r=r[n])); }else{ do{ if(r.nodeType!=1){ continue; } this[c][this.getUID(r)]=t++; }while((r=r[n])); } } q=q||"n"; var v=this.cacheNTH[q]||this.parseNTHArgument(q); if(!v){ return false; } var y=v.a,x=v.b,w=this[c][u]; if(y==0){ return x==w; } if(y>0){ if(w":function(p,c,r,o,n,q){ if((p=p.firstChild)){ do{ if(p.nodeType==1){ this.push(p,c,r,o,n,q); } }while((p=p.nextSibling)); } },"+":function(p,c,r,o,n,q){ while((p=p.nextSibling)){ if(p.nodeType==1){ this.push(p,c,r,o,n,q); break; } } },"^":function(p,c,r,o,n,q){ p=p.firstChild; if(p){ if(p.nodeType==1){ this.push(p,c,r,o,n,q); }else{ this["combinator:+"](p,c,r,o,n,q); } } },"~":function(q,c,s,p,n,r){ while((q=q.nextSibling)){ if(q.nodeType!=1){ continue; } var o=this.getUID(q); if(this.bitUniques[o]){ break; } this.bitUniques[o]=true; this.push(q,c,s,p,n,r); } },"++":function(p,c,r,o,n,q){ this["combinator:+"](p,c,r,o,n,q); this["combinator:!+"](p,c,r,o,n,q); },"~~":function(p,c,r,o,n,q){ this["combinator:~"](p,c,r,o,n,q); this["combinator:!~"](p,c,r,o,n,q); },"!":function(p,c,r,o,n,q){ while((p=p.parentNode)){ if(p!==this.document){ this.push(p,c,r,o,n,q); } } },"!>":function(p,c,r,o,n,q){ p=p.parentNode; if(p!==this.document){ this.push(p,c,r,o,n,q); } },"!+":function(p,c,r,o,n,q){ while((p=p.previousSibling)){ if(p.nodeType==1){ this.push(p,c,r,o,n,q); break; } } },"!^":function(p,c,r,o,n,q){ p=p.lastChild; if(p){ if(p.nodeType==1){ this.push(p,c,r,o,n,q); }else{ this["combinator:!+"](p,c,r,o,n,q); } } },"!~":function(q,c,s,p,n,r){ while((q=q.previousSibling)){ if(q.nodeType!=1){ continue; } var o=this.getUID(q); if(this.bitUniques[o]){ break; } this.bitUniques[o]=true; this.push(q,c,s,p,n,r); } }}; for(var i in j){ k["combinator:"+i]=j[i]; } var l={empty:function(c){ var n=c.firstChild; return !(n&&n.nodeType==1)&&!(c.innerText||c.textContent||"").length; },not:function(c,n){ return !this.matchNode(c,n); },contains:function(c,n){ return (c.innerText||c.textContent||"").indexOf(n)>-1; },"first-child":function(c){ while((c=c.previousSibling)){ if(c.nodeType==1){ return false; } } return true; },"last-child":function(c){ while((c=c.nextSibling)){ if(c.nodeType==1){ return false; } } return true; },"only-child":function(o){ var n=o; while((n=n.previousSibling)){ if(n.nodeType==1){ return false; } } var c=o; while((c=c.nextSibling)){ if(c.nodeType==1){ return false; } } return true; },"nth-child":k.createNTHPseudo("firstChild","nextSibling","posNTH"),"nth-last-child":k.createNTHPseudo("lastChild","previousSibling","posNTHLast"),"nth-of-type":k.createNTHPseudo("firstChild","nextSibling","posNTHType",true),"nth-last-of-type":k.createNTHPseudo("lastChild","previousSibling","posNTHTypeLast",true),index:function(n,c){ return this["pseudo:nth-child"](n,""+(c+1)); },even:function(c){ return this["pseudo:nth-child"](c,"2n"); },odd:function(c){ return this["pseudo:nth-child"](c,"2n+1"); },"first-of-type":function(c){ var n=c.nodeName; while((c=c.previousSibling)){ if(c.nodeName==n){ return false; } } return true; },"last-of-type":function(c){ var n=c.nodeName; while((c=c.nextSibling)){ if(c.nodeName==n){ return false; } } return true; },"only-of-type":function(o){ var n=o,p=o.nodeName; while((n=n.previousSibling)){ if(n.nodeName==p){ return false; } } var c=o; while((c=c.nextSibling)){ if(c.nodeName==p){ return false; } } return true; },enabled:function(c){ return !c.disabled; },disabled:function(c){ return c.disabled; },checked:function(c){ return c.checked||c.selected; },focus:function(c){ return this.isHTMLDocument&&this.document.activeElement===c&&(c.href||c.type||this.hasAttribute(c,"tabindex")); },root:function(c){ return (c===this.root); },selected:function(c){ return c.selected; }}; for(var b in l){ k["pseudo:"+b]=l[b]; } var a=k.attributeGetters={"for":function(){ return ("htmlFor" in this)?this.htmlFor:this.getAttribute("for"); },href:function(){ return ("href" in this)?this.getAttribute("href",2):this.getAttribute("href"); },style:function(){ return (this.style)?this.style.cssText:this.getAttribute("style"); },tabindex:function(){ var c=this.getAttributeNode("tabindex"); return (c&&c.specified)?c.nodeValue:null; },type:function(){ return this.getAttribute("type"); },maxlength:function(){ var c=this.getAttributeNode("maxLength"); return (c&&c.specified)?c.nodeValue:null; }}; a.MAXLENGTH=a.maxLength=a.maxlength; var e=k.Slick=(this.Slick||{}); e.version="1.1.7"; e.search=function(n,o,c){ return k.search(n,o,c); }; e.find=function(c,n){ return k.search(c,n,null,true); }; e.contains=function(c,n){ k.setDocument(c); return k.contains(c,n); }; e.getAttribute=function(n,c){ k.setDocument(n); return k.getAttribute(n,c); }; e.hasAttribute=function(n,c){ k.setDocument(n); return k.hasAttribute(n,c); }; e.match=function(n,c){ if(!(n&&c)){ return false; } if(!c||c===n){ return true; } k.setDocument(n); return k.matchNode(n,c); }; e.defineAttributeGetter=function(c,n){ k.attributeGetters[c]=n; return this; }; e.lookupAttributeGetter=function(c){ return k.attributeGetters[c]; }; e.definePseudo=function(c,n){ k["pseudo:"+c]=function(p,o){ return n.call(p,o); }; return this; }; e.lookupPseudo=function(c){ var n=k["pseudo:"+c]; if(n){ return function(o){ return n.call(this,o); }; } return null; }; e.override=function(n,c){ k.override(n,c); return this; }; e.isXML=k.isXML; e.uidOf=function(c){ return k.getUIDHTML(c); }; if(!this.Slick){ this.Slick=e; } }).apply((typeof exports!="undefined")?exports:this); var Element=function(b,g){ var h=Element.Constructors[b]; if(h){ return h(g); } if(typeof b!="string"){ return document.id(b).set(g); } if(!g){ g={}; } if(!(/^[\w-]+$/).test(b)){ var e=Slick.parse(b).expressions[0][0]; b=(e.tag=="*")?"div":e.tag; if(e.id&&g.id==null){ g.id=e.id; } var d=e.attributes; if(d){ for(var a,f=0,c=d.length;f=this.length){ delete this[g--]; } return e; }.protect()); } Array.forEachMethod(function(g,e){ Elements.implement(e,g); }); Array.mirror(Elements); var d; try{ d=(document.createElement("").name=="x"); } catch(b){ } var c=function(e){ return (""+e).replace(/&/g,"&").replace(/"/g,"""); }; Document.implement({newElement:function(e,g){ if(g&&g.checked!=null){ g.defaultChecked=g.checked; } if(d&&g){ e="<"+e; if(g.name){ e+=" name=\""+c(g.name)+"\""; } if(g.type){ e+=" type=\""+c(g.type)+"\""; } e+=">"; delete g.name; delete g.type; } return this.id(this.createElement(e)).set(g); }}); })(); (function(){ Slick.uidOf(window); Slick.uidOf(document); Document.implement({newTextNode:function(e){ return this.createTextNode(e); },getDocument:function(){ return this; },getWindow:function(){ return this.window; },id:(function(){ var e={string:function(E,D,l){ E=Slick.find(l,"#"+E.replace(/(\W)/g,"\\$1")); return (E)?e.element(E,D):null; },element:function(D,E){ Slick.uidOf(D); if(!E&&!D.$family&&!(/^(?:object|embed)$/i).test(D.tagName)){ var l=D.fireEvent; D._fireEvent=function(F,G){ return l(F,G); }; Object.append(D,Element.Prototype); } return D; },object:function(D,E,l){ if(D.toElement){ return e.element(D.toElement(l),E); } return null; }}; e.textnode=e.whitespace=e.window=e.document=function(l){ return l; }; return function(D,F,E){ if(D&&D.$family&&D.uniqueNumber){ return D; } var l=typeOf(D); return (e[l])?e[l](D,F,E||document):null; }; })()}); if(window.$==null){ Window.implement("$",function(e,l){ return document.id(e,l,this.document); }); } Window.implement({getDocument:function(){ return this.document; },getWindow:function(){ return this; }}); [Document,Element].invoke("implement",{getElements:function(e){ return Slick.search(this,e,new Elements); },getElement:function(e){ return document.id(Slick.find(this,e)); }}); var m={contains:function(e){ return Slick.contains(this,e); }}; if(!document.contains){ Document.implement(m); } if(!document.createElement("div").contains){ Element.implement(m); } var r=function(E,D){ if(!E){ return D; } E=Object.clone(Slick.parse(E)); var l=E.expressions; for(var e=l.length;e--;){ l[e][0].combinator=D; } return E; }; Object.forEach({getNext:"~",getPrevious:"!~",getParent:"!"},function(e,l){ Element.implement(l,function(D){ return this.getElement(r(D,e)); }); }); Object.forEach({getAllNext:"~",getAllPrevious:"!~",getSiblings:"~~",getChildren:">",getParents:"!"},function(e,l){ Element.implement(l,function(D){ return this.getElements(r(D,e)); }); }); Element.implement({getFirst:function(e){ return document.id(Slick.search(this,r(e,">"))[0]); },getLast:function(e){ return document.id(Slick.search(this,r(e,">")).getLast()); },getWindow:function(){ return this.ownerDocument.window; },getDocument:function(){ return this.ownerDocument; },getElementById:function(e){ return document.id(Slick.find(this,"#"+(""+e).replace(/(\W)/g,"\\$1"))); },match:function(e){ return !e||Slick.match(this,e); }}); if(window.$$==null){ Window.implement("$$",function(e){ if(arguments.length==1){ if(typeof e=="string"){ return Slick.search(this.document,e,new Elements); }else{ if(Type.isEnumerable(e)){ return new Elements(e); } } } return new Elements(arguments); }); } var w={before:function(l,e){ var D=e.parentNode; if(D){ D.insertBefore(l,e); } },after:function(l,e){ var D=e.parentNode; if(D){ D.insertBefore(l,e.nextSibling); } },bottom:function(l,e){ e.appendChild(l); },top:function(l,e){ e.insertBefore(l,e.firstChild); }}; w.inside=w.bottom; var j={},d={}; var k={}; Array.forEach(["type","value","defaultValue","accessKey","cellPadding","cellSpacing","colSpan","frameBorder","rowSpan","tabIndex","useMap"],function(e){ k[e.toLowerCase()]=e; }); k.html="innerHTML"; k.text=(document.createElement("div").textContent==null)?"innerText":"textContent"; Object.forEach(k,function(l,e){ d[e]=function(D,E){ D[l]=E; }; j[e]=function(D){ return D[l]; }; }); var x=["compact","nowrap","ismap","declare","noshade","checked","disabled","readOnly","multiple","selected","noresize","defer","defaultChecked","autofocus","controls","autoplay","loop"]; var h={}; Array.forEach(x,function(e){ var l=e.toLowerCase(); h[l]=e; d[l]=function(D,E){ D[e]=!!E; }; j[l]=function(D){ return !!D[e]; }; }); Object.append(d,{"class":function(e,l){ ("className" in e)?e.className=(l||""):e.setAttribute("class",l); },"for":function(e,l){ ("htmlFor" in e)?e.htmlFor=l:e.setAttribute("for",l); },style:function(e,l){ (e.style)?e.style.cssText=l:e.setAttribute("style",l); },value:function(e,l){ e.value=(l!=null)?l:""; }}); j["class"]=function(e){ return ("className" in e)?e.className||null:e.getAttribute("class"); }; var f=document.createElement("button"); try{ f.type="button"; } catch(z){ } if(f.type!="button"){ d.type=function(e,l){ e.setAttribute("type",l); }; } f=null; var p=document.createElement("input"); p.value="t"; p.type="submit"; if(p.value!="t"){ d.type=function(l,e){ var D=l.value; l.type=e; l.value=D; }; } p=null; var q=(function(e){ e.random="attribute"; return (e.getAttribute("random")=="attribute"); })(document.createElement("div")); Element.implement({setProperty:function(l,D){ var E=d[l.toLowerCase()]; if(E){ E(this,D); }else{ if(q){ var e=this.retrieve("$attributeWhiteList",{}); } if(D==null){ this.removeAttribute(l); if(q){ delete e[l]; } }else{ this.setAttribute(l,""+D); if(q){ e[l]=true; } } } return this; },setProperties:function(e){ for(var l in e){ this.setProperty(l,e[l]); } return this; },getProperty:function(F){ var D=j[F.toLowerCase()]; if(D){ return D(this); } if(q){ var l=this.getAttributeNode(F),E=this.retrieve("$attributeWhiteList",{}); if(!l){ return null; } if(l.expando&&!E[F]){ var G=this.outerHTML; if(G.substr(0,G.search(/\/?['"]?>(?![^<]*<['"])/)).indexOf(F)<0){ return null; } E[F]=true; } } var e=Slick.getAttribute(this,F); return (!e&&!Slick.hasAttribute(this,F))?null:e; },getProperties:function(){ var e=Array.from(arguments); return e.map(this.getProperty,this).associate(e); },removeProperty:function(e){ return this.setProperty(e,null); },removeProperties:function(){ Array.each(arguments,this.removeProperty,this); return this; },set:function(D,l){ var e=Element.Properties[D]; (e&&e.set)?e.set.call(this,l):this.setProperty(D,l); }.overloadSetter(),get:function(l){ var e=Element.Properties[l]; return (e&&e.get)?e.get.apply(this):this.getProperty(l); }.overloadGetter(),erase:function(l){ var e=Element.Properties[l]; (e&&e.erase)?e.erase.apply(this):this.removeProperty(l); return this; },hasClass:function(e){ return this.className.clean().contains(e," "); },addClass:function(e){ if(!this.hasClass(e)){ this.className=(this.className+" "+e).clean(); } return this; },removeClass:function(e){ this.className=this.className.replace(new RegExp("(^|\\s)"+e+"(?:\\s|$)"),"$1"); return this; },toggleClass:function(e,l){ if(l==null){ l=!this.hasClass(e); } return (l)?this.addClass(e):this.removeClass(e); },adopt:function(){ var E=this,e,G=Array.flatten(arguments),F=G.length; if(F>1){ E=e=document.createDocumentFragment(); } for(var D=0;D"; c.innerHTML=o; var y=(c.innerHTML==o); c=null; if(!g||!y||!a){ Element.Properties.html.set=(function(l){ var e={table:[1,"","
"],select:[1,""],tbody:[2,"","
"],tr:[3,"","
"]}; e.thead=e.tfoot=e.tbody; return function(D){ var E=e[this.get("tag")]; if(!E&&!a){ E=[0,"",""]; } if(!E){ return l.call(this,D); } var H=E[0],G=document.createElement("div"),F=G; if(!a){ b.appendChild(G); } G.innerHTML=[E[1],D,E[2]].flatten().join(""); while(H--){ F=F.firstChild; } this.empty().adopt(F.childNodes); if(!a){ b.removeChild(G); } G=null; }; })(Element.Properties.html.set); } var n=document.createElement("form"); n.innerHTML=""; if(n.firstChild.value!="s"){ Element.Properties.value={set:function(G){ var l=this.get("tag"); if(l!="select"){ return this.setProperty("value",G); } var D=this.getElements("option"); for(var E=0;E0||k==null?"visible":"hidden"; }; var f=(h?function(l,k){ l.style.opacity=k; }:(e?function(l,k){ var n=l.style; if(!l.currentStyle||!l.currentStyle.hasLayout){ n.zoom=1; } if(k==null||k==1){ k=""; }else{ k="alpha(opacity="+(k*100).limit(0,100).round()+")"; } var m=n.filter||l.getComputedStyle("filter")||""; n.filter=j.test(m)?m.replace(j,k):m+k; if(!n.filter){ n.removeAttribute("filter"); } }:a)); var g=(h?function(l){ var k=l.style.opacity||l.getComputedStyle("opacity"); return (k=="")?1:k.toFloat(); }:(e?function(l){ var m=(l.style.filter||l.getComputedStyle("filter")),k; if(m){ k=m.match(j); } return (k==null||m==null)?1:(k[1]/100); }:function(l){ var k=l.retrieve("$opacity"); if(k==null){ k=(l.style.visibility=="hidden"?0:1); } return k; })); var b=(i.style.cssFloat==null)?"styleFloat":"cssFloat"; Element.implement({getComputedStyle:function(m){ if(this.currentStyle){ return this.currentStyle[m.camelCase()]; } var l=Element.getDocument(this).defaultView,k=l?l.getComputedStyle(this,null):null; return (k)?k.getPropertyValue((m==b)?"float":m.hyphenate()):null; },setStyle:function(l,k){ if(l=="opacity"){ if(k!=null){ k=parseFloat(k); } f(this,k); return this; } l=(l=="float"?b:l).camelCase(); if(typeOf(k)!="string"){ var m=(Element.Styles[l]||"@").split(" "); k=Array.from(k).map(function(o,n){ if(!m[n]){ return ""; } return (typeOf(o)=="number")?m[n].replace("@",Math.round(o)):o; }).join(" "); }else{ if(k==String(Number(k))){ k=Math.round(k); } } this.style[l]=k; if((k==""||k==null)&&c&&this.style.removeAttribute){ this.style.removeAttribute(l); } return this; },getStyle:function(q){ if(q=="opacity"){ return g(this); } q=(q=="float"?b:q).camelCase(); var k=this.style[q]; if(!k||q=="zIndex"){ k=[]; for(var p in Element.ShortStyles){ if(q!=p){ continue; } for(var o in Element.ShortStyles[p]){ k.push(this.getStyle(o)); } return k.join(" "); } k=this.getComputedStyle(q); } if(k){ k=String(k); var m=k.match(/rgba?\([\d\s,]+\)/); if(m){ k=k.replace(m[0],m[0].rgbToHex()); } } if(Browser.opera||Browser.ie){ if((/^(height|width)$/).test(q)&&!(/px$/.test(k))){ var l=(q=="width")?["left","right"]:["top","bottom"],n=0; l.each(function(r){ n+=this.getStyle("border-"+r+"-width").toInt()+this.getStyle("padding-"+r).toInt(); },this); return this["offset"+q.capitalize()]-n+"px"; } if(Browser.ie&&(/^border(.+)Width|margin|padding/).test(q)&&isNaN(parseFloat(k))){ return "0px"; } } return k; },setStyles:function(l){ for(var k in l){ this.setStyle(k,l[k]); } return this; },getStyles:function(){ var k={}; Array.flatten(arguments).each(function(l){ k[l]=this.getStyle(l); },this); return k; }}); Element.Styles={left:"@px",top:"@px",bottom:"@px",right:"@px",width:"@px",height:"@px",maxWidth:"@px",maxHeight:"@px",minWidth:"@px",minHeight:"@px",backgroundColor:"rgb(@, @, @)",backgroundPosition:"@px @px",color:"rgb(@, @, @)",fontSize:"@px",letterSpacing:"@px",lineHeight:"@px",clip:"rect(@px @px @px @px)",margin:"@px @px @px @px",padding:"@px @px @px @px",border:"@px @ rgb(@, @, @) @px @ rgb(@, @, @) @px @ rgb(@, @, @)",borderWidth:"@px @px @px @px",borderStyle:"@ @ @ @",borderColor:"rgb(@, @, @) rgb(@, @, @) rgb(@, @, @) rgb(@, @, @)",zIndex:"@",zoom:"@",fontWeight:"@",textIndent:"@px",opacity:"@"}; Element.ShortStyles={margin:{},padding:{},border:{},borderWidth:{},borderStyle:{},borderColor:{}}; ["Top","Right","Bottom","Left"].each(function(q){ var p=Element.ShortStyles; var l=Element.Styles; ["margin","padding"].each(function(r){ var s=r+q; p[r][s]=l[s]="@px"; }); var o="border"+q; p.border[o]=l[o]="@px @ rgb(@, @, @)"; var n=o+"Width",k=o+"Style",m=o+"Color"; p[o]={}; p.borderWidth[n]=p[o][n]=l[n]="@px"; p.borderStyle[k]=p[o][k]=l[k]="@"; p.borderColor[m]=p[o][m]=l[m]="rgb(@, @, @)"; }); })(); (function(){ Element.Properties.events={set:function(b){ this.addEvents(b); }}; [Element,Window,Document].invoke("implement",{addEvent:function(f,h){ var i=this.retrieve("events",{}); if(!i[f]){ i[f]={keys:[],values:[]}; } if(i[f].keys.contains(h)){ return this; } i[f].keys.push(h); var g=f,b=Element.Events[f],d=h,j=this; if(b){ if(b.onAdd){ b.onAdd.call(this,h,f); } if(b.condition){ d=function(k){ if(b.condition.call(this,k,f)){ return h.call(this,k); } return true; }; } if(b.base){ g=Function.from(b.base).call(this,f); } } var e=function(){ return h.call(j); }; var c=Element.NativeEvents[g]; if(c){ if(c==2){ e=function(k){ k=new DOMEvent(k,j.getWindow()); if(d.call(j,k)===false){ k.stop(); } }; } this.addListener(g,e,arguments[2]); } i[f].values.push(e); return this; },removeEvent:function(e,d){ var c=this.retrieve("events"); if(!c||!c[e]){ return this; } var h=c[e]; var b=h.keys.indexOf(d); if(b==-1){ return this; } var g=h.values[b]; delete h.keys[b]; delete h.values[b]; var f=Element.Events[e]; if(f){ if(f.onRemove){ f.onRemove.call(this,d,e); } if(f.base){ e=Function.from(f.base).call(this,e); } } return (Element.NativeEvents[e])?this.removeListener(e,g,arguments[2]):this; },addEvents:function(b){ for(var c in b){ this.addEvent(c,b[c]); } return this; },removeEvents:function(b){ var d; if(typeOf(b)=="object"){ for(d in b){ this.removeEvent(d,b[d]); } return this; } var c=this.retrieve("events"); if(!c){ return this; } if(!b){ for(d in c){ this.removeEvents(d); } this.eliminate("events"); }else{ if(c[b]){ c[b].keys.each(function(e){ this.removeEvent(b,e); },this); delete c[b]; } } return this; },fireEvent:function(e,c,b){ var d=this.retrieve("events"); if(!d||!d[e]){ return this; } c=Array.from(c); d[e].keys.each(function(f){ if(b){ f.delay(b,this,c); }else{ f.apply(this,c); } },this); return this; },cloneEvents:function(e,d){ e=document.id(e); var c=e.retrieve("events"); if(!c){ return this; } if(!d){ for(var b in c){ this.cloneEvents(e,b); } }else{ if(c[d]){ c[d].keys.each(function(f){ this.addEvent(d,f); },this); } } return this; }}); Element.NativeEvents={click:2,dblclick:2,mouseup:2,mousedown:2,contextmenu:2,mousewheel:2,DOMMouseScroll:2,mouseover:2,mouseout:2,mousemove:2,selectstart:2,selectend:2,keydown:2,keypress:2,keyup:2,orientationchange:2,touchstart:2,touchmove:2,touchend:2,touchcancel:2,gesturestart:2,gesturechange:2,gestureend:2,focus:2,blur:2,change:2,reset:2,select:2,submit:2,paste:2,input:2,load:2,unload:1,beforeunload:2,resize:1,move:1,DOMContentLoaded:1,readystatechange:1,error:1,abort:1,scroll:1}; Element.Events={mousewheel:{base:(Browser.firefox)?"DOMMouseScroll":"mousewheel"}}; if("onmouseenter" in document.documentElement){ Element.NativeEvents.mouseenter=Element.NativeEvents.mouseleave=2; }else{ var a=function(b){ var c=b.relatedTarget; if(c==null){ return true; } if(!c){ return false; } return (c!=this&&c.prefix!="xul"&&typeOf(this)!="document"&&!this.contains(c)); }; Element.Events.mouseenter={base:"mouseover",condition:a}; Element.Events.mouseleave={base:"mouseout",condition:a}; } if(!window.addEventListener){ Element.NativeEvents.propertychange=2; Element.Events.change={base:function(){ var b=this.type; return (this.get("tag")=="input"&&(b=="radio"||b=="checkbox"))?"propertychange":"change"; },condition:function(b){ return this.type!="radio"||(b.event.propertyName=="checked"&&this.checked); }}; } })(); (function(){ var c=!!window.addEventListener; Element.NativeEvents.focusin=Element.NativeEvents.focusout=2; var k=function(l,m,n,o,p){ while(p&&p!=l){ if(m(p,o)){ return n.call(p,o,p); } p=document.id(p.parentNode); } }; var a={mouseenter:{base:"mouseover"},mouseleave:{base:"mouseout"},focus:{base:"focus"+(c?"":"in"),capture:true},blur:{base:c?"blur":"focusout",capture:true}}; var b="$delegation:"; var i=function(l){ return {base:"focusin",remove:function(m,o){ var p=m.retrieve(b+l+"listeners",{})[o]; if(p&&p.forms){ for(var n=p.forms.length;n--;){ p.forms[n].removeEvent(l,p.fns[n]); } } },listen:function(x,r,v,n,t,s){ var o=(t.get("tag")=="form")?t:n.target.getParent("form"); if(!o){ return; } var u=x.retrieve(b+l+"listeners",{}),p=u[s]||{forms:[],fns:[]},m=p.forms,w=p.fns; if(m.indexOf(o)!=-1){ return; } m.push(o); var q=function(y){ k(x,r,v,y,t); }; o.addEvent(l,q); w.push(q); u[s]=p; x.store(b+l+"listeners",u); }}; }; var d=function(l){ return {base:"focusin",listen:function(m,n,p,q,r){ var o={blur:function(){ this.removeEvents(o); }}; o[l]=function(s){ k(m,n,p,s,r); }; q.target.addEvents(o); }}; }; if(!c){ Object.append(a,{submit:i("submit"),reset:i("reset"),change:d("change"),select:d("select")}); } var h=Element.prototype,f=h.addEvent,j=h.removeEvent; var e=function(l,m){ return function(r,q,n){ if(r.indexOf(":relay")==-1){ return l.call(this,r,q,n); } var o=Slick.parse(r).expressions[0][0]; if(o.pseudos[0].key!="relay"){ return l.call(this,r,q,n); } var p=o.tag; o.pseudos.slice(1).each(function(s){ p+=":"+s.key+(s.value?"("+s.value+")":""); }); l.call(this,r,q); return m.call(this,p,o.pseudos[0].value,q); }; }; var g={addEvent:function(v,q,x){ var t=this.retrieve("$delegates",{}),r=t[v]; if(r){ for(var y in r){ if(r[y].fn==x&&r[y].match==q){ return this; } } } var p=v,u=q,o=x,n=a[v]||{}; v=n.base||p; q=function(B){ return Slick.match(B,u); }; var w=Element.Events[p]; if(w&&w.condition){ var l=q,m=w.condition; q=function(C,B){ return l(C,B)&&m.call(C,B,v); }; } var z=this,s=String.uniqueID(); var A=n.listen?function(B,C){ if(!C&&B&&B.target){ C=B.target; } if(C){ n.listen(z,q,x,B,C,s); } }:function(B,C){ if(!C&&B&&B.target){ C=B.target; } if(C){ k(z,q,x,B,C); } }; if(!r){ r={}; } r[s]={match:u,fn:o,delegator:A}; t[p]=r; return f.call(this,v,A,n.capture); },removeEvent:function(r,n,t,u){ var q=this.retrieve("$delegates",{}),p=q[r]; if(!p){ return this; } if(u){ var m=r,w=p[u].delegator,l=a[r]||{}; r=l.base||m; if(l.remove){ l.remove(this,u); } delete p[u]; q[m]=p; return j.call(this,r,w); } var o,v; if(t){ for(o in p){ v=p[o]; if(v.match==n&&v.fn==t){ return g.removeEvent.call(this,r,n,t,o); } } }else{ for(o in p){ v=p[o]; if(v.match==n){ g.removeEvent.call(this,r,n,v.fn,o); } } } return this; }}; [Element,Window,Document].invoke("implement",{addEvent:e(f,g.addEvent),removeEvent:e(j,g.removeEvent)}); })(); (function(){ var h=document.createElement("div"),e=document.createElement("div"); h.style.height="0"; h.appendChild(e); var d=(e.offsetParent===h); h=e=null; var l=function(m){ return k(m,"position")!="static"||a(m); }; var i=function(m){ return l(m)||(/^(?:table|td|th)$/i).test(m.tagName); }; Element.implement({scrollTo:function(m,n){ if(a(this)){ this.getWindow().scrollTo(m,n); }else{ this.scrollLeft=m; this.scrollTop=n; } return this; },getSize:function(){ if(a(this)){ return this.getWindow().getSize(); } return {x:this.offsetWidth,y:this.offsetHeight}; },getScrollSize:function(){ if(a(this)){ return this.getWindow().getScrollSize(); } return {x:this.scrollWidth,y:this.scrollHeight}; },getScroll:function(){ if(a(this)){ return this.getWindow().getScroll(); } return {x:this.scrollLeft,y:this.scrollTop}; },getScrolls:function(){ var n=this.parentNode,m={x:0,y:0}; while(n&&!a(n)){ m.x+=n.scrollLeft; m.y+=n.scrollTop; n=n.parentNode; } return m; },getOffsetParent:d?function(){ var m=this; if(a(m)||k(m,"position")=="fixed"){ return null; } var n=(k(m,"position")=="static")?i:l; while((m=m.parentNode)){ if(n(m)){ return m; } } return null; }:function(){ var m=this; if(a(m)||k(m,"position")=="fixed"){ return null; } try{ return m.offsetParent; } catch(n){ } return null; },getOffsets:function(){ if(this.getBoundingClientRect&&!Browser.Platform.ios){ var r=this.getBoundingClientRect(),o=document.id(this.getDocument().documentElement),q=o.getScroll(),t=this.getScrolls(),s=(k(this,"position")=="fixed"); return {x:r.left.toInt()+t.x+((s)?0:q.x)-o.clientLeft,y:r.top.toInt()+t.y+((s)?0:q.y)-o.clientTop}; } var n=this,m={x:0,y:0}; if(a(this)){ return m; } while(n&&!a(n)){ m.x+=n.offsetLeft; m.y+=n.offsetTop; if(Browser.firefox){ if(!c(n)){ m.x+=b(n); m.y+=g(n); } var p=n.parentNode; if(p&&k(p,"overflow")!="visible"){ m.x+=b(p); m.y+=g(p); } }else{ if(n!=this&&Browser.safari){ m.x+=b(n); m.y+=g(n); } } n=n.offsetParent; } if(Browser.firefox&&!c(this)){ m.x-=b(this); m.y-=g(this); } return m; },getPosition:function(p){ var q=this.getOffsets(),n=this.getScrolls(); var m={x:q.x-n.x,y:q.y-n.y}; if(p&&(p=document.id(p))){ var o=p.getPosition(); return {x:m.x-o.x-b(p),y:m.y-o.y-g(p)}; } return m; },getCoordinates:function(o){ if(a(this)){ return this.getWindow().getCoordinates(); } var m=this.getPosition(o),n=this.getSize(); var p={left:m.x,top:m.y,width:n.x,height:n.y}; p.right=p.left+p.width; p.bottom=p.top+p.height; return p; },computePosition:function(m){ return {left:m.x-j(this,"margin-left"),top:m.y-j(this,"margin-top")}; },setPosition:function(m){ return this.setStyles(this.computePosition(m)); }}); [Document,Window].invoke("implement",{getSize:function(){ var m=f(this); return {x:m.clientWidth,y:m.clientHeight}; },getScroll:function(){ var n=this.getWindow(),m=f(this); return {x:n.pageXOffset||m.scrollLeft,y:n.pageYOffset||m.scrollTop}; },getScrollSize:function(){ var o=f(this),n=this.getSize(),m=this.getDocument().body; return {x:Math.max(o.scrollWidth,m.scrollWidth,n.x),y:Math.max(o.scrollHeight,m.scrollHeight,n.y)}; },getPosition:function(){ return {x:0,y:0}; },getCoordinates:function(){ var m=this.getSize(); return {top:0,left:0,bottom:m.y,right:m.x,height:m.y,width:m.x}; }}); var k=Element.getComputedStyle; function j(m,n){ return k(m,n).toInt()||0; }; function c(m){ return k(m,"-moz-box-sizing")=="border-box"; }; function g(m){ return j(m,"border-top-width"); }; function b(m){ return j(m,"border-left-width"); }; function a(m){ return (/^(?:body|html)$/i).test(m.tagName); }; function f(m){ var n=m.getDocument(); return (!n.compatMode||n.compatMode=="CSS1Compat")?n.html:n.body; }; })(); Element.alias({position:"setPosition"}); [Window,Document,Element].invoke("implement",{getHeight:function(){ return this.getSize().y; },getWidth:function(){ return this.getSize().x; },getScrollTop:function(){ return this.getScroll().y; },getScrollLeft:function(){ return this.getScroll().x; },getScrollHeight:function(){ return this.getScrollSize().y; },getScrollWidth:function(){ return this.getScrollSize().x; },getTop:function(){ return this.getPosition().y; },getLeft:function(){ return this.getPosition().x; }}); (function(){ var f=this.Fx=new Class({Implements:[Chain,Events,Options],options:{fps:60,unit:false,duration:500,frames:null,frameSkip:true,link:"ignore"},initialize:function(g){ this.subject=this.subject||this; this.setOptions(g); },getTransition:function(){ return function(g){ return -(Math.cos(Math.PI*g)-1)/2; }; },step:function(g){ if(this.options.frameSkip){ var h=(this.time!=null)?(g-this.time):0,i=h/this.frameInterval; this.time=g; this.frame+=i; }else{ this.frame++; } if(this.frame=(7-4*d)/11){ e=c*c-Math.pow((11-6*d-11*f)/4,2); break; } } return e; },Elastic:function(b,a){ return Math.pow(2,10*--b)*Math.cos(20*b*Math.PI*(a&&a[0]||1)/3); }}); ["Quad","Cubic","Quart","Quint"].each(function(b,a){ Fx.Transitions[b]=new Fx.Transition(function(c){ return Math.pow(c,a+2); }); }); (function(){ var d=function(){ },a=("onprogress" in new Browser.Request); var c=this.Request=new Class({Implements:[Chain,Events,Options],options:{url:"",data:"",headers:{"X-Requested-With":"XMLHttpRequest",Accept:"text/javascript, text/html, application/xml, text/xml, */*"},async:true,format:false,method:"post",link:"ignore",isSuccess:null,emulation:true,urlEncoded:true,encoding:"utf-8",evalScripts:false,evalResponse:false,timeout:0,noCache:false},initialize:function(e){ this.xhr=new Browser.Request(); this.setOptions(e); this.headers=this.options.headers; },onStateChange:function(){ var e=this.xhr; if(e.readyState!=4||!this.running){ return; } this.running=false; this.status=0; Function.attempt(function(){ var f=e.status; this.status=(f==1223)?204:f; }.bind(this)); e.onreadystatechange=d; if(a){ e.onprogress=e.onloadstart=d; } clearTimeout(this.timer); this.response={text:this.xhr.responseText||"",xml:this.xhr.responseXML}; if(this.options.isSuccess.call(this,this.status)){ this.success(this.response.text,this.response.xml); }else{ this.failure(); } },isSuccess:function(){ var e=this.status; return (e>=200&&e<300); },isRunning:function(){ return !!this.running; },processScripts:function(e){ if(this.options.evalResponse||(/(ecma|java)script/).test(this.getHeader("Content-type"))){ return Browser.exec(e); } return e.stripScripts(this.options.evalScripts); },success:function(f,e){ this.onSuccess(this.processScripts(f),e); },onSuccess:function(){ this.fireEvent("complete",arguments).fireEvent("success",arguments).callChain(); },failure:function(){ this.onFailure(); },onFailure:function(){ this.fireEvent("complete").fireEvent("failure",this.xhr); },loadstart:function(e){ this.fireEvent("loadstart",[e,this.xhr]); },progress:function(e){ this.fireEvent("progress",[e,this.xhr]); },timeout:function(){ this.fireEvent("timeout",this.xhr); },setHeader:function(e,f){ this.headers[e]=f; return this; },getHeader:function(e){ return Function.attempt(function(){ return this.xhr.getResponseHeader(e); }.bind(this)); },check:function(){ if(!this.running){ return true; } switch(this.options.link){ case "cancel": this.cancel(); return true; case "chain": this.chain(this.caller.pass(arguments,this)); return false; } return false; },send:function(o){ if(!this.check(o)){ return this; } this.options.isSuccess=this.options.isSuccess||this.isSuccess; this.running=true; var l=typeOf(o); if(l=="string"||l=="element"){ o={data:o}; } var h=this.options; o=Object.append({data:h.data,url:h.url,method:h.method},o); var j=o.data,f=String(o.url),e=o.method.toLowerCase(); switch(typeOf(j)){ case "element": j=document.id(j).toQueryString(); break; case "object": case "hash": j=Object.toQueryString(j); } if(this.options.format){ var m="format="+this.options.format; j=(j)?m+"&"+j:m; } if(this.options.emulation&&!["get","post"].contains(e)){ var k="_method="+e; j=(j)?k+"&"+j:k; e="post"; } if(this.options.urlEncoded&&["post","put"].contains(e)){ var g=(this.options.encoding)?"; charset="+this.options.encoding:""; this.headers["Content-type"]="application/x-www-form-urlencoded"+g; } if(!f){ f=document.location.pathname; } var i=f.lastIndexOf("/"); if(i>-1&&(i=f.indexOf("#"))>-1){ f=f.substr(0,i); } if(this.options.noCache){ f+=(f.contains("?")?"&":"?")+String.uniqueID(); } if(j&&e=="get"){ f+=(f.contains("?")?"&":"?")+j; j=null; } var n=this.xhr; if(a){ n.onloadstart=this.loadstart.bind(this); n.onprogress=this.progress.bind(this); } n.open(e.toUpperCase(),f,this.options.async,this.options.user,this.options.password); if(this.options.user&&"withCredentials" in n){ n.withCredentials=true; } n.onreadystatechange=this.onStateChange.bind(this); Object.each(this.headers,function(q,p){ try{ n.setRequestHeader(p,q); } catch(r){ this.fireEvent("exception",[p,q]); } },this); this.fireEvent("request"); n.send(j); if(!this.options.async){ this.onStateChange(); }else{ if(this.options.timeout){ this.timer=this.timeout.delay(this.options.timeout,this); } } return this; },cancel:function(){ if(!this.running){ return this; } this.running=false; var e=this.xhr; e.abort(); clearTimeout(this.timer); e.onreadystatechange=d; if(a){ e.onprogress=e.onloadstart=d; } this.xhr=new Browser.Request(); this.fireEvent("cancel"); return this; }}); var b={}; ["get","post","put","delete","GET","POST","PUT","DELETE"].each(function(e){ b[e]=function(g){ var f={method:e}; if(g!=null){ f.data=g; } return this.send(f); }; }); c.implement(b); Element.Properties.send={set:function(e){ var f=this.get("send").cancel(); f.setOptions(e); return this; },get:function(){ var e=this.retrieve("send"); if(!e){ e=new c({data:this,link:"cancel",method:this.get("method")||"post",url:this.get("action")}); this.store("send",e); } return e; }}; Element.implement({send:function(e){ var f=this.get("send"); f.send({data:this,url:e||f.options.url}); return this; }}); })(); Request.HTML=new Class({Extends:Request,options:{update:false,append:false,evalScripts:true,filter:false,headers:{Accept:"text/html, application/xml, text/xml, */*"}},success:function(f){ var e=this.options,c=this.response; c.html=f.stripScripts(function(h){ c.javascript=h; }); var d=c.html.match(/]*>([\s\S]*?)<\/body>/i); if(d){ c.html=d[1]; } var b=new Element("div").set("html",c.html); c.tree=b.childNodes; c.elements=b.getElements(e.filter||"*"); if(e.filter){ c.tree=c.elements; } if(e.update){ var g=document.id(e.update).empty(); if(e.filter){ g.adopt(c.elements); }else{ g.set("html",c.html); } }else{ if(e.append){ var a=document.id(e.append); if(e.filter){ c.elements.reverse().inject(a); }else{ a.adopt(b.getChildren()); } } } if(e.evalScripts){ Browser.exec(c.javascript); } this.onSuccess(c.tree,c.elements,c.html,c.javascript); }}); Element.Properties.load={set:function(a){ var b=this.get("load").cancel(); b.setOptions(a); return this; },get:function(){ var a=this.retrieve("load"); if(!a){ a=new Request.HTML({data:this,link:"cancel",update:this,method:"get"}); this.store("load",a); } return a; }}; Element.implement({load:function(){ this.get("load").send(Array.link(arguments,{data:Type.isObject,url:Type.isString})); return this; }}); if(typeof JSON=="undefined"){ this.JSON={}; } (function(){ var _57a={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r","\"":"\\\"","\\":"\\\\"}; var _57b=function(chr){ return _57a[chr]||"\\u"+("0000"+chr.charCodeAt(0).toString(16)).slice(-4); }; JSON.validate=function(_57d){ _57d=_57d.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,""); return (/^[\],:{}\s]*$/).test(_57d); }; JSON.encode=JSON.stringify?function(obj){ return JSON.stringify(obj); }:function(obj){ if(obj&&obj.toJSON){ obj=obj.toJSON(); } switch(typeOf(obj)){ case "string": return "\""+obj.replace(/[\x00-\x1f\\"]/g,_57b)+"\""; case "array": return "["+obj.map(JSON.encode).clean()+"]"; case "object": case "hash": var _580=[]; Object.each(obj,function(_581,key){ var json=JSON.encode(_581); if(json){ _580.push(JSON.encode(key)+":"+json); } }); return "{"+_580+"}"; case "number": case "boolean": return ""+obj; case "null": return "null"; } return null; }; JSON.decode=function(_584,_585){ if(!_584||typeOf(_584)!="string"){ return null; } if(_585||JSON.secure){ if(JSON.parse){ return JSON.parse(_584); } if(!JSON.validate(_584)){ throw new Error("JSON could not decode the input; security is enabled and the value is not secure."); } } return eval("("+_584+")"); }; })(); Request.JSON=new Class({Extends:Request,options:{secure:true},initialize:function(a){ this.parent(a); Object.append(this.headers,{Accept:"application/json","X-Request":"JSON"}); },success:function(c){ var b; try{ b=this.response.json=JSON.decode(c,this.options.secure); } catch(a){ this.fireEvent("error",[c,a]); return; } if(b==null){ this.onFailure(); }else{ this.onSuccess(b,c); } }}); var Cookie=new Class({Implements:Options,options:{path:"/",domain:false,duration:false,secure:false,document:document,encode:true},initialize:function(b,a){ this.key=b; this.setOptions(a); },write:function(b){ if(this.options.encode){ b=encodeURIComponent(b); } if(this.options.domain){ b+="; domain="+this.options.domain; } if(this.options.path){ b+="; path="+this.options.path; } if(this.options.duration){ var a=new Date(); a.setTime(a.getTime()+this.options.duration*24*60*60*1000); b+="; expires="+a.toGMTString(); } if(this.options.secure){ b+="; secure"; } this.options.document.cookie=this.key+"="+b; return this; },read:function(){ var a=this.options.document.cookie.match("(?:^|;)\\s*"+this.key.escapeRegExp()+"=([^;]*)"); return (a)?decodeURIComponent(a[1]):null; },dispose:function(){ new Cookie(this.key,Object.merge({},this.options,{duration:-1})).write(""); return this; }}); Cookie.write=function(b,c,a){ return new Cookie(b,a).write(c); }; Cookie.read=function(a){ return new Cookie(a).read(); }; Cookie.dispose=function(b,a){ return new Cookie(b,a).dispose(); }; (function(i,k){ var l,f,e=[],c,b,d=k.createElement("div"); var g=function(){ clearTimeout(b); if(l){ return; } Browser.loaded=l=true; k.removeListener("DOMContentLoaded",g).removeListener("readystatechange",a); k.fireEvent("domready"); i.fireEvent("domready"); }; var a=function(){ for(var m=e.length;m--;){ if(e[m]()){ g(); return true; } } return false; }; var j=function(){ clearTimeout(b); if(!a()){ b=setTimeout(j,10); } }; k.addListener("DOMContentLoaded",g); var h=function(){ try{ d.doScroll(); return true; } catch(m){ } return false; }; if(d.doScroll&&!h()){ e.push(h); c=true; } if(k.readyState){ e.push(function(){ var m=k.readyState; return (m=="loaded"||m=="complete"); }); } if("onreadystatechange" in k){ k.addListener("readystatechange",a); }else{ c=true; } if(c){ j(); } Element.Events.domready={onAdd:function(m){ if(l){ m.call(this); } }}; Element.Events.load={base:"load",onAdd:function(m){ if(f&&this==i){ m.call(this); } },condition:function(){ if(this==i){ g(); delete Element.Events.load; } return true; }}; i.addEvent("load",function(){ f=true; }); })(window,document); (function(){ var _5a4=this.Swiff=new Class({Implements:Options,options:{id:null,height:1,width:1,container:null,properties:{},params:{quality:"high",allowScriptAccess:"always",wMode:"window",swLiveConnect:true},callBacks:{},vars:{}},toElement:function(){ return this.object; },initialize:function(path,_5a6){ this.instance="Swiff_"+String.uniqueID(); this.setOptions(_5a6); _5a6=this.options; var id=this.id=_5a6.id||this.instance; var _5a8=document.id(_5a6.container); _5a4.CallBacks[this.instance]={}; var _5a9=_5a6.params,vars=_5a6.vars,_5ab=_5a6.callBacks; var _5ac=Object.append({height:_5a6.height,width:_5a6.width},_5a6.properties); var self=this; for(var _5ae in _5ab){ _5a4.CallBacks[this.instance][_5ae]=(function(_5af){ return function(){ return _5af.apply(self.object,arguments); }; })(_5ab[_5ae]); vars[_5ae]="Swiff.CallBacks."+this.instance+"."+_5ae; } _5a9.flashVars=Object.toQueryString(vars); if(Browser.ie){ _5ac.classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"; _5a9.movie=path; }else{ _5ac.type="application/x-shockwave-flash"; } _5ac.data=path; var _5b0=""; } } _5b0+=""; this.object=((_5a8)?_5a8.empty():new Element("div")).set("html",_5b0).firstChild; },replaces:function(_5b3){ _5b3=document.id(_5b3,true); _5b3.parentNode.replaceChild(this.toElement(),_5b3); return this; },inject:function(_5b4){ document.id(_5b4,true).appendChild(this.toElement()); return this; },remote:function(){ return _5a4.remote.apply(_5a4,[this.toElement()].append(arguments)); }}); _5a4.CallBacks={}; _5a4.remote=function(obj,fn){ var rs=obj.CallFunction(""+__flash__argumentsToXML(arguments,2)+""); return eval(rs); }; })(); //========END OF MOOTOOLS========================================================== window.onAction = function onAction(payload) { if (payload.event) { if (payload.event !== Application.currentEvent) { Application.currentEvent = payload.event; Application.onAction(payload); } } else { Application.onAction(payload); } } var MenuApp = new Class({ initialize: function(){ this.m_sOnChangeStateURI = ""; this.m_menuAppState = new MenuApplicationState(); }, GetStateAsJSON : function() { return JSON.encode(this.m_menuAppState); }, Drill : function(action,payload) { var oCV = window.gaRV_INSTANCES[0]; if((action == "DrillUp") || (action == "DrillDown")) { payload = JSON.decode(payload); } oCV.executeAction(action, payload); }, GetTracking : function(){ var oCV = window.gaRV_INSTANCES[0]; var tracking = oCV.getTracking(); return tracking; }, SwipeToNextPage : function() { var oCV = window.gaRV_INSTANCES[0]; var hasNextPage = false; for(var req in oCV.m_aSecRequests){ if(oCV.m_aSecRequests[req]=="nextPage"){ hasNextPage = true; break; } } if (hasNextPage) { oCV.pageAction('nextPage'); } }, SetURIEventHandlers : function(v_sOnLoadURI, v_sOnChangeStateURI, v_sOnDrillThroughURI) { this.m_sOnChangeStateURI = v_sOnChangeStateURI; window.location = v_sOnLoadURI; }, NotifyGryphonOnStateChange : function() { if (window.parent && window.parent.WEB_APP_HANDLER){ window.parent.WEB_APP_HANDLER.handleStateChange(this.m_menuAppState); } else{ // if 'OnStateChange' URI was not specified set it to standard value if (!this.m_sOnChangeStateURI) { this.m_sOnChangeStateURI = 'cogmob://com.ibm.cogmob.onchangestate'; } window.location = this.m_sOnChangeStateURI; } }, trim: function (str) { str = str.replace(/^\s*/, '').replace(/\s*$/, ''); return str; }, normalizeJsonObj: function (payloads){ var obj = {}; for(var property in payloads){ var t = typeof (payloads[property]); //convert boolean to string, otherwise JSON library will convert it to 1 or 0; if ( t == "boolean"){ if (payloads[property] == true){ obj[property] = "true"; }else{ obj[property] = "false"; } } //filter function and $family, which has problems with search& select prompts; else if (t != "function" && property != "$family"){ obj[property] = payloads[property]; } } return obj; }, getContextValue: function(args){ var contentValue = ""; if (args.displayValues && args.displayValues.selected){ for (var i = 0; i < args.displayValues.selected.length; i++){ contentValue += args.displayValues.selected[i] + " "; } contentValue = this.trim(contentValue); } return contentValue; }, onAction: function(args){ this.m_menuAppState.cleanUpState(); var payloads = args.payload; var event = args.event; this.m_menuAppState.setAction(args.action); this.m_menuAppState.setReportSrc("viewer"); if (args.containerType) this.m_menuAppState.setMobileClickSource(args.containerType); if (event) this.m_menuAppState.setEventSpot(event.clientX, event.clientY); if (args.action == 'httpRequest'){ var obj = this.normalizeJsonObj(payloads); this.m_menuAppState.setRequestParams(obj); }else if (args.action == 'showMenu'){ if (args.chartTooltip){ var fields = []; var fields = args.chartTooltip.split("\n"); if (fields.length > 0) { var lastValue = ""; for (var fi = 0; fi < fields.length; fi++) { var nameValuePair = fields[fi].split("="); // detect the pattern of 'name = value' if (nameValuePair.length == 2) { nameValuePair[0] = this.trim(nameValuePair[0]); nameValuePair[1] = this.trim(nameValuePair[1]); this.m_menuAppState.addMobileDataField(nameValuePair[0], nameValuePair[1]); lastValue = nameValuePair[1]; } else if (nameValuePair.length == 1) { nameValuePair[0] = this.trim(nameValuePair[0]); this.m_menuAppState.addMobileDataField(nameValuePair[0], ""); } } if ( lastValue != "" ) this.m_menuAppState.setMobileContextValue(lastValue); else this.m_menuAppState.setMobileContextValue(this.getContextValue(args)); } } else{ var contentValue = this.getContextValue(args); this.m_menuAppState.setMobileContextValue(contentValue); if (args.displayValues && args.displayValues.columns){ for (var i = 0; i < args.displayValues.columns.length; i++){ if (args.displayValues.columns[i]) this.m_menuAppState.addMobileDataField(args.displayValues.columns[i],""); } } if (args.displayValues && args.displayValues.rows){ for (var i = 0; i < args.displayValues.rows.length; i++){ if (args.displayValues.rows[i]) this.m_menuAppState.addMobileDataField(args.displayValues.rows[i],""); } } } for (var j = 0; j < payloads.length; j++) { if (payloads[j].disabled != true){ if (payloads[j].name == 'AuthoredDrill'){ this.m_menuAppState.addDrillThroughMenuItem(payloads[j].label, payloads[j].action.payload); } if (payloads[j].name == 'Goto'){ this.m_menuAppState.addGotoMenuItem(payloads[j].label, ''); } if (payloads[j].name.toLowerCase() == 'drilldown'){ this.m_menuAppState.addDrillDownMenuItem(payloads[j].action.payload,payloads[j].items); } if (payloads[j].name.toLowerCase() == 'drillup'){ this.m_menuAppState.addDrillUpMenuItem(payloads[j].action.payload,payloads[j].items); } } } } else if (args.action == 'savedOutputTabChange'){ var tabId = args.tabId; this.m_menuAppState.addMobileDataField("tabId", tabId); } this.NotifyGryphonOnStateChange(); }, GetDrillThroughContext: function(){ return this.m_sDrillThroughContext; }, ReRunReport: function(){ var oCV = window.gaRV_INSTANCES[0]; oCV.getRV().RunReport(); }, GetTabs: function(){ var oCV = window.gaRV_INSTANCES; if (oCV && oCV[0].m_tabsPayload) { return JSON.encode(oCV[0].m_tabsPayload.tabs); } else { return null; } }, GetSelectedTab: function(){ var oCV = window.gaRV_INSTANCES; if (oCV && oCV[0].m_tabControl) { return oCV[0].m_tabControl.getSelectedTabId(); } else { return null; } }, getPageWidth: function(){ var extents = {x:0,y:0}; this.calcViewerExtents(document.body,0,0, extents); return extents.x; }, calcViewerExtents: function(elm, offsetX, offsetY, extents){ var candidateX = elm.offsetLeft + elm.scrollWidth; var candidateY = elm.offsetTop + elm.scrollHeight; if (candidateX > extents.x){ extents.x = candidateX; } if (candidateY > extents.y){ extents.y = candidateY; } var children = elm.childNodes; var childOffsetX = offsetX + elm.offsetLeft; var childOffsetY = offsetY + elm.offsetTop; for (var i = 0; i < children.length; i++){ var child = children[i]; this.calcViewerExtents(child, childOffsetX, childOffsetY, extents); } }, scaleElement: function(elmToFit, scale, width){ elmToFit.setStyle("-webkit-transform-origin", "top left"); elmToFit.setStyle("-webkit-transform", "scale("+ scale +")"); elmToFit.setStyle("top", elmToFit.offsetLeft+"px"); elmToFit.setStyle("left", elmToFit.offsetTop+"px"); elmToFit.setStyle("width", width/scale+"px"); } }); var MenuItem = new Class({ initialize: function(n,v_sLableForThisMenuItem){ this.name = n; if(v_sLableForThisMenuItem){ this.label = v_sLableForThisMenuItem; } this.onclick = []; }, addOnClickVariable: function(vn, vv) { var obj = {}; obj["varName"] = vn; obj["varValue"] = vv; this.onclick.push(obj); } }); var MobileContextMenu = new Class({ initialize: function(){ this.menuItem = []; }, cleanUpState: function() { for(var i=0; i< this.menuItem.length; i++) { delete this.menuItem[i]; } }, addMenuItem : function(v_sName, v_sLableForThisMenuItem) { var v_iLenght = this.menuItem.push( new MenuItem(v_sName, v_sLableForThisMenuItem)); return this.menuItem[v_iLenght - 1]; } }); var MenuApplicationState = new Class({ initialize: function(){ this.cleanUpState(); }, cleanUpState: function() { this.viewerAction = ""; this.requestParams = ""; this.reportSrc = ""; this.cancel = false; this.mobileClickSource = ""; this.mobileContextValue = ""; this.mobileDataFields = []; if (this.mobileContextMenu) { this.mobileContextMenu.cleanUpState(); delete this.mobileContextMenu; } this.mobileContextMenu = new MobileContextMenu(); this.hasInlinePrompts = false; if(this.promptValues === undefined){ this.promptValues = new Object(); } }, setRequestParams:function(payload){ this.requestParams = payload; }, setAction: function(action) { this.viewerAction = action; }, setCancel: function(c) { this.cancel = c; }, setReportSrc: function(s) { this.reportSrc = s; }, setHasInlinePrompts: function(i){ this.hasInlinePrompts = i; }, setEventArea : function(area) { var coords = area.get('centroid').split(','); var left = parseInt( coords[0] ) -5; var top = parseInt( coords[1] ) -5; this.setEventSpot(left, top); }, setMobileClickSource : function(s) { this.mobileClickSource = s; }, setMobileContextValue : function(v) { this.mobileContextValue = v; }, setEventSpot: function(x,y) { this.mobileClickX = x; this.mobileClickY = y; }, addMobileDataField: function(name, value) { var obj = {}; obj["data_name"] = name; obj["data_value"] = value; this.mobileDataFields.push(obj); }, getMobileDataFields: function() { return this.mobileDataFields; }, addPromptValue: function(name, value){ this.promptValues.set(name, value); }, removePromptValue: function(name){ this.promptValues.erase(name); }, getPromptValues: function(){ return this.promptValues; }, addDrillThroughMenuItem: function(labelForThisDrillThrough, drillParams) { var v_oMenuItem = this.mobileContextMenu.addMenuItem("DRILLTHROUGH", labelForThisDrillThrough); var params = new Object({ "action": "AuthoredDrill", "payload": drillParams }); v_oMenuItem.addOnClickVariable("params", params); }, addGotoMenuItem: function(labelForThisDrillThrough, drillParams) { var v_oMenuItem = this.mobileContextMenu.addMenuItem("DRILLTHROUGH", labelForThisDrillThrough); var params = new Object({ "action": "Goto", "payload": drillParams }); v_oMenuItem.addOnClickVariable("params", params); }, addDrillDownMenuItem: function(drillParams,items,label) { var v_oMenuItem = this.mobileContextMenu.addMenuItem("DOWN",label); var params = new Object({ "action": "DrillDown", "payload": drillParams, "items" : items }); v_oMenuItem.addOnClickVariable("params", params); }, addDrillUpMenuItem: function(drillParams,items,label) { var v_oMenuItem = this.mobileContextMenu.addMenuItem("UP",label); var params = new Object({ "action": "DrillUp", "payload": drillParams, "items" : items }); v_oMenuItem.addOnClickVariable("params", params); }, addFocusTooltip: function(text) { this.mobileTooltip = text; } }); var MobileAPI = new Class({ initialize: function(){ }, cancel: function(){ var params = new Object({ "ui.action": "cancel" }); var payload = { "action" : "httpRequest", payload : params }; if (window.onAction) { window.onAction(payload); return true; }else if (typeof console != "undefined" && console && console.log) { console.log(payload); return false; } return false; }, callMobile: function (formFieldsPayload) { var payload = { "action" : "httpRequest", payload : formFieldsPayload }; if (window.onAction) { window.onAction(payload); return true; } else if (typeof console != "undefined" && console && console.log) { console.log(payload); return false; } return false; }, passFormFieldsToMobile: function (form) { var formFieldsPayload = {}; var inputNodes = form.getElementsByTagName("input"); if (inputNodes) { for (var i=0; i < inputNodes.length; i++) { var name = inputNodes[i].getAttribute("name"); var value = inputNodes[i].getAttribute("value"); if (name && value) { formFieldsPayload[name] = value; } } } return this.callMobile(formFieldsPayload); }, mobileLaunch: function () { var formFieldsPayload = {}; var numArgs = arguments.length; for(i=0;i 0) { var dscale = Math.floor(s * 10000) / 10000; if (dscale == 0) { dscale = 0.1; } str = str + ', initial-scale=' + dscale.toFixed(4); } str += " ,minimum-scale=0.25, maximum-scale=10, user-scalable=yes"; var vp = document.querySelector('meta[name=viewport]'); if (vp) { vp.setAttribute('content', str); } else { vp = document.createElement('meta'); vp.name = 'viewport'; vp.content = str; document.getElementsByTagName('head')[0].appendChild(vp); } }, enableModelDrill: function(){ var oCV = window.gaRV_INSTANCES[0]; if (oCV != null){ var sc = oCV.getSelectionController(); if (sc != null){ sc.setModelDrillThroughEnabled(true); } } }, frameloaded: function (frameId) { try { this.enableModelDrill(); var f = document.getElementById(frameId); if (f == null) return; window.savedOutputIFrame=frameId; } catch(e) { // cross-domain security error } } }); var Application = new MenuApp(); var mobAPI = new MobileAPI(); var MobileHashMon = new Class({ m_href: '', m_hash: '', m_window: null, m_table: null, m_current: -1, m_handler: null, setHandler: function(_handler) { this.m_handler = _handler; }, jumpToHash: function(_hash) { this.m_window.location.hash = _hash; }, hashChanged: function() { // Currently ROC client preload multiple webviews simultaneously and // jammed the JS engine such that the page jump handler is not set // because our webview delegate receive webViewDidFinishLoad event // before this file even being loaded. // Remove this workaround once we fix the preloading issue. if (this.m_handler == null) { if (typeof(this.m_window.pageJumpHandler) != 'undefined') { this.m_handler = this.m_window.pageJumpHandler; } else if ((typeof(this.m_window.parent) != 'undefined') && (typeof(this.m_window.parent.pageJumpHandler) != 'undefined')) { this.m_handler = this.m_window.parent.pageJumpHandler; } } // workaround end. if (this.m_handler != null) { var _location = this.m_window.location; var _href = _location.href.split("#")[0]; var _hash = (typeof(_location.hash) != 'undefined') ? _location.hash : ''; if ((this.m_href == _href) && (this.m_hash != _hash)) { this.m_hash = _hash; var _page = ((_hash == '') || (_hash == '#')) ? 0 : ((_hash in this.m_table) ? this.m_table[_hash] : this.m_currrent); if (_page != this.m_current) { this.m_hash = ''; this.m_window.location = _href; // reset hash so page is ready when re-visit in webview this.m_handler(_page, _hash); } } } }, watch: function() { var _location = this.m_window.location; var _hash = (typeof(_location.hash) != 'undefined') ? _location.hash : ''; if (this.m_hash != _hash) { this.hashChanged(); } }, start: function(_window, _table, _current) { this.m_window = _window; this.m_table = _table; this.m_current = _current; this.m_href = _window.location.href.split("#")[0]; if (typeof(_window.location.hash) != 'undefined') { this.m_hash = _window.location.hash; } if (!('onhashchange' in this.m_window)) { setInterval((function(self) { return function() { self.watch.apply(self); }; })(this), 100); } else if (this.m_window.addEventListener) { this.m_window.addEventListener("hashchange", (function(self) { return function() { self.hashChanged.apply(self); }; })(this), false); } else if (this.m_window.attachEvent) { this.m_window.attachEvent("onhashchange", (function(self) { return function() { self.hashChanged.apply(self); }; })(this)); } } }); var mobHashMon = new MobileHashMon();