var Handlebars={};Handlebars.VERSION="1.0.beta.4(lorenzipsumproofed)";Handlebars.helpers={};Handlebars.partials={};Handlebars.registerHelper=function(b,c,a){if(a){c.not=a;}this.helpers[b]=c;};Handlebars.registerPartial=function(a,b){this.partials[a]=b;};Handlebars.registerHelper("helperMissing",function(a){if(arguments.length===2){return undefined;}else{throw new Error("Could not find property '"+a+"'");}});Handlebars.registerHelper("blockHelperMissing",function(f,d){var a=d.inverse||function(){},h=d.fn;var c="";var g=Object.prototype.toString.call(f);if(g==="[object Function]"){f=f();}if(f===true){return h(this);}else{if(f===false||f==null){return a(this);}else{if(g==="[object Array]"){if(f.length>0){for(var e=0,b=f.length;e0){for(var e=0,b=f.length;e2){m.push("'"+this.terminals_[y]+"'");}}var A="";if(this.lexer.showPosition){A="Parse error on line "+(q+1)+":\n"+this.lexer.showPosition()+"\nExpecting "+m.join(", ")+", got '"+this.terminals_[D]+"'";}else{A="Parse error on line "+(q+1)+": Unexpected "+(D==1?"end of input":("'"+(this.terminals_[D]||D)+"'"));}this.parseError(A,{text:this.lexer.match,token:this.terminals_[D]||D,line:this.lexer.yylineno,loc:i,expected:m});}if(j==3){if(D==u){throw new Error(A||"Parsing halted.");}E=this.lexer.yyleng;h=this.lexer.yytext;q=this.lexer.yylineno;i=this.lexer.yylloc;D=v();}while(1){if((n.toString()) in H[k]){break;}if(k==0){throw new Error(A||"Parsing halted.");}w(1);k=l[l.length-1];}z=D;D=n;k=l[l.length-1];C=H[k]&&H[k][n];j=3;}if(C[0] instanceof Array&&C.length>1){throw new Error("Parse Error: multiple actions possible at state: "+k+", token: "+D);}switch(C[0]){case 1:l.push(D);G.push(this.lexer.yytext);s.push(this.lexer.yylloc);l.push(C[1]);D=null;if(!z){E=this.lexer.yyleng;h=this.lexer.yytext;q=this.lexer.yylineno;i=this.lexer.yylloc;if(j>0){j--;}}else{D=z;z=null;}break;case 2:F=this.productions_[C[1]][1];B.$=G[G.length-F];B._$={first_line:s[s.length-(F||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(F||1)].first_column,last_column:s[s.length-1].last_column};t=this.performAction.call(B,h,E,q,this.yy,C[1],G,s);if(typeof t!=="undefined"){return t;}if(F){l=l.slice(0,-1*F*2);G=G.slice(0,-1*F);s=s.slice(0,-1*F);}l.push(this.productions_[C[1]][0]);G.push(B.$);s.push(B._$);g=H[l[l.length-2]][l[l.length-1]];l.push(g);break;case 3:return true;}}return true;}};var a=(function(){var j=({EOF:1,parseError:function l(o,n){if(this.yy.parseError){this.yy.parseError(o,n);}else{throw new Error(o);}},setInput:function(n){this._input=n;this._more=this._less=this.done=false;this.yylineno=this.yyleng=0;this.yytext=this.matched=this.match="";this.conditionStack=["INITIAL"];this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0};return this;},input:function(){var o=this._input[0];this.yytext+=o;this.yyleng++;this.match+=o;this.matched+=o;var n=o.match(/\n/);if(n){this.yylineno++;}this._input=this._input.slice(1);return o;},unput:function(n){this._input=n+this._input;return this;},more:function(){this._more=true;return this;},pastInput:function(){var n=this.matched.substr(0,this.matched.length-this.match.length);return(n.length>20?"...":"")+n.substr(-20).replace(/\n/g,"");},upcomingInput:function(){var n=this.match;if(n.length<20){n+=this._input.substr(0,20-n.length);}return(n.substr(0,20)+(n.length>20?"...":"")).replace(/\n/g,"");},showPosition:function(){var n=this.pastInput();var o=new Array(n.length+1).join("-");return n+this.upcomingInput()+"\n"+o+"^";},next:function(){if(this.done){return this.EOF;}if(!this._input){this.done=true;}var r,p,o,n;if(!this._more){this.yytext="";this.match="";}var s=this._currentRules();for(var q=0;q/,/^\{\{#/,/^\{\{\//,/^\{\{\^/,/^\{\{\s*else\b/,/^\{\{\{/,/^\{\{&/,/^\{\{![\s\S]*?\}\}/,/^\{\{/,/^=/,/^\.(?=[} ])/,/^\.\./,/^[/.]/,/^\s+/,/^\}\}\}/,/^\}\}/,/^"(\\["]|[^"])*"/,/^true(?=[}\s])/,/^false(?=[}\s])/,/^[0-9]+(?=[}\s])/,/^[a-zA-Z0-9_$-]+(?=[=}\s\/.])/,/^\[.*\]/,/^./,/^$/];j.conditions={mu:{rules:[2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25],inclusive:false},INITIAL:{rules:[0,1,25],inclusive:true}};return j;})();f.lexer=a;return f;})();if(typeof require!=="undefined"&&typeof exports!=="undefined"){exports.parser=handlebars;exports.parse=function(){return handlebars.parse.apply(handlebars,arguments);};exports.main=function commonjsMain(a){if(!a[1]){throw new Error("Usage: "+a[0]+" FILE");}if(typeof process!=="undefined"){var c=require("fs").readFileSync(require("path").join(process.cwd(),a[1]),"utf8");}else{var b=require("file").path(require("file").cwd());var c=b.join(a[1]).read({charset:"utf-8"});}return exports.parser.parse(c);};if(typeof module!=="undefined"&&require.main===module){exports.main(typeof process!=="undefined"?process.argv.slice(1):require("system").args);}}Handlebars.Parser=handlebars;Handlebars.parse=function(a){Handlebars.Parser.yy=Handlebars.AST;return Handlebars.Parser.parse(a);};Handlebars.print=function(a){return new Handlebars.PrintVisitor().accept(a);};Handlebars.logger={DEBUG:0,INFO:1,WARN:2,ERROR:3,level:3,log:function(b,a){}};Handlebars.log=function(b,a){Handlebars.logger.log(b,a);};(function(){Handlebars.AST={};Handlebars.AST.ProgramNode=function(c,b){this.type="program";this.statements=c;if(b){this.inverse=new Handlebars.AST.ProgramNode(b);}};Handlebars.AST.MustacheNode=function(d,c,b){this.type="mustache";this.id=d[0];this.params=d.slice(1);this.hash=c;this.escaped=!b;};Handlebars.AST.PartialNode=function(c,b){this.type="partial";this.id=c;this.context=b;};var a=function(b,c){if(b.original!==c.original){throw new Handlebars.Exception(b.original+" doesn't match "+c.original);}};Handlebars.AST.BlockNode=function(c,b,d){a(c.id,d);this.type="block";this.mustache=c;this.program=b;};Handlebars.AST.InverseNode=function(c,b,d){a(c.id,d);this.type="inverse";this.mustache=c;this.program=b;};Handlebars.AST.ContentNode=function(b){this.type="content";this.string=b;};Handlebars.AST.HashNode=function(b){this.type="hash";this.pairs=b;};Handlebars.AST.IdNode=function(f){this.type="ID";this.original=f.join(".");var d=[],g=0;for(var e=0,b=f.length;e":">",'"':""","'":"'","`":"`"};var d=/&(?!\w+;)|[<>"'`]/g;var b=/[&<>"'`]/;var a=function(e){return c[e]||"&";};Handlebars.Utils={escapeExpression:function(e){if(e instanceof Handlebars.SafeString){return e.toString();}else{if(e==null||e===false){return"";}}if(!b.test(e)){return e;}return e.replace(d,a);},isEmpty:function(e){if(typeof e==="undefined"){return true;}else{if(e===null){return true;}else{if(e===false){return true;}else{if(Object.prototype.toString.call(e)==="[object Array]"&&e.length===0){return true;}else{return false;}}}}}};})();Handlebars.Compiler=function(){};Handlebars.JavaScriptCompiler=function(){};(function(f,e){f.OPCODE_MAP={appendContent:1,getContext:2,lookupWithHelpers:3,lookup:4,append:5,invokeMustache:6,appendEscaped:7,pushString:8,truthyOrFallback:9,functionOrFallback:10,invokeProgram:11,invokePartial:12,push:13,assignToHash:15,pushStringParam:16};f.MULTI_PARAM_OPCODES={appendContent:1,getContext:1,lookupWithHelpers:2,lookup:1,invokeMustache:3,pushString:1,truthyOrFallback:1,functionOrFallback:1,invokeProgram:3,invokePartial:1,push:1,assignToHash:1,pushStringParam:1};f.DISASSEMBLE_MAP={};for(var h in f.OPCODE_MAP){var g=f.OPCODE_MAP[h];f.DISASSEMBLE_MAP[g]=h;}f.multiParamSize=function(i){return f.MULTI_PARAM_OPCODES[f.DISASSEMBLE_MAP[i]];};f.prototype={compiler:f,disassemble:function(){var t=this.opcodes,r,n;var q=[],v,m,w;for(var s=0,o=t.length;s0){this.source[1]=this.source[1]+", "+q.join(", ");}if(!this.isChild){var k=[];for(var o in this.context.aliases){this.source[1]=this.source[1]+", "+o+"="+this.context.aliases[o];}}if(this.source[1]){this.source[1]="var "+this.source[1].substring(2)+";";}if(!this.isChild){this.source[1]+="\n"+this.context.programs.join("\n")+"\n";}if(!this.environment.isSimple){this.source.push("return buffer;");}var r=this.isChild?["depth0","data"]:["Handlebars","depth0","helpers","partials","data"];for(var n=0,j=this.environment.depths.list.length;nthis.stackVars.length){this.stackVars.push("stack"+this.stackSlot);}return"stack"+this.stackSlot;},popStack:function(){return"stack"+this.stackSlot--;},topStack:function(){return"stack"+this.stackSlot;},quotedString:function(i){return'"'+i.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n").replace(/\r/g,"\\r")+'"';}};var a=("break case catch continue default delete do else finally for function if in instanceof new return switch this throw try typeof var void while with null true false").split(" ");var d=e.RESERVED_WORDS={};for(var c=0,b=a.length;c=1){p=t.join("=");}else{p="";}try{u=decodeURIComponent(p);}catch(s){u=p;}try{u=u==="true"?true:u==="false"?false:!g(u)?parseFloat(u):m.test(u)?n(u):u;}catch(r){}w[o]=u;}return w;};}());j=function(){};j.prototype.get=function(p){var m,o,n;n=i();if(typeof p==="string"){m=(typeof n[p]!=="undefined")?n[p]:null;}else{if(typeof p==="object"&&p!==null){m={};for(o in p){if(b.prototype.hasOwnProperty.call(p,o)){if(typeof n[p[o]]!=="undefined"){m[p[o]]=n[p[o]];}else{m[p[o]]=null;}}}}else{m=n;}}return m;};j.prototype.filter=function(m){var p,n,o;n={};o=i();if(typeof m==="string"){m=new RegExp(m);}for(p in o){if(b.prototype.hasOwnProperty.call(o,p)&&p.match(m)){n[p]=o[p];}}return n;};j.prototype.set=function(p,n,m){if(typeof m!=="object"||m===null){m={};}if(typeof n==="undefined"||n===null){n="";m.hoursToLive=-8760;}else{n=n===true?"true":n===false?"false":!g(n)?""+n:n;if(typeof n!=="string"){if(typeof e==="object"&&e!==null&&typeof e.stringify==="function"){n=e.stringify(n);}else{throw new Error("cookies.set() received value which could not be serialized.");}}}var o=k(m);a.cookie=p+"="+encodeURIComponent(n)+o;};j.prototype.del=function(p,o){var m,n;m={};if(typeof o!=="object"||o===null){o={};}if(typeof p==="boolean"&&p===true){m=this.get();}else{if(typeof p==="string"){m[p]=true;}}for(n in m){if(b.prototype.hasOwnProperty.call(m,n)&&typeof n==="string"&&n!==""){this.set(n,null,o);}}};j.prototype.test=function(){var n,m,o;m="cookiesCT";o="data";this.set(m,o);if(this.get(m)===o){this.del(m);n=true;}return n;};j.prototype.setOptions=function(m){if(typeof m!=="object"){m=null;}h=l(m);};return new j();}());}(window));/*! * jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/ * * Uses the built in easing capabilities added In jQuery 1.1 * to offer multiple easing options * * TERMS OF USE - jQuery Easing * * Open source under the BSD License. * * Copyright © 2008 George McGinley Smith * All rights reserved. * * Redistribution and use in source and binary forms, with or without modification, * are permitted provided that the following conditions are met: * * Redistributions of source code must retain the above copyright notice, this list of * conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list * of conditions and the following disclaimer in the documentation and/or other materials * provided with the distribution. * * Neither the name of the author nor the names of contributors may be used to endorse * or promote products derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED * OF THE POSSIBILITY OF SUCH DAMAGE. * */ jQuery.easing.jswing=jQuery.easing.swing;jQuery.extend(jQuery.easing,{def:"easeOutQuad",swing:function(e,f,a,h,g){return jQuery.easing[jQuery.easing.def](e,f,a,h,g);},easeInQuad:function(e,f,a,h,g){return h*(f/=g)*f+a;},easeOutQuad:function(e,f,a,h,g){return -h*(f/=g)*(f-2)+a;},easeInOutQuad:function(e,f,a,h,g){if((f/=g/2)<1){return h/2*f*f+a;}return -h/2*((--f)*(f-2)-1)+a;},easeInCubic:function(e,f,a,h,g){return h*(f/=g)*f*f+a;},easeOutCubic:function(e,f,a,h,g){return h*((f=f/g-1)*f*f+1)+a;},easeInOutCubic:function(e,f,a,h,g){if((f/=g/2)<1){return h/2*f*f*f+a;}return h/2*((f-=2)*f*f+2)+a;},easeInQuart:function(e,f,a,h,g){return h*(f/=g)*f*f*f+a;},easeOutQuart:function(e,f,a,h,g){return -h*((f=f/g-1)*f*f*f-1)+a;},easeInOutQuart:function(e,f,a,h,g){if((f/=g/2)<1){return h/2*f*f*f*f+a;}return -h/2*((f-=2)*f*f*f-2)+a;},easeInQuint:function(e,f,a,h,g){return h*(f/=g)*f*f*f*f+a;},easeOutQuint:function(e,f,a,h,g){return h*((f=f/g-1)*f*f*f*f+1)+a;},easeInOutQuint:function(e,f,a,h,g){if((f/=g/2)<1){return h/2*f*f*f*f*f+a;}return h/2*((f-=2)*f*f*f*f+2)+a;},easeInSine:function(e,f,a,h,g){return -h*Math.cos(f/g*(Math.PI/2))+h+a;},easeOutSine:function(e,f,a,h,g){return h*Math.sin(f/g*(Math.PI/2))+a;},easeInOutSine:function(e,f,a,h,g){return -h/2*(Math.cos(Math.PI*f/g)-1)+a;},easeInExpo:function(e,f,a,h,g){return(f==0)?a:h*Math.pow(2,10*(f/g-1))+a;},easeOutExpo:function(e,f,a,h,g){return(f==g)?a+h:h*(-Math.pow(2,-10*f/g)+1)+a;},easeInOutExpo:function(e,f,a,h,g){if(f==0){return a;}if(f==g){return a+h;}if((f/=g/2)<1){return h/2*Math.pow(2,10*(f-1))+a;}return h/2*(-Math.pow(2,-10*--f)+2)+a;},easeInCirc:function(e,f,a,h,g){return -h*(Math.sqrt(1-(f/=g)*f)-1)+a;},easeOutCirc:function(e,f,a,h,g){return h*Math.sqrt(1-(f=f/g-1)*f)+a;},easeInOutCirc:function(e,f,a,h,g){if((f/=g/2)<1){return -h/2*(Math.sqrt(1-f*f)-1)+a;}return h/2*(Math.sqrt(1-(f-=2)*f)+1)+a;},easeInElastic:function(f,h,e,l,k){var i=1.70158;var j=0;var g=l;if(h==0){return e;}if((h/=k)==1){return e+l;}if(!j){j=k*0.3;}if(g');b(k).find(i.options.tabhead).each(function(x){var z="";elId=b(this).attr("id");if(elId){if(elId.indexOf("accessibletabscontent")===0){return;}z=' id="'+elId+'"';}var t=i.getUniqueId("accessibletabscontent",g+w,x);var y=i.getUniqueId("accessibletabsnavigation",g+w,x);j.push(t);if(i.options.cssClassAvailable===true){var m="";if(b(this).attr("class")){m=b(this).attr("class");m=' class="'+m+'"';s+='
  • '+b(this).html()+"
  • ";}}else{s+='
  • '+b(this).html()+"
  • ";}b(this).attr({id:t,"class":i.options.tabheadClass,tabindex:"-1"});l++;});if(i.options.syncheights&&b.fn[i.options.syncHeightMethodName]){b(k).find(i.options.tabbody)[i.options.syncHeightMethodName]();b(window).resize(function(){b(k).find(i.options.tabbody)[i.options.syncHeightMethodName]();});}var p="."+i.options.tabsListClass;if(!b(k).find(p).length){b(k)[d[i.options.position]]('
      ');}b(k).find(p).append(s);var u=b(k).find(i.options.tabbody);if(u.length>0){b(u).hide();b(u[0]).show();}b(k).find("ul."+i.options.tabsListClass+">li:first").addClass(i.options.currentClass).addClass(i.options.firstNavItemClass).find("a")[i.options.currentInfoPosition](''+i.options.currentInfoText+"").parents("ul."+i.options.tabsListClass).children("li:last").addClass(i.options.lastNavItemClass);if(i.options.wrapInnerNavLinks){b(k).find("ul."+i.options.tabsListClass+">li>a").wrapInner(i.options.wrapInnerNavLinks);}b(k).find("ul."+i.options.tabsListClass+">li>a").each(function(m){b(this).click(function(t){t.preventDefault();k.trigger("showTab.accessibleTabs",[b(t.target)]);if(i.options.saveState&&b.cookie){b.cookie("accessibletab_"+k.attr("id")+"_active",m);}b(k).find("ul."+i.options.tabsListClass+">li."+i.options.currentClass).removeClass(i.options.currentClass).find("span."+i.options.currentInfoClass).remove();b(this).blur();b(k).find(i.options.tabbody+":visible").hide();b(k).find(i.options.tabbody).eq(m)[i.options.fx](i.options.fxspeed);b(this)[i.options.currentInfoPosition](''+i.options.currentInfoText+"").parent().addClass(i.options.currentClass);});b(this).focus(function(t){b(document).keyup(function(x){if(e[x.keyCode]){i.showAccessibleTab(m+e[x.keyCode]);}});});b(this).blur(function(t){b(document).unbind("keyup");});});if(i.options.saveState&&b.cookie){var o=b.cookie("accessibletab_"+k.attr("id")+"_active");a(b.cookie("accessibletab_"+k.attr("id")+"_active"));if(o!==null){i.showAccessibleTab(o,k.attr("id"));}}if(i.options.autoAnchor&&window.location.hash){var r=b("."+i.options.tabsListClass).find(window.location.hash);if(r.size()){r.click();}}if(i.options.pagination){var n='";var v=b(k).find(".tabbody");var q=v.size();v.each(function(t){b(this).append(n);var y=t+1;if(y>=q){y=0;}var z=t-1;if(z<0){z=q-1;}var A=b(this).find(".pagination");var x=A.find(".previous");x.find("span").text(b("#"+j[z]).text());x.find("a").attr("href","#"+j[z]).click(function(B){B.preventDefault();b(k).find(".tabs-list a").eq(z).click();});var m=A.find(".next");m.find("span").text(b("#"+j[y]).text());m.find("a").attr("href","#"+j[y]).click(function(B){B.preventDefault();b(k).find(".tabs-list a").eq(y).click();});});}});},showAccessibleTab:function(e,h){a("showAccessibleTab");var g=this;if(h){var f=b("#"+h);var d=f.find("ul."+g.options.tabsListClass+">li>a");f.trigger("showTab.accessibleTabs",[d.eq(e)]);d.eq(e).click();}else{return this.each(function(){var j=b(this);j.trigger("showTab.accessibleTabs");var i=j.find("ul."+g.options.tabsListClass+">li>a");j.trigger("showTab.accessibleTabs",[i.eq(e)]);i.eq(e).click();});}},showAccessibleTabSelector:function(d){a("showAccessibleTabSelector");var f=this;var e=b(d);if(e){if(e.get(0).nodeName.toLowerCase()=="a"){e.click();}else{a("the selector of a showAccessibleTabSelector() call needs to point to a tabs headline!");}}}});function a(e,d){if(c&&window.console&&window.console.log){if(d){window.console.log(d+": ",e);}else{window.console.log(e);}}}})(jQuery);var JSON;if(!JSON){JSON={};}(function(){function f(n){return n<10?"0"+n:n;}if(typeof Date.prototype.toJSON!=="function"){Date.prototype.toJSON=function(key){return isFinite(this.valueOf())?this.getUTCFullYear()+"-"+f(this.getUTCMonth()+1)+"-"+f(this.getUTCDate())+"T"+f(this.getUTCHours())+":"+f(this.getUTCMinutes())+":"+f(this.getUTCSeconds())+"Z":null;};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf();};}var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==="string"?c:"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4);})+'"':'"'+string+'"';}function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==="object"&&typeof value.toJSON==="function"){value=value.toJSON(key);}if(typeof rep==="function"){value=rep.call(holder,key,value);}switch(typeof value){case"string":return quote(value);case"number":return isFinite(value)?String(value):"null";case"boolean":case"null":return String(value);case"object":if(!value){return"null";}gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==="[object Array]"){length=value.length;for(i=0;i0){var j=[];k.eq(0).find("optgroup").each(function(r){j[r]={};j[r].label=jQuery(this).attr("label");j[r].options=[];jQuery(this).find("option").each(function(){j[r].options.push({text:jQuery(this).text(),value:jQuery(this).attr("value")});});});return j;}else{return null;}})();function i(j){return j.constructor==Array;}function m(j){return(q.tooltipSrc=="text")?a[j].text:a[j].value;}var p={step:1,min:0,orientation:"horizontal",max:a.length-1,range:k.length>1,slide:function(u,t){var s=jQuery(t.handle);var r=m(t.value);s.attr("aria-valuetext",r).attr("aria-valuenow",t.value).find(".ui-slider-tooltip .ttContent").text(r);var j=jQuery("#"+s.attr("id").split("handle_")[1]);j.find("option").eq(t.value).attr("selected","selected");},values:(function(){var j=[];k.each(function(){j.push(jQuery(this).get(0).selectedIndex);});return j;})()};q.sliderOptions=(f)?jQuery.extend(p,f.sliderOptions):p;k.bind("change keyup click",function(){var r=jQuery(this).get(0).selectedIndex;var j=jQuery("#handle_"+jQuery(this).attr("id"));var s=j.data("handleNum");j.parents(".ui-slider:eq(0)").slider("values",s,r);});var d=jQuery("
      ");k.each(function(r){var s="";var u=jQuery("label[for="+jQuery(this).attr("id")+"]");var t=(u.size()>0)?"Slider control for "+u.text()+"":"";var j=u.attr("id")||u.attr("id","label_"+h[r]).attr("id");if(q.tooltip==false){s=' style="display: none;"';}jQuery(''+t+'').data("handleNum",r).appendTo(d);});if(b){var c=0;var e=d.append('').find(".ui-slider-scale:eq(0)");jQuery(b).each(function(r){e.append('
      '+this.label+"
      ");var j=this.options;jQuery(this.options).each(function(s){var t=(c==a.length-1||c==0)?'style="display: none;"':"";var u=(q.labelSrc=="text")?j[s].text:j[s].value;e.append('
      '+u+'
      ");c++;});});}else{var e=d.append('').find(".ui-slider-scale:eq(0)");jQuery(a).each(function(j){var r=(j==a.length-1||j==0)?'style="display: none;"':"";var s=(q.labelSrc=="text")?this.text:this.value;e.append('
    • '+s+'
    • ");});}function n(j){return(j/(a.length-1)*100).toFixed(2)+"%";}if(q.labels>1){d.find(".ui-slider-scale li:last span.ui-slider-label, .ui-slider-scale dd:last span.ui-slider-label").addClass("ui-slider-label-show");}var l=Math.max(1,Math.round(a.length/q.labels));for(var g=0;gl){d.find(".ui-slider-scale li:eq("+g+") span.ui-slider-label, .ui-slider-scale dd:eq("+g+") span.ui-slider-label").addClass("ui-slider-label-show");}}d.find(".ui-slider-scale dt").each(function(j){jQuery(this).css({left:((100/(b.length))*j).toFixed(2)+"%"});});d.insertAfter(jQuery(this).eq(this.length-1)).slider(q.sliderOptions).attr("role","application").find(".ui-slider-label").each(function(){jQuery(this).css("marginLeft",-jQuery(this).width()/2);});d.find(".ui-tooltip-pointer-down-inner").each(function(){var r=jQuery(".ui-tooltip-pointer-down-inner").css("borderTopWidth");var j=jQuery(this).parents(".ui-slider-tooltip").css("backgroundColor");jQuery(this).css("border-top",r+" solid "+j);});var o=d.slider("values");if(i(o)){jQuery(o).each(function(j){d.find(".ui-slider-tooltip .ttContent").eq(j).text(m(this));});}else{d.find(".ui-slider-tooltip .ttContent").eq(0).text(m(o));}return this;};(function(){if(typeof neo==="undefined"){neo={};var l="neo",o=".",j="undefined",c="object",h="string",n="function",b="number",f=0,d=document.getElementsByTagName("script"),a=d[d.length-1],k=a.getAttribute("data-debug")==="true",i=(typeof this.global==="object")?this.global:this,e=function(g,p){return typeof g===p;},m;neo.ENV=i;neo.config={DEBUG:k,rtl:false};m=k;window.setInterval(function(){if(neo.config.DEBUG!==m&&neo.config.DEBUG===true){alert("Debugging disabled! Go play somewhere else.");neo.config.DEBUG=m;}},1000);neo.ENV.setDefaultValue=function(p,g){return isUndefined(p)?g:p;};setDefaultValue=neo.ENV.setDefaultValue;neo.ENV.isUndefined=function(g){return e(g,j);};isUndefined=neo.ENV.isUndefined;neo.ENV.isFunction=function(g){return e(g,n);};isFunction=neo.ENV.isFunction;neo.ENV.isObject=function(g){return g&&e(g,c);};isObject=neo.ENV.isObject;neo.ENV.isNumber=function(g){return e(g,b);};isNumber=neo.ENV.isNumber;neo.ENV.isString=function(g){return e(g,h);};isString=neo.ENV.isString;neo.ENV.isEmptyString=function(g){return e(g,h)&&g.length===f;};isEmptyString=neo.ENV.isEmptyString;neo.ENV.EMPTY_STRING="";EMPTY_STRING=neo.ENV.EMPTY_STRING;neo.ENV.isJquery=function(g){return isObject(g)&&isString(g.jquery);};isJquery=neo.ENV.isJquery;neo.namespace=function(r){var g=arguments.length,t=null,q,p,s;for(q=0;q=0;r-=1){s[g[r]]=g[r];}for(r=t.length-1;r>=0;r-=1){s[t[r]]=t[r];}for(p in s){if(s.hasOwnProperty(p)){q.push(s[p]);}}return q;};neo.intersect=function(z,y){var p=[],q={},u=y.length,w,x,t=2,g=arguments.length,s=[];for(w=0;w2){s.push(p);for(t;t \n"+a;}};neo.CustomException.prototype=Error.prototype;(function(){$(function(){neo.config.rtl=$("body").hasClass("rtl");neo.ComponentLoader.load();neo.ComponentLoader.bindAutoLoaderByClassname("_dynamic-content-holder_");});}());(function(){var a=0;neo.namespace("event.EventDispatcher");neo.event.EventDispatcher={_observers:null,_callbackTmp:function(e,d,b,c){return function(){e.apply(d,[setDefaultValue(b,null),c]);};},subscribe:function(c,d,b){this._observers=this._observers||{};if(typeof c==="undefined"){throw new neo.CustomException("Event-type undefined.");}else{if(typeof d!=="function"){throw new neo.CustomException("Trying to add an event listener without defining a callback function.");}}b=setDefaultValue(b,null);this._observers[c]=this._observers[c]||[];this._observers[c].push({listener:d,context:b});},unsubscribe:function(e,f,d){this._observers=this._observers||{};var j=this._observers[e],c,b,h,g;if(isFunction(f)){d=setDefaultValue(d,null);for(c=0,b=j.length;c0;}};}());(function(){var c=["append","html","prepend"];var a=function(){this._addDomChangeHandler();};a.prototype={_addDomChangeHandler:function(){var e,d=c.length;for(e=0;e0){window.setTimeout(function(){f.dispatchEvent(a.DOM_CHANGED,{$element:g});},50);}return e.apply(this,arguments);};jQuery.fn[d].displayName=d;}};a.DOM_CHANGED="theDomChanged";var b=new a();neo.mixin(a,neo.event.EventDispatcher);neo.namespace("neo.event");neo.event.DomElementWatchdog=function(d){this._$watched=isJquery(d)?d:$(d);b.subscribe(a.DOM_CHANGED,this._theDomChanged,this);this._addDomChangeHandler();};neo.event.DomElementWatchdog.prototype={_theDomChanged:function(e){var d=e.$element;if(d.data(neo.event.DomElementWatchdog.WATCHDOG_DATA_NAME)){this.dispatchEvent(neo.event.DomElementWatchdog.DOM_CHANGED,{$element:d});}},_addDomChangeHandler:function(){this._$watched.data(neo.event.DomElementWatchdog.WATCHDOG_DATA_NAME,true);}};neo.event.DomElementWatchdog.WATCHDOG_DATA_NAME="neo.event.DomElementWatchdog";neo.event.DomElementWatchdog.DOM_MANIPULATORS=c;neo.event.DomElementWatchdog.DOM_CHANGED="theDomChanged";neo.mixin(neo.event.DomElementWatchdog,neo.event.EventDispatcher);}());neo.ComponentFactory={_uid:0,createComponent:function(b,c){var a=null;if(isFunction(neo.jsComponents[b])){if(neo.config.DEBUG){neo.IJsComponent.ensure(neo.jsComponents[b],"neo.jsComponents."+b);}a=new neo.jsComponents[b](c,this._uid+=1);c.className=c.className.replace(/\bjsc\b/g,"");if(neo.config.DEBUG){}}else{throw new neo.CustomException("Found a component of type "+b+" inside the dom, but there is no class for it.");}return a;}};(function(){var a=function(){var b=this;this.components=[];this._unloadedComponents=[];$(function(){neo.utils.CommonEventsManager.subscribe(neo.utils.CommonEventsManager.WEBSITE_RESUME,b._resumeComponents,b);neo.utils.CommonEventsManager.subscribe(neo.utils.CommonEventsManager.WEBSITE_STANDBY,b._suspendComponents,b);neo.utils.CommonEventsManager.subscribe(neo.utils.CommonEventsManager.DOCUMENT_SCROLL,b._onScroll,b);});};a.prototype={COMPONENTS_LOADED:"newComponentsLoaded",JQUERY_COMPONENT_DATA_KEY:"neo.JSC_INSTANCE",load:function(e){var g=this,c,d,f=(new Date()).getTime(),b;if(!isUndefined(e)&&isString(e.jquery)){d=e.find(".jsc");}else{d=$(".jsc");}d.each(function(i,j){var h=j.getAttribute("data-jsc-name"),k;if(!isString(h)||isEmptyString(h)){}else{k=h.split(",");neo.each(k,function(l){if(isUndefined(l)||l===null){neo.utils.Logger.log("Found a component in the site, but the name is missing ",j);}else{try{b=$(j);g.components.push(neo.ComponentFactory.createComponent(l,j));g.components[g.components.length-1].___$componentElement___=b;b.data(g.JQUERY_COMPONENT_DATA_KEY,g.components[g.components.length-1]);if(j.getAttribute("data-lazy-load")==="true"){g._unloadedComponents.push({loaded:false,top:b.offset().top,height:b.outerHeight(),component:g.components[g.components.length-1]});}else{g.components[g.components.length-1].load();}}catch(m){neo.utils.Logger.warn("An error occured creating a "+l+" js component: ",m.message,m,j);}}},this);}});this._cleanup();neo.utils.Logger.log("Currently there are "+this.components.length+" component(s) in the site. It took "+((new Date()).getTime()-f)+"ms to search for them");this.dispatchEvent(this.COMPONENTS_LOADED,{});},getComponentInstance:function(c){var b=c.eq(0).data(this.JQUERY_COMPONENT_DATA_KEY);return isUndefined(b)?null:b;},_cleanup:function(){var b=[];neo.utils.Logger.log("Before cleanup there are "+this.components.length+" component(s) in the site.");neo.each(this.components,function(d,c){if(d.___$componentElement___.closest("html").length===0){d=null;}else{b.push(d);}});this.components=b;neo.utils.Logger.log("After cleanup there are "+this.components.length+" component(s) in the site.");},_onScroll:function(d){if(this._unloadedComponents.length>0){var c=0,b=[];neo.each(this._unloadedComponents,function(f,e){if(!f.loaded&&f.top+f.height>d.scrollTop&&f.top0&&!isEmptyString(a[0])){this._product=new neo.compare.Product(b.getAttribute("data-id"),b.getAttribute("data-title"),b.getAttribute("data-thumbnail-url"),b.getAttribute("data-comparison-table-url"),b.getAttribute("data-spec-id-list").split(","),b.getAttribute("href"));this._checkStatus();this._bindChanges();this._bindClick();}else{this._$link.click(function(c){c.preventDefault();});this._deactivate(true);}};neo.compare.AddRemoveLink.prototype={_getController:function(){return neo.compare.CompareController.getInstance();},_setLinkStatus:function(a){this._isAddLink=a;this._$link[a?"removeClass":"addClass"](neo.compare.AddRemoveLink.REMOVE_CLASS);},_deactivate:function(a){this._$link[(a&&this._isAddLink)?"addClass":"removeClass"](neo.compare.AddRemoveLink.DEACTIVATED_CLASS);this._$link[(a&&!this._getController().hasFreeSlots()&&this._isAddLink)?"addClass":"removeClass"](neo.compare.AddRemoveLink.FULL_CLASS);},_checkStatus:function(){var a=this._getController().getProductsArray();this._setLinkStatus(!this._getController().isCurrentlyCompared(this._product.id));this._deactivate(!this._getController().isComparable(this._product,true));this._$from.text(a.length);this._$to.text(a.length+this._getController().getFreeSlots());},_bindChanges:function(){this._getController().subscribe(this._getController().PRODUCTS_CHANGED,this._handleComparisonChange,this);this._getController().subscribe(this._getController().MESSAGE,this._handleComparisonMessage,this);},_bindClick:function(){var a=this;this._$link.click(function(b){b.preventDefault();a._getController()[a._isAddLink?"addProduct":"removeProduct"](a._product);});},_handleComparisonChange:function(a){this._checkStatus();},_handleComparisonMessage:function(a){}};neo.compare.AddRemoveLink.REMOVE_CLASS="remove-product-link";neo.compare.AddRemoveLink.DEACTIVATED_CLASS="deactivated";neo.compare.AddRemoveLink.FULL_CLASS="no-more";neo.namespace("neo.compare");neo.compare.CompareController=(function(){var a=null,b=function(){var c=this;this._model=new neo.compare.CompareModel();this._lightbox=null;};b.prototype={_getComparisonLightbox:function(e,c,g,d){var f=this;if(this._lightbox===null){$.get(e,function(h){$("body").append("
      "+h+"
      ");f._lightbox=new neo.compare.CompareLightbox(c);g.apply(d,[f._lightbox]);});}else{g.apply(d,[this._lightbox]);}},_triggerChange:function(){this.dispatchEvent(this.PRODUCTS_CHANGED,{comparedProductsArray:this._model.getProductsArray(),freeSlots:this._model.getFreeSlots()});this._updateComparisonTable();},_updateComparisonTable:function(c){c=c||this._lightbox;if(c&&c.isOpened()){this._model.getProductComparisonData(function(d){c.compare(d);},this);}},getProductsArray:function(){return this._model.getProductsArray();},getFreeSlots:function(){return this._model.getFreeSlots();},hasFreeSlots:function(){return this.getFreeSlots()>0;},addProduct:function(c){if(this._model.addProduct(c)){this._triggerChange();}},replaceProductById:function(c,d){if(this._model.replaceProductById(c,d)){this._triggerChange();}},removeProduct:function(c){this.removeProductById(c.id);},removeProductById:function(c){if(this._model.removeProductById(c)){this._triggerChange();}},isComparable:function(d,c){return this._model.isComparable(d,c);},isCurrentlyCompared:function(c){return this._model.isCurrentlyCompared(c);},showComparisonTable:function(d,c){this._getComparisonLightbox(d,c,function(e){e.open();this._updateComparisonTable(e);},this);},compareWithoutChoice:function(){this.dispatchEvent(this.COMPARE_WITHOUT_CHOICE);}};b.prototype.PRODUCTS_CHANGED="comparisonProductsChanged";b.prototype.COMPARE_WITHOUT_CHOICE="comparisonCompareWithoutChoice";b.prototype.MESSAGE="comparisonHasSmthg2Say";neo.mixin(b,neo.event.EventDispatcher);return{getInstance:function(){if(a===null){a=new b();}return a;}};}());neo.namespace("neo.compare");neo.compare.CompareLightbox=function(a){this._lightbox=new neo.ui.Lightbox("product-compare-lightbox");this._dealerLocatorUrl=a;this._$lightboxContent=null;this._tableView=null;};neo.compare.CompareLightbox.prototype={_createBody:function(){if(this._$lightboxContent===null){this._$lightboxContent=this._lightbox.change(neo.services.HandlebarsTemplateService.get("comparison-lightbox-body",{}));this._tableView=new neo.compare.CompareLightboxTableView(this._$lightboxContent.find("table:first"),this._dealerLocatorUrl);this._blocker=new neo.ui.UiBlocker(this._$lightboxContent);}},open:function(){this._createBody();this._lightbox.open();},compare:function(a){if(this.isOpened()){this._tableView.render(a);}},isOpened:function(){return this._lightbox.isOpened();}};neo.namespace("neo.compare");neo.compare.CompareLightboxTableView=function(b,a){this._$table=b;this._dealerLocatorUrl=a;this._columns=parseInt(this._$table.attr("data-product-columns"),10);this._initialHtml=b.html();};neo.compare.CompareLightboxTableView.prototype={_fillCells:function(b,d){if(b.length0;}}}}return b;},isCurrentlyCompared:function(a){var b=false;neo.each(this._productCache,function(c){if(c.id===a){b=true;return false;}});return b;},addProduct:function(a){if(this.isComparable(a,true)&&!this.isCurrentlyCompared(a.id)){this._productCache.push(a);this._setCookie();return true;}else{neo.utils.Logger.log("Couldn't add product "+a.id);return false;}},removeProduct:function(a){return this.removeProductById(a.id);},removeProductById:function(a){var b;if(this.isCurrentlyCompared(a)){this._productCache.splice(this._getProductCacheIndex(a),1);this._setCookie();return true;}else{neo.utils.Logger.log("Couldn't remove product "+a);return false;}},replaceProductById:function(a,b){var c=this._getProductCacheIndex(a);if(c!==-1&&this.isComparable(b,false)){this._productCache[c]=b;this._setCookie();return true;}else{neo.utils.Logger.log("Couldn't replace product "+a+" with "+b.id);return false;}},size:function(){return this._productCache.length;}};neo.compare.CompareModel.MAX_PRODUCTS=3;neo.compare.CompareModel.COOKIE_NAME_FALLBACK="comparison_consumer";neo.namespace("neo.compare");neo.compare.CompareTable=function(){this._columns=[];this._features=[];this._abstractList=[" "];};neo.compare.CompareTable.prototype={addColumn:function(a){this._columns.push(a);this._features=neo.union(this._features,a.getFeatureList());this._abstractList.push(a.getAbstract());neo.utils.Logger.log("neo.compare.CompareTable#addProduct table now has "+this._features.length+" rows.",this._features);},size:function(){return this._columns.length;},getAbstractList:function(){return this._abstractList;},getProductList:function(){var b=[],a;neo.each(this._columns,function(c){a=c.getProduct();b.push(a);},this);return b;},eachFeature:function(g,c){var a,f,b,d,e;neo.each(this._features,function(h){d=[];f={};b=null;neo.each(this._columns,function(j,i){a=j.getFeature(h);b=b===null?a.title:b;a.eachAttributeLine(function(k,l,n,m){f[l]=isUndefined(f[l])?[]:f[l];f[l][k]=isUndefined(f[l][k])?[]:f[l][k];f[l][k][parseInt(i,10)+1]=m;if(k===0&&!isString(f[l][k][0])){f[l][k][0]=n;}},this);});g.apply(c,[b,f]);},this);}};neo.namespace("neo.compare");neo.compare.CompareTableColumn=function(c,a,b){this._model=c[a];this._keyText=c.mainDifference;this._thumbnailUrl=c.thumbnailUrl;this._product=b;this._product.compareTableThumbnail=this._thumbnailUrl;this._product.shopUrl=c.shopUrl;if(isUndefined(this._model)){throw new Error("neo.compare.CompareTableColumn#new: there is no model data for the specification id "+a);}};neo.compare.CompareTableColumn.prototype={getFeature:function(a){return new neo.compare.CompareTableFeature(this._model[a]);},getAbstract:function(){return this._keyText;},getFeatureList:function(){var a=[];neo.each(this._model,function(c,b){a.push(b);});return a;},getProduct:function(){return this._product;}};neo.namespace("neo.compare");neo.compare.CompareTableFeature=function(a){this.title=null;this._attributes={};if(isObject(a)){this.title=a.title;this._attributes=a.attributes;}};neo.compare.CompareTableFeature.prototype={eachAttributeLine:function(d,c){var a,b;neo.each(this._attributes,function(f,e){a=-1;b=f.subtitle;neo.each(f.lines,function(g){d.apply(c,[a+=1,e,b,g]);},this);},this);}};neo.namespace("neo.compare");neo.compare.OpenLink=function(a){this._$link=$(a);this._comparionsContentUrl=a.getAttribute("href");this._lightbox=null;this._controller=neo.compare.CompareController.getInstance();this._controller.subscribe(this._controller.PRODUCTS_CHANGED,this._handleUpdate,this);this._controller.subscribe(this._controller.COMPARE_WITHOUT_CHOICE,this._handleOpenClick,this);this._toggleLink(this._controller.getProductsArray().length>0);this._bindEvents();};neo.compare.OpenLink.prototype={_bindEvents:function(){var a=this;this._$link.click(function(b){b.preventDefault();a._handleOpenClick();});},_toggleLink:function(a){this._$link[a?"removeClass":"addClass"](neo.compare.OpenLink.NO_ITEMS);},_handleUpdate:function(a){this._toggleLink(a.comparedProductsArray.length>0);},_handleOpenClick:function(){this._controller.showComparisonTable(this._comparionsContentUrl,this._$link.data("dealerlocatorRef"));}};neo.compare.OpenLink.NO_ITEMS="no-items-compared";neo.namespace("neo.compare");neo.compare.Product=function(f,d,e,c,a,b){this.id=f;this.title=d;this.thumbnail=e;this.tableUrl=c;this.specificationIdList=a;this.detailUrl=b;this.shopUrl="";this.compareTableThumbnail=this.thumbnail;};neo.namespace("neo.compare");neo.compare.RemoveLink=function(a){this._$link=$(a);this._productId=a.getAttribute("data-id");this._bindClick();};neo.compare.RemoveLink.prototype={_bindClick:function(){var a=this;this._$link.click(function(b){b.preventDefault();neo.compare.CompareController.getInstance().removeProductById(a._productId);});}};(function(){neo.namespace("componentMediators");var a=function(){};a.prototype={STAGE_INSPIRATION_CONTENT_UPDATE:"thereIsFancyStageUpdateAvailableNow",publishStageExtraContent:function(b){this.dispatchEvent(this.STAGE_INSPIRATION_CONTENT_UPDATE,{inspirationHtml:b});}};neo.mixin(a,neo.event.EventDispatcher);neo.componentMediators.InspirationMediator=new a();}());neo.namespace("neo.jsComponents.AccessibleTabs");neo.jsComponents.AccessibleTabs=function(a){this._$tabContainer=$(a);this._hoverSensitive=a.getAttribute("data-hover-sensitive")==="true";this._dependentContent=a.getAttribute("data-dependent-content")==="true";this._$oldDependentContent=$([]);this._$tabHeads=null;this._hoverClickDelay=null;};neo.jsComponents.AccessibleTabs.prototype={_bindHovering:function(){if(this._hoverSensitive){var b=this,a;this._$tabContainer.delegate(".tabs a","mouseenter",function(){var c=$(this);a=b._$tabContainer.find(".tabs-list .current a");c.trigger("click",[true]);b._hoverClickDelay=window.setTimeout(function(){a=c;a.trigger("click");},500);}).delegate(".tabs a","mouseleave",function(){window.clearTimeout(b._hoverClickDelay);a.trigger("click");});}},_bindContent:function(){if(this._dependentContent){var c=this,a,b;this._$tabContainer.delegate(".tabs a","click",function(e,d){if(!d){a=parseInt(this.getAttribute("data-index"),10);c._$oldDependentContent.hide();c._$oldDependentContent=c._getDepenedentContent(a);c._$oldDependentContent.show();}});}},_getDepenedentContent:function(a){return $("#"+this._$tabHeads.eq(a).attr("data-dependency-ref"));},_showTabs:function(){neo.utils.CommonEventsManager.unsubscribe(neo.utils.CommonEventsManager.COMPONENTS_LOADED,this._showTabs,this);var c=this,a=this._$tabContainer.accessibleTabs({tabhead:"h2",fx:"show",fxspeed:0,syncheights:false,currentInfoText:"current tab: "}),b=window.location.hash;this._$tabHeads=this._$tabContainer.find(".tabhead");this._$tabHeads.each(function(d){c._getDepenedentContent(d).hide();});this._$tabContainer.find(b).click();this._$tabContainer.find(".tabs-list li > a").each(function(d){this.setAttribute("data-index",d);}).click(function(d){d.preventDefault();});this._$tabContainer.addClass("loaded");this._bindHovering();this._bindContent();this._$tabContainer.find(".tabs-list li.current > a").click();},load:function(){neo.utils.CommonEventsManager.subscribe(neo.utils.CommonEventsManager.COMPONENTS_LOADED,this._showTabs,this);},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.Accordion");neo.jsComponents.Accordion=function(a){this._$acc=$(a);};neo.jsComponents.Accordion.prototype={load:function(){this._accordion();},_toggleAccordion:function(a,c,b){a.toggleClass("current yellow grey");c.toggle("slide",{direction:"up"},b);},_accordion:function(){var c=this,a=this._$acc.find(".btn"),b=a.parent().next("div");if(this._$acc.hasClass("first")){this._toggleAccordion(a,b,0);}a.click(function(d){d.preventDefault();c._toggleAccordion(a,b,200);});},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.AutoSelect");neo.jsComponents.AutoSelect=function(b,a){this._$form=$(b);this._$select=null;};neo.jsComponents.AutoSelect.prototype={load:function(){var a=this;this._$select=this._$form.find("select");this._$select.change(function(b){a._$form.submit();});},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.ComparisonAddLink");neo.jsComponents.ComparisonAddLink=function(a){this._link=a;this._addLink=null;};neo.jsComponents.ComparisonAddLink.prototype={load:function(){this._addLink=new neo.compare.AddRemoveLink(this._link);},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.ComparisonCategorySelect");neo.jsComponents.ComparisonCategorySelect=function(a,b){this._$select=$(a);this._$toggledSelects=null;this._controller=null;this._initialProductId="";this._product=null;this._currentSpecIdList=[];this._id=b;};neo.jsComponents.ComparisonCategorySelect.prototype={_getProductSelectByCategory:function(a){return this._$toggledSelects.filter('[name="'+a+'"]');},_handleCategoryChange:function(){var b=this._$select.val(),a=this._$select.children('option[value="'+b+'"]').attr("data-spec-id-list");if(isEmptyString(a)){neo.utils.Logger.warn("selected category without spec id list!");}else{this._currentSpecIdList=a.split(",");this._$toggledSelects.parent().removeClass("active");this._getProductSelectByCategory(b).parent().addClass("active");}},_handleProductChange:function(a){var b=a.value,c=$(a).children('option[value="'+b+'"]');if(isString(b)&&!isEmptyString(b)&&b!=="null"){this._product.id=c.attr("data-id");this._product.title=c.attr("data-title");this._product.thumbnail=c.attr("data-thumbnail-url");this._product.tableUrl=c.attr("data-comparison-table-url");this._product.specificationIdList=this._currentSpecIdList;this._product.detailUrl=c.attr("data-detail-url");if(isString(this._initialProductId)&&!isEmptyString(this._initialProductId)){this._controller.replaceProductById(this._initialProductId,this._product);}else{this._controller.addProduct(this._product);}}},_setCategoryStatus:function(){var a=this;this._$select.children("option").each(function(){a._product.specificationIdList=this.getAttribute("data-spec-id-list").split(",");if(!a._controller.isComparable(a._product,false)){this.setAttribute("disabled","disabled");}else{a._setProductSelectStatus(a._getProductSelectByCategory(this.value),a._product);}});},_setProductSelectStatus:function(a,b){var c=this;a.children("option").each(function(){b.id=this.getAttribute("data-id");if(!c._controller.isComparable(b,false)){this.setAttribute("disabled","disabled");}});},_findAndSelectProduct:function(d){if(isString(d)&&!isEmptyString(d)){var f=this,e,c,a=null,b="";this._$select.children("option").each(function(){c=this.value;b=$(this).text();e=f._getProductSelectByCategory(c);e.children("option").each(function(){if(this.value===d){this.setAttribute("selected","selected");a=c;return false;}});if(a!==null){this.setAttribute("selected","selected");return false;}});this._$select.closest(".article").children(".product-category").text(b);}},_beautify:function(){var b=new neo.ui.FancyFormsSelect(this._$select[0]),a;this._$toggledSelects.each(function(){a=new neo.ui.FancyFormsSelect(this);});},load:function(){var a=this;this._initialProductId=this._$select.attr("data-initial-product");this._controller=neo.compare.CompareController.getInstance();this._$toggledSelects=this._$select.nextAll("select");this._product=new neo.compare.Product();this._findAndSelectProduct(this._initialProductId);this._setCategoryStatus();this._beautify();this._$select.change(function(){a._handleCategoryChange();});this._$toggledSelects.change(function(){a._handleProductChange(this);});this._handleCategoryChange();},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.ComparisonOpenLink");neo.jsComponents.ComparisonOpenLink=function(a){this._link=a;this._openLink=null;};neo.jsComponents.ComparisonOpenLink.prototype={load:function(){this._openLink=new neo.compare.OpenLink(this._link);},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.ComparisonRemoveLink");neo.jsComponents.ComparisonRemoveLink=function(a){this._link=a;this._removeLink=null;};neo.jsComponents.ComparisonRemoveLink.prototype={load:function(){this._removeLink=new neo.compare.RemoveLink(this._link);},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.ComparisonSidebar");neo.jsComponents.ComparisonSidebar=function(b,a){this._$container=$(b);this._$toggle=null;this._$content=null;this._$listContainer=null;this._$list=null;this._comparator=null;this._toggleHeight=0;this._isOpen=false;this._id=a;};neo.jsComponents.ComparisonSidebar.prototype={_bindEvents:function(){var a=this;this._$toggle.bind("click",function(b){b.preventDefault();if((!a._hasElementsCheck())&&(!a._isOpen)){a._comparator.compareWithoutChoice();}else{a[a._isOpen?"_hide":"_show"]();}});},_renderCompareList:function(b){var a=neo.services.HandlebarsTemplateService.get("comparison-sidebar-list",{products:b});this._$list.html(a);},_handleProductChange:function(a){this._renderCompareList(a.comparedProductsArray);if(!this._hasElementsCheck()){this._hide();}},_getContentHeight:function(){return this._$content.height();},_getListHeight:function(){return this._$list.outerHeight(true);},_animateList:function(){var a=this;this._$listContainer.stop().animate({height:this._getListHeight()},200,"easeInQuart",function(){a._$listContainer.css({height:"auto"});});},_hide:function(){var a=this;this._$container.stop().animate({height:this._toggleHeight},600,"easeOutQuart",function(){a._$container.removeClass("is-open");});this._isOpen=false;},_show:function(){var a=this;this._$container.addClass("is-open");this._$container.stop().animate({height:this._getContentHeight()},450,"easeInQuart",function(){a._$container.css({height:"auto"});});this._isOpen=true;},_hasElementsCheck:function(){var b=false,e=this._comparator.getProductsArray().length;if(e>0){b=true;}else{var f=this._$container.find("a");for(var c=0,a=f.length;c0){this._show();}},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.ContentGallery");neo.jsComponents.ContentGallery=function(a){this._$contentGalleryElement=$(a);this._$images=this._$contentGalleryElement.find(".lightbox-image");this._lightboxGalleryData=[];this._lightboxGallery=null;};neo.jsComponents.ContentGallery.prototype={_showLightboxGallery:function(a){if(this._lightboxGallery===null){this._lightboxGallery=new neo.ui.LightboxGallery(this._lightboxGalleryData);}this._lightboxGallery.show(a,true);return this._lightboxGallery;},load:function(){var d=this,c,a,b;this._$images.each(function(e){this.setAttribute("data-index",e);c=this.getAttribute("data-title");a=this.getAttribute("data-description");d._lightboxGalleryData.push({thumbnail:this.getAttribute("data-thumbnail"),large:this.href,title:isString(c)?c:"-",description:isString(a)?a:"-",downloadAddAction:this.getAttribute("data-add-action"),downloadPath:this.getAttribute("data-download-path")});});neo.utils.Logger.dir(this._lightboxGalleryData);this._$contentGalleryElement.delegate(".lightbox-image","click",function(f){f.preventDefault();d._showLightboxGallery(parseInt(f.currentTarget.getAttribute("data-index"),10));});this._$contentGalleryElement.delegate("a.see-all","click",function(f){f.preventDefault();d._showLightboxGallery(0);});b=new neo.ui.ScrollContainer(this._$contentGalleryElement);},unload:function(){this._$contentGalleryElement.undelegate("click");},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.CountryRedirector");neo.jsComponents.CountryRedirector=function(a){this._$link=$(a);};neo.jsComponents.CountryRedirector.prototype={load:function(){this._$link.click(function(a){a.preventDefault();$(".header .meta li.select-country > a").click();$("html,body").animate({scrollTop:0},350,"easeInQuart");});},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.DealerLocator");neo.jsComponents.DealerLocator=function(b,a){this._$module=$(b);this._id=a;this._map=null;this._view=null;this._detailView=null;this._listPagination=null;this._currentDealerModel=null;this._activeDealer=null;this._$mapContainer=this._$module.find(".map > .map-container");this._geocoder=new neo.google.GoogleGeocodingService();this._geocoder.setPreferredRegion(this._$module.attr("data-iana-region-subtag"));this._dealerService=new neo.dealerLocator.DealerLocatorService();this._dealerService.subscribe(neo.dealerLocator.DealerLocatorService.NEW_DEALER_LIST,this._handleNewDealerlist,this);this._dealerService.subscribe(neo.dealerLocator.DealerLocatorService.DEALER_LIST_CLEARED,this._handleDealerListCleared,this);this._dealerListAction=null;this._isFirstCall=true;this._initCall=false;};neo.jsComponents.DealerLocator.prototype={_initGeocoder:function(){this._geocoder.subscribe(neo.google.GoogleGeocodingService.NEW_GEOCODE,this._handleNewGeocoding,this);this._geocoder.subscribe(neo.google.GoogleGeocodingService.REQUEST_ERROR,this._handleGeocodingError,this);},_handleSearch:function(a){this._initCall=true;this._geocoder.findByName(a.searchTerm);this._hideDealerDetail();},_handleFilterChange:function(b){var a=this._view.getFilterList().length;if(a==0){this._dealerService.clearFullDealerList();return;}if(!this._currentDealerModel||!this._currentDealerModel.isOnlineDealerList()){this._loadLocalDealers();}else{this._loadOnlineDealers();}},_handleDealerFocus:function(a){this._showDealerDetail(this._currentDealerModel.getDealer(a.index));},_handleNewGeocoding:function(a){if(this._map!==null){neo.utils.Logger.log("The search for <"+a.result.getOriginalAddress()+"> found <"+a.result.getFormattedAddress()+">",a.result._data);this._map.updateViewport(a.result.getViewport());this._view.setSearchTerm(a.result.getFormattedAddress());}else{this._createMap(a.result.getViewport());}},_handleGeocodingError:function(a){alert('The search for "'+a.searchTerm+'" did not return any results');},_handleMapChange:function(a){neo.utils.Logger.log("The map position changed, fetching new data --------------_______________-----------------");if(!this._isFirstCall){this._loadLocalDealers();}this._isFirstCall=false;},_handleNewDealerlist:function(a){var b=this;this._currentDealerModel=this._dealerService.getDealerModel();neo.utils.Logger.log("Got new dealer list with "+this._currentDealerModel.size()+" dealers");this._map.removeAllMarkers();this._currentDealerModel.getEachDealer(function(d,c){d.setActiveStatus(this._activeDealer!==null&&d.getId()===this._activeDealer.getId());if(d.isActive()){this._activeDealer=d;}this._renderDealerMarker(d,c);},this);if(this._initCall){this._initCall=false;this._map.beQuiet(true);this._map.fitMarkers(this._currentDealerModel.getMarkers());this._map.beQuiet(false);}window.setTimeout(function(){b._listPagination.build(b._currentDealerModel.size(),neo.jsComponents.DealerLocator.DEALERS_PER_PAGE,"dealer-list-pagination");b._renderDealerResultList(0);b._view.unblockView();},this._currentDealerModel.size()*5);},_handleDealerListCleared:function(a){this._map.removeAllMarkers();this._hideDealerDetail();this._view.hideDealerResultList();this._listPagination.build(0,0,"dealer-list-pagination");},_handleListPagination:function(a){this._renderDealerResultList(a.index);this._view.scrollToListTop();},_loadLocalDealers:function(){var a=this._view.getFilterList();if(a.length>0){this._view.blockView();this._dealerService.getDealerList(this._dealerListAction,this._map.getViewport(),this._view.getFilterList(),this._initCall);}},_loadOnlineDealers:function(){this._view.blockView();this._dealerService.getOnlineDealerList(this._view.getOnlineDealerUrl(),this._view.getFilterList());},_initializeMap:function(){var a=this._view.getPrefilledSearch(),b;if(isEmptyString(a)){b=setDefaultValue(this._$module.attr("data-map-initial-search"),neo.jsComponents.DealerLocator.INITIAL_SEARCH_FALLBACK);this._geocoder.findByName(isEmptyString(b)?neo.jsComponents.DealerLocator.INITIAL_SEARCH_FALLBACK:b);}else{this._isFirstCall=false;this._view.search(a);}},_createMap:function(a){this._map=new neo.google.GoogleMapAdapter(this._$mapContainer,a);this._map.subscribe(neo.google.GoogleMapAdapter.MAP_POSITION_CHANGED,this._handleMapChange,this);},_resizeMap:function(){if(this._map!==null){this._map.resize(this._detailView.getMapWidth(),this._detailView.getMapHeight());}},_renderDealerResultList:function(a){this._view.updateDealerResultHtml(neo.services.HandlebarsTemplateService.get("dealer-list-result",{dealers:this._currentDealerModel.getDealerDataArray(neo.jsComponents.DealerLocator.DEALERS_PER_PAGE,a),offset:a*neo.jsComponents.DealerLocator.DEALERS_PER_PAGE,isOnline:this._currentDealerModel.isOnlineDealerList()}),this._currentDealerModel.isOnlineDealerList());},_renderDealer:function(a,b){if(a!==null){a.setActiveStatus(b);this._map.removeMarker(a.getMarker());this._map.removeMarker(a.getLabel());this._renderDealerMarker(a,a.getIndex());}},_renderDealerMarker:function(c,b){var d=this,a=this._map.addMarker(c.lat(),c.lng(),c.isPremium()?neo.google.GoogleMapAdapter.PREMIUM_DEALER_INDEX:b,c.isActive());c.setMarker(a.marker);c.setLabel(a.label);c.setIndex(b);c.subscribe(neo.dealerLocator.Dealer.FOCUS,function(){d._showDealerDetail(c);});},_showDealerDetail:function(b){var a=this._activeDealer;this._activeDealer=b;this._map.beQuiet(true);this._detailView.updateDetail(neo.services.HandlebarsTemplateService.get("dealer-detail",b.getDealerData()));this._toggleDealerDetail(true);this._renderDealer(a,false);this._renderDealer(this._activeDealer,true);this._map.beQuiet(false);},_hideDealerDetail:function(){this._activeDealer=null;this._toggleDealerDetail(false);},_toggleDealerDetail:function(a){this._detailView[a?"show":"hide"]();this._resizeMap();},load:function(){this._view=new neo.dealerLocator.LocatorView(this._$module);this._view.subscribe(neo.dealerLocator.LocatorView.SEARCH_SUBMIT,this._handleSearch,this);this._view.subscribe(neo.dealerLocator.LocatorView.FILTER_CHANGED,this._handleFilterChange,this);this._view.subscribe(neo.dealerLocator.LocatorView.DEALER_FOCUS,this._handleDealerFocus,this);this._view.subscribe(neo.dealerLocator.LocatorView.REQUEST_LOCAL,this._loadLocalDealers,this);this._view.subscribe(neo.dealerLocator.LocatorView.REQUEST_ONLINE,this._loadOnlineDealers,this);this._detailView=new neo.dealerLocator.DealerDetailView(this._$module.find(".dealer-details"));this._listPagination=new neo.ui.Pagination(this._$module.find(".dealer-list-pagination"));this._listPagination.subscribe(neo.ui.Pagination.PAGINATE_NOW,this._handleListPagination,this);this._dealerListAction=this._view.getDealerListAction();this._initGeocoder();this._initializeMap();},unload:function(){},suspend:function(){},resume:function(){}};neo.jsComponents.DealerLocator.INITIAL_SEARCH_FALLBACK="Deutschland";neo.jsComponents.DealerLocator.DEALERS_PER_PAGE=5;neo.namespace("neo.jsComponents.DownloadAddLink");neo.jsComponents.DownloadAddLink=function(a){this._link=a;this._addLink=null;};neo.jsComponents.DownloadAddLink.prototype={load:function(){this._addLink=new neo.download.AddRemoveLink(this._link);},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.DownloadRemoveLink");neo.jsComponents.DownloadRemoveLink=function(a){this._link=a;this._removeLink=null;};neo.jsComponents.DownloadRemoveLink.prototype={load:function(){this._removeLink=new neo.download.RemoveLink(this._link);},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.DownloadSidebar");neo.jsComponents.DownloadSidebar=function(b,a){this._$container=$(b);this._$notice=this._$container.find(".added-to-downloadlist");this._$list=this._$container.find("ul.download-box:first");this._$first=$([]);this._$last=$([]);this._items=0;this._itemsVisible=0;this._itemHeight=0;this._controller=neo.download.DownloadController.getInstance();};neo.jsComponents.DownloadSidebar.prototype={_bindEventHandler:function(){var d=this,b=this._$list,c=0,a=0;this._controller.subscribe(this._controller.ELEMENTS_CHANGED,this._handleListUpdate,this);b.bind("mousewheel",function(g,h,f,e){if((h>0&&a>0)||(h<0&&a0?".scroll-list-up":".scroll-list-down").click();}});this._$container.delegate(".scroll-list-up","click",function(f){f.preventDefault();if(a>0){b.children("li:first").stop(true,false).animate({marginTop:-((a-=1)*d._itemHeight)},300,"easeOutSine");}});this._$container.delegate(".scroll-list-down","click",function(f){f.preventDefault();if(aneo.jsComponents.DownloadSidebar.MAX_VISIBLE,remaining:d.length-neo.jsComponents.DownloadSidebar.MAX_VISIBLE}),b=neo.services.HandlebarsTemplateService.get("download-sidebar-list-appendix",{isEmpty:d.length===0,isMax:d.length>neo.jsComponents.DownloadSidebar.MAX_VISIBLE,remaining:d.length-neo.jsComponents.DownloadSidebar.MAX_VISIBLE}),a=$(c);this._items=a.filter(".download-item").length;this._$list.html(a).next("ul").html(b);this._itemHeight=a.filter(".download-item").eq(0).outerHeight(true,true);this._itemsVisible=Math.ceil(this._$list.outerHeight()/this._itemHeight);this._$container[this._items>this._itemsVisible?"addClass":"removeClass"]("scrolling-list");},load:function(){this._bindEventHandler();this._controller.fetchList(this._$container.data("listAction"));},unload:function(){},suspend:function(){},resume:function(){}};neo.jsComponents.DownloadSidebar.MAX_VISIBLE=4;neo.namespace("neo.jsComponents.Example");neo.jsComponents.Example=function(b,a){this._$container=$(b);this._id=a;};neo.jsComponents.Example.prototype={load:function(){},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.ExpiringContent");neo.jsComponents.ExpiringContent=function(a){this._container=a;};neo.jsComponents.ExpiringContent.prototype={load:function(){var b,a=this._container.getAttribute("data-expiration-date");if((isUndefined(a)||a===null||isEmptyString(a))&&neo.config.DEBUG){neo.utils.Logger.warn("Expiring element used without an expiration date!",this._container);}else{b=(new Date()).getTime();this._container.className+=(parseInt(a,10)-b>0)?" unexpired":" expired";}},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.FileInput");neo.jsComponents.FileInput=function(a){this._$file=$(a);this._addFile=neo.jsComponents.FileInput.HTML_SKELETON;};neo.jsComponents.FileInput.prototype={load:function(){this._FileInput();},_FileInput:function(){var a=this;},unload:function(){},suspend:function(){},resume:function(){}};neo.jsComponents.FileInput.HTML_SKELETON="";neo.namespace("neo.jsComponents.FancyForms");neo.jsComponents.FancyForms=function(a){this._$select=$(a);this._$fancySelect=this._$select.find(".custom_select");this._$fancyCheckbox=$("input[type=checkbox]");this._$resultList=this._$select.find("ul.erg");};neo.jsComponents.FancyForms.prototype={load:function(){},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents");neo.jsComponents.FancyFormsCheckbox=function(a){this._check=a;this._$check=$(a);};neo.jsComponents.FancyFormsCheckbox.prototype={load:function(){this._fancyCheckbox();},unload:function(){},suspend:function(){},resume:function(){},_fancyCheckbox:function(){var b=this,a;this._$check.wrap(function(){return(b._$check.is(":checked"))?'
      ':'
      ';});a=this._$check.parent("div");this._$check.change(function(){a[b._isChecked()?"addClass":"removeClass"]("selected");});a.click(function(){});},_isChecked:function(){return this._$check.is(":checked");}};neo.namespace("neo.jsComponents");neo.jsComponents.FancyFormsRadio=function(a){this.radio=a;this._$radio=$(a);};neo.jsComponents.FancyFormsRadio.prototype={load:function(){this._fancyRadio();},unload:function(){},suspend:function(){},resume:function(){},_fancyRadio:function(){var c=this,a,b;this._$radio.wrap(function(){return($(this).is(":checked"))?'
      ':'
      ';});a=this._$radio.parent("div");this._$radio.change(function(){$('input[name="'+c._$radio.attr("name")+'"]').each(function(){b=$(this);b.parent("div")[b.is(":checked")?"addClass":"removeClass"]("selected");});});a.click(function(){if(!c._$radio.is(":checked")){c._$radio.attr("checked",!c._$radio.is(":checked"));c._$radio.change();}});}};neo.namespace("neo.jsComponents");neo.jsComponents.FancyFormsSelect=function(a){this._select=a;this._fancySelect=null;};neo.jsComponents.FancyFormsSelect.prototype={load:function(){this._fancySelect=new neo.ui.FancyFormsSelect(this._select);},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.FinderLink");neo.jsComponents.FinderLink=function(b,a){this._$link=$(b);this._id=a;};neo.jsComponents.FinderLink.prototype={load:function(){var a=this;this._$link.click(function(b){b.preventDefault();neo.finder.FinderController.getInstance().open(this.getAttribute("data-product-category"));});},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.FlickrImageList");neo.jsComponents.FlickrImageList=function(b,a){this._$container=$(b);this._baseUrl=b.getAttribute("data-inspiration-images-src");this._setUrl=b.getAttribute("data-inspiration-sets-src");this._id=a;this._isPaging=false;this.flickrImagePageCount=parseInt(b.getAttribute("data-flickr-image-page-count"),10);this._service=null;this._setService=null;this._pagination=null;this._$imageList=null;this._$setFilter=null;};neo.jsComponents.FlickrImageList.prototype={_fetchSets:function(){this._setService.getSets();},_fetchtFlickrImages:function(a){var b=this._$setFilter.val();this._service=null;this._service=new neo.inspiration.InspirationService(this._baseUrl+"?set="+b);this._service.subscribe(neo.inspiration.InspirationService.NEW_IMAGES,this._processImageList,this);this._service.subscribe(neo.inspiration.InspirationService.FLICKR_ERROR,this._handleError,this);this._service.getImages(this.flickrImagePageCount,a,neo.inspiration.InspirationService.ORDER_TOP_RATED);},_processSets:function(c){var d=this,b=c.listModel,a=neo.services.HandlebarsTemplateService.get("flickr-filter-select",{sets:b.getSets()});this._$container.find(".filter-results").append(a);this._$setFilter=this._$container.find(".filter-results select");this._$setFilter.change(function(){d._isPaging=false;d._fetchtFlickrImages(0);});this._fetchtFlickrImages(0);},_processImageList:function(b){var a;this._flickrModel=b.listModel;this._currentImageCount=this._flickrModel.getImageCount();a=neo.services.HandlebarsTemplateService.get("flickr-picture-list",{images:b.listModel.getImages(this.flickrImagePageCount)});this._$imageList.html(a);if(!this._isPaging){this._pagination.build(this._flickrModel.getImageCount(),this.flickrImagePageCount,"list-pagination");}},_prepareFilterSelect:function(){},_handleError:function(){this._$container.find(".connection-error").show();},_handleListPagination:function(a){this._isPaging=true;this._fetchtFlickrImages(a.index);},load:function(){this._pagination=new neo.ui.Pagination(this._$container.next(".module-0040").children(".pagination:first"));this._pagination.subscribe(neo.ui.Pagination.PAGINATE_NOW,this._handleListPagination,this);this._setService=new neo.inspiration.InspirationSetService(this._setUrl);this._setService.subscribe(neo.inspiration.InspirationSetService.NEW_SETS,this._processSets,this);this._setService.subscribe(neo.inspiration.InspirationSetService.FLICKR_ERROR,this._handleError,this);this._$imageList=this._$container.find(".image-list");this._fetchSets();},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.Flyout");neo.jsComponents.Flyout=function(a){this._visible=false;this._height=0;this._$flyoutLink=$(a);this._$flyoutCover=this._$flyoutLink.nextAll(".flyout-cover:first");this._$flyout=this._$flyoutLink.nextAll(".flyout:first");this._$overlay=null;this._$flyoutListItem=this._$flyoutLink.parent();this._$allSelectLis=this._$flyoutLink.closest("ul").find("li.select");this._$parentContainer=this._$flyoutLink.closest(".meta");};neo.jsComponents.Flyout.prototype={TOGGLE_DURATION:150,load:function(){var a=this;this._$flyoutLink.click(function(b){b.preventDefault();a._toggleFlyout();});},unload:function(){this._$flyoutLink.unbind();},suspend:function(){},resume:function(){},_toggleFlyout:function(){var b=this,a;this._checkOverlay();if(this._visible){this._$flyout.stop().animate({height:0},this.TOGGLE_DURATION,"easeInSine");this._$overlay.fadeOutCompat(this.TOGGLE_DURATION,function(){b._$flyoutLink.toggleClass("fly");});}else{a=this._getHeight();this._$flyoutLink.toggleClass("fly");this._$flyout.stop().animate({height:a},this.TOGGLE_DURATION,"easeOutSine");this._$overlay.fadeInCompat(this.TOGGLE_DURATION);}this._$allSelectLis.css({"z-index":"7900"});this._$flyoutListItem.css({"z-index":"8100"});this._visible=!this._visible;},_checkOverlay:function(){if(this._$overlay===null){var a=this;this._$overlay=$('
      ');this._$parentContainer.append(this._$overlay);this._$overlay.fadeOut(0).click(function(){a._$flyoutLink.click();});}},_getHeight:function(){if(this._height===0){this._$flyout.css({height:"auto",visibility:"hidden"});this._height=this._$flyout.height();this._$flyout.css({height:0,visibility:"visible"});}return this._height;}};neo.namespace("neo.jsComponents.Homepage");neo.jsComponents.Homepage=function(b,a){this._$container=$(b);this._$currentItem=$([]);this._id=a;this._current=null;this._slideshowTimer=0;this._weights=[];};neo.jsComponents.Homepage.prototype={_bindNavigation:function(){this._$nav.children("ul").children("li").hover(function(){$(this).children("div").fadeIn(300,"easeOutQuart");},function(){$(this).children("div").fadeOut(300,"easeInQuart");});},_binHovering:function(){var a=this;this._$stages.delegate(".description","mouseenter",function(){clearTimeout(a._slideshowTimer);}).delegate(".description","mouseleave",function(){a._slideshow();});},_getNext:function(){var f=this._weights,c=0,e=0,b,d,a;if(this._current!==null){f=this._weights.slice(0,this._current).concat(this._weights.slice(this._current+1));}for(c,b=f.length;c=0&&a=this._$stages.length){this._showStage(0);}}},load:function(){var c=this,a,b;this._$nav=this._$container.children(".home-navigation");this._$stage=this._$container.children(".home-stage");this._$stages=this._$stage.find(".stage-item");this._$stages.each(function(d){var e=parseInt(this.getAttribute("data-random-weight"),10);if(typeof(e)=="number"&&e+""=="NaN"){e=10;}c._weights.push({index:d,weight:e});});this._interval=this._$stage.data("slideshowInterval")*1000;this._blocker=new neo.ui.UiBlocker(this._$stage);this._$stages.children(".description").each(function(){b=$(this);b.data("topDistance",this.style.top).css({top:neo.jsComponents.Homepage.STAGE_HEIGHT});});this._preload(this._getNext());this._bindNavigation();this._binHovering();},unload:function(){},suspend:function(){},resume:function(){}};neo.jsComponents.Homepage.INITIAL_STAGE=0;neo.jsComponents.Homepage.STAGE_HEIGHT=544;neo.namespace("neo.IJsComponent");neo.IJsComponent=new neo.Interface(["load","unload","suspend","resume"]);neo.namespace("neo.jsComponents.Inspiration");neo.jsComponents.Inspiration=function(b,a){this._$inspirationContainer=$(b);this._id=a;this._imageOrder=neo.inspiration.InspirationService.ORDER_TOP_RATED;this.flickrImagePageCount=parseInt(b.getAttribute("data-flickr-image-page-count"),10);this._service=new neo.inspiration.InspirationService(b.getAttribute("data-inspiration-images-src"));this._service.subscribe(neo.inspiration.InspirationService.NEW_IMAGES,this._processImageList,this);this._service.subscribe(neo.inspiration.InspirationService.FLICKR_ERROR,this._handleError,this);this._flickrPager=new neo.ui.SimplePager(this.flickrImagePageCount);this._currentImageCount=neo.jsComponents.Inspiration.INITIAL_IMAGE_COUNT;this._flickrModel=null;this._flickrView=null;neo.utils.CommonEventsManager.subscribe(neo.utils.CommonEventsManager.COMPONENTS_LOADED,this._firstLoad,this);};neo.jsComponents.Inspiration.prototype={_createStageInspirationExtra:function(a){if(this._$inspirationContainer.hasClass("module-0010")){neo.componentMediators.InspirationMediator.publishStageExtraContent(neo.services.HandlebarsTemplateService.get("inspiration-stage-extra",{flickrCount:a,youtubeCount:53,feedCount:22}));}},_processImageList:function(a){this._flickrModel=a.listModel;this._currentImageCount=this._flickrModel.getImageCount();this._flickrPager.setItemCount(this._currentImageCount);this._createStageInspirationExtra(this._currentImageCount);this._updateView();},_fetchFlickr:function(){if(this._flickrView!==null){this._flickrView.prepareLoading();}this._service.getImages(this.flickrImagePageCount,this._flickrPager.offset(),this._imageOrder);},_firstLoad:function(){neo.utils.CommonEventsManager.unsubscribe(neo.utils.CommonEventsManager.COMPONENTS_LOADED,this._firstLoad,this);this._fetchFlickr();},_updateView:function(){if(this._flickrView!==null&&this._currentImageCount>0){this._flickrView.updateList(this._flickrModel.getImages(this.flickrImagePageCount),this._currentImageCount,this._flickrPager.hasLess(),this._flickrPager.hasMore());}else{if(this._currentImageCount!==neo.jsComponents.Inspiration.INITIAL_IMAGE_COUNT){this._handleError();}}},_handleFlickrPaging:function(a){switch(a.pagingDirection){case neo.inspiration.FlickrView.PAGING_NEXT:this._flickrPager.next();break;case neo.inspiration.FlickrView.PAGING_PREVIOUS:this._flickrPager.previous();break;default:break;}this._fetchFlickr();},_handleError:function(){if(this._flickrView!==null){this._flickrView.showErrorPage();this._flickrView.finishLoading();}},load:function(){this._flickrView=new neo.inspiration.FlickrView(this._$inspirationContainer.find(".flickr-tab"));this._flickrView.subscribe(neo.inspiration.FlickrView.ON_PAGING,this._handleFlickrPaging,this);this._flickrView.subscribe(neo.inspiration.FlickrView.ON_ORDER_TOP_RATED,function(){this._imageOrder=neo.inspiration.InspirationService.ORDER_TOP_RATED;this._fetchFlickr();},this);this._flickrView.subscribe(neo.inspiration.FlickrView.ON_ORDER_LATEST,function(){this._imageOrder=neo.inspiration.InspirationService.ORDER_LATEST;this._fetchFlickr();},this);this._updateView();},unload:function(){},suspend:function(){},resume:function(){}};neo.jsComponents.Inspiration.INITIAL_IMAGE_COUNT=-1;neo.namespace("neo.jsComponents.ItemList");neo.jsComponents.ItemList=function(b,a){this._$itemListElement=$(b);this._hasBgr=false;};neo.jsComponents.ItemList.prototype={load:function(){var d=this,g=[],h,c,b,j,e,i=this._$itemListElement.find("ul"),f,a;this._hasBgr=this._$itemListElement.parent(".has-bgr").length>0;i.each(function(){neo.jsComponents.ItemList.counter++;f=$(this).find(".item-image");a=f.find(".align-helper");f.each(function(){g.push($(this).height());});h=Math.max.apply(Math,g);a.css({height:h});if(d._hasBgr){c=80-(h-96);if(d._$itemListElement.parent(".has-item-shadows").length>0){d._$itemListElement.css({paddingTop:(c-20),marginTop:-(c-20)});}else{d._$itemListElement.css({paddingTop:c,marginTop:-c});}}});this._$itemListElement.css({visibility:"visible"});},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.JobsList");neo.jsComponents.JobsList=function(b,a){this._$container=$(b);this._controller=null;};neo.jsComponents.JobsList.prototype={load:function(){this._controller=new neo.jobs.JobsController(this._$container);},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.LightboxRemoteLink");neo.jsComponents.LightboxRemoteLink=function(b,a){this._$container=$(b);this._id=a;this._src=b.href;this._lightbox=null;};neo.jsComponents.LightboxRemoteLink.prototype={_getLightbox:function(){if(this._lightbox===null){var a=this._$container.attr("data-content-class");this._lightbox=new neo.ui.Lightbox(isUndefined(a)?"":a,true);this._lightbox.change('');}return this._lightbox;},_openLightbox:function(){this._getLightbox().open();},load:function(){var a=this;this._$container.click(function(b){b.preventDefault();a._openLightbox();});},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.LightboxVideo");neo.jsComponents.LightboxVideo=function(b,a){this._$container=$(b);this._id=a;this._src=b.href;this._lightbox=null;};neo.jsComponents.LightboxVideo.prototype={_getLightbox:function(){if(this._lightbox===null){this._lightbox=new neo.ui.Lightbox("video-player grid-7 first",true);this._lightbox.change('
      ');}return this._lightbox;},_openLightbox:function(){this._getLightbox().open();},load:function(){var a=this;this._$container.click(function(b){b.preventDefault();a._openLightbox();});},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.LinkSelect");neo.jsComponents.LinkSelect=function(b,a){this._$form=$(b);this._$select=null;this._$link=null;};neo.jsComponents.LinkSelect.prototype={load:function(){var a=this;this._$select=this._$form.find("select");this._$link=this._$form.find("a");this._$select.change(function(){a._$link.attr("href",this.value);});},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.PagePrint");neo.jsComponents.PagePrint=function(b,a){this._$container=$(b);};neo.jsComponents.PagePrint.prototype={load:function(){this._$container.click(function(a){a.preventDefault();window.print();});},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.ProductDescriptionGallery");neo.jsComponents.ProductDescriptionGallery=function(b,a){this._$container=$(b);this._id=a;this._$gallery=null;this._$productImages=null;this._gallery=null;this._featureList=null;this._$actions=null;};neo.jsComponents.ProductDescriptionGallery.prototype={_bindEvents:function(){var b=this,a;this._$container.delegate(".product-colors ul li a","click",function(c){c.preventDefault();a=this.getAttribute("data-gallery-name");b._createGallery(a);b._showActions(a);});},_showActions:function(a){this._$actions.hide().filter("div[data-gallery-name="+a+"]").show();},_handleGalleryChange:function(e){var d=this,c=new neo.ui.StageGalleryLink(e),a=c.getProductName(),b=this._$productImages.children("[data-stage-product-name="+a+"]");if(!b.is(":visible")){this._$productImages.children(".active").fadeOutCompat(100).removeClass("active");b.fadeInCompat(150).addClass("active");}if(b.length===0){neo.utils.Logger.warn("ProductDescriptionGallery#_handleGalleryChange: Can't find an image with the attribute [data-stage-product-name="+a+"]");}},load:function(){var a;this._$container.find(".feature-list-container").each(function(){new neo.ui.CollapsibleFeatureList($(this));});this._$gallery=this._$container.find(".gallery");this._$actions=this._$container.find(".module-product-action, .feature-list-container");this._$productImages=this._$container.find(".product-screen");a=this._$gallery.attr("data-gallery-initial");this._createGallery(a);this._showActions(a);this._bindEvents();},unload:function(){},suspend:function(){},resume:function(){}};neo.mixin(neo.jsComponents.ProductDescriptionGallery,neo.ui.GalleryHolderMixin);neo.namespace("neo.jsComponents.ProductFinderComparison");neo.jsComponents.ProductFinderComparison=function(b,a){this._$view=$(b);this._$comparisonList=null;this._comparator=null;};neo.jsComponents.ProductFinderComparison.prototype={_handleProductChange:function(a){this._renderResultList(a.comparedProductsArray,a.freeSlots);},_renderResultList:function(c,b){var a=neo.services.HandlebarsTemplateService.get("product-finder-compare-list",{products:c,free_slots:b});this._$comparisonList.html(a);neo.ComponentLoader.load(this._$comparisonList);},load:function(){this._$comparisonList=this._$view.find(".compare-result-list:first");this._comparator=neo.compare.CompareController.getInstance();this._comparator.subscribe(this._comparator.PRODUCTS_CHANGED,this._handleProductChange,this);this._renderResultList(this._comparator.getProductsArray(),this._comparator.getFreeSlots());},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.RedirectSelect");neo.jsComponents.RedirectSelect=function(b,a){this._$form=$(b);};neo.jsComponents.RedirectSelect.prototype={load:function(){this._$form.find("select").change(function(){if(!isEmptyString(this.value)){window.location=this.value;}});},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.Scrollable");neo.jsComponents.Scrollable=function(a){this._$ScrollableElement=$(a);this._$tabContainer=null;this._$tabs=null;this._hasTabs=false;this._scroller=null;};neo.jsComponents.Scrollable.prototype={_createScroller:function(a){if(this._scroller!==null){this._scroller.destroy();}this._scroller=new neo.ui.ScrollContainer(this._$ScrollableElement,a);},load:function(){var a=this;this._$tabContainer=this._$ScrollableElement.find("div.tabs");this._$tabs=this._$tabContainer.children("a");this._hasTabs=this._$ScrollableElement.find("div.tabs").length>0;if(this._hasTabs){this._$tabs.click(function(b){b.preventDefault();a._$tabs.removeClass("active");$(this).addClass("active");a._createScroller($(this).attr("href").replace("#",""));});this._$tabs.filter(".active").click();}else{this._createScroller();}},unload:function(){this._$ScrollableElement.undelegate("click");},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.SearchField");neo.jsComponents.SearchField=function(a){this._$searchInput=$(a);};neo.jsComponents.SearchField.prototype={load:function(){this._$searchInput.focus(function(){if(this.value==this.defaultValue){this.value="";}}).blur(function(){if(!this.value.length){this.value=this.defaultValue;}});},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.SelectDrivenContent");neo.jsComponents.SelectDrivenContent=function(b,a){this._$container=$(b);this._$select=null;this._$selectables=null;this._id=a;};neo.jsComponents.SelectDrivenContent.prototype={load:function(){var a=this;this._$select=this._$container.find("select");this._$selectables=this._$container.find(".selectable");this._$select.change(function(){a._$selectables.hide();$("#"+this.value).show();}).change();},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.ShopButton");neo.jsComponents.ShopButton=function(b,a){this._$link=$(b);};neo.jsComponents.ShopButton.prototype={_processResponse:function(b){var a=b.responseUri;if(a!==null&&a!=="null"&&!isEmptyString(a)){this._$link.attr("href",a).addClass("shop-link-active");}else{this._$link.attr("href","#").addClass("shop-link-inactive");}},load:function(){var a=this;$.ajax({url:this._$link.attr("href"),dataType:"json",success:function(b){a._processResponse(b);},error:function(){}});},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.SimpleAccordion");neo.jsComponents.SimpleAccordion=function(b,a){this._$container=$(b);this._id=a;};neo.jsComponents.SimpleAccordion.prototype={_toggle:function(c,b){var d=c.children("div"),a=b?d.height():0;c.stop().animate({height:a},"fast","easeOutQuart").parent()[b?"addClass":"removeClass"]("opened");},load:function(){var a=this;this._$container.find("ul li > div").each(function(){$(this).wrap("
      ");});this._$container.delegate("ul li > h4 a","click",function(c){var b=$(this).parent().next();c.preventDefault();$(this).blur();if(b.parent().hasClass("opened")){a._toggle(b,false);}else{a._toggle(a._$container.find("ul li.opened > div"),false);a._toggle(b,true);}});},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.SimpleTabs");neo.jsComponents.SimpleTabs=function(b,a){this._$container=$(b);this._$links=null;this._$contents=null;};neo.jsComponents.SimpleTabs.prototype={load:function(){var a=this;this._$links=this._$container.find("a");this._$contents=$([]);this._$links.each(function(){var b=this.getAttribute("href");var c=a._getTopicElByHrefContent(b);a._$contents=a._$contents.add(c);}).click(function(b){b.preventDefault();a._show(this);}).eq(0).click();},_show:function(a){$topicEl=this._getTopicElByHrefContent(a.getAttribute("href"));this._$contents.removeClass("active");this._$links.parent().removeClass("current");$(a).parent().addClass("current");$topicEl.addClass("active");},_getTopicElByHrefContent:function(b){var c=$(b);if(c.length==0){var a=b.split("#");if(a.length>1){c=$("#"+a[a.length-1]);}}return c;},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.SiteNavigation");neo.jsComponents.SiteNavigation=function(a){this._$siteNavigationElement=$(a);this._$nav1=this._$siteNavigationElement.children(".nav1");this._$nav1Marker=$(neo.jsComponents.SiteNavigation.MARKER_HTML);this._$nav1.children(".pane").append(this._$nav1Marker);this._$nav1Container=this._$nav1.find("ul > li");this._$nav1Items=this._$nav1.find("ul > li > a");this._$currentNav1Container=this._$nav1.find("ul > li.current");this._nav1StartIndex=this._$nav1Container.index(this._$currentNav1Container);this._currentNav1Index=this._nav1StartIndex;this._leaveNav1Timer=window.setTimeout(function(){},0);this._$nav2=this._$siteNavigationElement.children(".nav2");this._$nav2Container=this._$nav2.find(".pane > .nav-section");this._$currentNav2Container=this._$nav2.find(".pane > .nav-section.current");this._$initialNav2Container=this._$nav2.find(".pane > .nav-section.current");this._$currentNav2Flyout=null;this._$nav3=this._$siteNavigationElement.children(".nav3");this._$nav3Items=this._$nav3.find("ul > li > a");this._navigationOffsetTop=this._$nav1.offset().top;this._centerMarker1(this._nav1StartIndex);};neo.jsComponents.SiteNavigation.prototype={_showNav2Item:function(a){if(a!==this._currentNav1Index){var b=this;this._$currentNav2Container.stop(true,true).fadeOut(80,function(){b._$currentNav1Container.removeClass("current");b._$currentNav2Container.removeClass("current");b._$currentNav1Container=b._$nav1Container.eq(a);b._$currentNav2Container=b._$nav2Container.eq(a);b._$currentNav1Container.addClass("current");b._$currentNav2Container.addClass("current").show();});b._centerMarker1(a);this._currentNav1Index=a;}},_hideNav2Item:function(a){var b=this;this._$nav2Container.eq(a).stop(true,true).fadeOut(80,function(){b._$currentNav2Container.stop(true,true).fadeIn(80);});},_showNav2Flyout:function(b){var c=this,a=this._getFlyoutHeight(b);if(this._$currentNav2Flyout){this._$currentNav2Flyout.stop().animate({height:0},neo.jsComponents.SiteNavigation.NAV_FLYOUT_HIDE_DURATION,"easeOutQuint",function(){c._$currentNav2Flyout=b;c._prepareFlyout(b);b.stop().animate({height:a},neo.jsComponents.SiteNavigation.NAV_FLYOUT_SHOW_DURATION,"easeInQuint",function(){c._finishFlyout(b);});});}else{this._$currentNav2Flyout=b;c._prepareFlyout(b);this._$currentNav2Flyout.animate({height:a},neo.jsComponents.SiteNavigation.NAV_FLYOUT_SHOW_DURATION,"easeInQuint",function(){c._finishFlyout(b);});}},_hideNav2Flyout:function(){var a=this;if(this._$currentNav2Flyout){this._$currentNav2Flyout.stop().animate({height:0},neo.jsComponents.SiteNavigation.NAV_FLYOUT_HIDE_DURATION,"easeOutQuint",function(){a._$nav2.find(".nav-product-select").hide();});this._$currentNav2Flyout=null;}},_prepareFlyout:function(a){a.css({height:0});a.children(".nav-wrapper").css({position:"absolute"});},_finishFlyout:function(a){a.css({height:"auto"});a.children(".nav-wrapper").css({position:"relative"});},_getFlyoutHeight:function(b){var c,a=b.children(".nav-wrapper");b.css({visibility:"hidden",height:"auto"});c=a.outerHeight();b.css({visibility:"visible",height:0});return c;},_showProductLinks:function(a){if(!a.is(":visible")){a.show("slide",{direction:"up"},150);}},_centerMarker1:function(b){var a=this._$nav1Container.eq(b),c=a.position().left+(a.outerWidth()/2);this._$nav1Marker.animate({left:c},120,"easeInOutQuint");},_startResettingNav1:function(){var a=this;this._leaveNav1Timer=window.setTimeout(function(){a._showNav2Item(a._nav1StartIndex);},neo.jsComponents.SiteNavigation.RESETTING_MAIN_NAV_DELAY);},_stopResettingNav1:function(){clearTimeout(this._leaveNav1Timer);},_setUpNav1:function(){var b=this,a=0;this._$nav1.delegate("ul > li a","mouseenter",function(c){clearTimeout(a);b._stopResettingNav1();a=window.setTimeout(function(){b._showNav2Item(b._$nav1Items.index(c.currentTarget));},neo.jsComponents.SiteNavigation.MAIN_NAV_HOVER_DELAY);}).delegate("ul > li a","mouseleave",function(c){clearTimeout(a);b._stopResettingNav1();b._startResettingNav1();});},_setUpNav2:function(){var c=this,a,b;this._$nav2.find(".nav-section > ul").each(function(){var d=$(this);d.data("$preselectedItem",d.children("li.current"));d.data("$listItems",d.children("li"));});this._$nav2.delegate(".nav-section.current > ul > li","mouseenter",function(d){clearTimeout(b);clearTimeout(a);c._stopResettingNav1();a=window.setTimeout(function(){var f=$(d.currentTarget),e=f.children(".nav-level-2");f.parent().data("$listItems").removeClass("current");f.addClass("current");if(e.height()===0){c._showNav2Flyout(e);}else{if(e.length===0){c._hideNav2Flyout();}}},250);}).delegate(".nav-section.current > ul > li","mouseleave",function(d){clearTimeout(b);clearTimeout(a);b=window.setTimeout(function(){var e=$(d.currentTarget);e.parent().data("$listItems").removeClass("current");e.parent().data("$preselectedItem").addClass("current");c._hideNav2Flyout();c._stopResettingNav1();c._startResettingNav1();},neo.jsComponents.SiteNavigation.NAV_FLYOUT_HIDE_DELAY);});},_setUpProductLinks:function(){var a=this;this._$nav2.delegate(".nav-section .nav-row:first-child .nav-product","mouseenter",function(b){a._showProductLinks($(this).parents("ul:first").find(".nav-product-select"));});this._$nav2.delegate(".nav-section .nav-row:not(:first-child) .nav-product","mouseenter",function(b){a._showProductLinks($(this).parents(".nav-row:first").find(".nav-product-select"));});},_setUpNavAccordions:function(){},load:function(){this._setUpNav1();this._setUpNav2();this._setUpProductLinks();this._setUpNavAccordions();},unload:function(){},suspend:function(){},resume:function(){}};neo.jsComponents.SiteNavigation.MARKER_HTML='
      ';neo.jsComponents.SiteNavigation.NAV_FLYOUT_SHOW_DURATION=250;neo.jsComponents.SiteNavigation.NAV_FLYOUT_HIDE_DURATION=200;neo.jsComponents.SiteNavigation.MAIN_NAV_HOVER_DELAY=150;neo.jsComponents.SiteNavigation.RESETTING_MAIN_NAV_DELAY=1000;neo.jsComponents.SiteNavigation.NAV_FLYOUT_HIDE_DELAY=1200;neo.namespace("neo.jsComponents.SiteStandby");neo.jsComponents.SiteStandby=function(b,a){this._element=b;this._id=a;};neo.jsComponents.SiteStandby.prototype={load:function(){var b=$("body"),c,a=parseInt(this._element.getAttribute("data-standby-message-delay"),10);neo.utils.CommonEventsManager.subscribe(neo.utils.CommonEventsManager.WEBSITE_RESUME,function(){window.clearTimeout(c);b.removeClass("power-saving");},this);neo.utils.CommonEventsManager.subscribe(neo.utils.CommonEventsManager.WEBSITE_STANDBY,function(){window.clearTimeout(c);c=window.setTimeout(function(){b.addClass("power-saving");},a);},this);},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.Stage");neo.jsComponents.Stage=function(a){this._$stage=$(a);this._$itemContainer=this._$stage.find(".stage-item-container");this._$stageItems=this._$stage.find(".stage-item");this._stageItemsArray=[];this._stageItems=[];this._stageCloneLast=null;this._stageCloneFirst=null;this._$currentItem=$([]);this._$nextItem=$([]);this._$navigation=this._$stage.find(".stage-pager");this._$gallery=this._$stage.find(".stage-footer .gallery");this._hasGallery=this._$gallery.length>0;this._gallery=null;this._$stageInspirationExtra=this._$stage.find(".stage-footer .stage-extras");this._slideshowIntervalDuration=parseInt(this._$stage.attr("data-slideshow-interval"),10);this._slideshowInterval=window.setInterval("",0);this._current=neo.jsComponents.Stage.BEGINNER;this._itemCount=this._$stageItems.length;this._pagingIndicators=[];this._blocker=new neo.ui.UiBlocker(this._$stage);this._suspended=false;};neo.jsComponents.Stage.STAGE_WIDTH=1600;neo.jsComponents.Stage.START_ITEM=1;neo.jsComponents.Stage.BEGINNER=-1;neo.jsComponents.Stage.ITEM_SKIP_AMOUNT=1;neo.jsComponents.Stage.ITEM_ANIMATION_DURATION=550;neo.jsComponents.Stage.ITEM_ANIMATION_ADDITION=200;neo.jsComponents.Stage.DARK_STAGE="stage-dark";neo.jsComponents.Stage.BRIGHT_STAGE="stage-bright";neo.jsComponents.Stage.prototype={load:function(){var c=this,a,b;this._blocker.block();this._$stageItems.each(function(){c._stageItemsArray.push($(this));c._stageItems.push(new neo.ui.StageItem(this));});this._$itemContainer.delegate(".product-colors ul li a","click",function(d){d.preventDefault();c._createGalleryOrShow(this.getAttribute("data-gallery-name"));});if(this._itemCount>1){this._initNavigation();this._bindEvents();}a=this._$stageItems.first().clone();b=this._$stageItems.last().clone();a.addClass("a-stage-clone");b.addClass("a-stage-clone");this._stageCloneLast=new neo.ui.StageItem(b[0]);this._stageCloneFirst=new neo.ui.StageItem(a[0]);this._$itemContainer.append(a).prepend(b);neo.componentMediators.InspirationMediator.subscribe(neo.componentMediators.InspirationMediator.STAGE_INSPIRATION_CONTENT_UPDATE,this._addInspirationExtra,this);this._$stageItems.hide();this._$itemContainer.append('
      ');this._$navigation.show();this._stageItemsArray[neo.jsComponents.Stage.START_ITEM-1].imagesLoaded(function(){c._createStage();});},unload:function(){},suspend:function(){this._suspended=true;window.clearInterval(this._slideshowInterval);},resume:function(){if(this._suspended){this._suspended=false;this._slideshow(this._slideshowIntervalDuration);}},_createStage:function(){this._$stage.removeClass("loading");this._blocker.unblock();this._createGalleryOrShow(this._$gallery.attr("data-gallery-initial"));this._slideshow(this._slideshowIntervalDuration);},_createGalleryOrShow:function(a){if(this._hasGallery){this._createGallery(a);}else{this.show(neo.jsComponents.Stage.START_ITEM);}},_initNavigation:function(){var a=$("
        "),c,b=1;for(b;b<=this._itemCount;b+=1){this._pagingIndicators.push($('
      • '+b+"
      • "));a.append(this._pagingIndicators[this._pagingIndicators.length-1]);}this._$navigation.find(".stage-pager-indicator > div").empty().append(a);},_bindEvents:function(){var a=this;this._$navigation.delegate(".stage-pager-previous","click",function(b){b.preventDefault();window.clearInterval(a._slideshowInterval);a.show(a._current-neo.jsComponents.Stage.ITEM_SKIP_AMOUNT);});this._$navigation.delegate(".stage-pager-next","click",function(b){b.preventDefault();window.clearInterval(a._slideshowInterval);a.show(a._current+neo.jsComponents.Stage.ITEM_SKIP_AMOUNT);});this._$navigation.delegate(".stage-pager-indicator ul li a","click",function(b){b.preventDefault();window.clearInterval(a._slideshowInterval);a.show(parseInt(this.rel,10));});},_slideshow:function(a){if(!isNaN(a)){if(this._itemCount>1){var b=this;window.clearInterval(this._slideshowInterval);this._slideshowInterval=window.setInterval(function(){if(b._suspended){window.clearInterval(b._slideshowInterval);}else{b.show(b._current+1);}},a+1500);}}else{neo.utils.Logger.log("No Slideshow-Interval defined for the stage");}},_toggleIndicator:function(b,a){if(this._itemCount>1){this._pagingIndicators[b-1][a?"addClass":"removeClass"]("current");}},_getOffsetForItem:function(a){return -(a)*neo.jsComponents.Stage.STAGE_WIDTH;},_setUpCurrentStage:function(d){var a=this._$stageItems.eq(this._current-1),c=a.attr("data-stage-bg"),b=a.hasClass(neo.jsComponents.Stage.DARK_STAGE)?neo.jsComponents.Stage.DARK_STAGE:(a.hasClass(neo.jsComponents.Stage.BRIGHT_STAGE)?neo.jsComponents.Stage.BRIGHT_STAGE:"");this._$stage.removeClass(neo.jsComponents.Stage.DARK_STAGE+" "+neo.jsComponents.Stage.BRIGHT_STAGE).addClass(b);this._$stage.stop(true,true).animate({backgroundColor:c},d);this._$itemContainer.find(".stage-item.current").removeClass("current");a.addClass("current");if(this._current===this._itemCount){this._$itemContainer.find(".stage-item:first").addClass("current");}else{if(this._current===1){this._$itemContainer.find(".stage-item:last").addClass("current");}}this._$itemContainer.find(".color-helper").css({backgroundColor:c}).stop(true,true).fadeIn(neo.jsComponents.Stage.ITEM_ANIMATION_DURATION,"easeOutQuart",function(){$(this).fadeOut(0);});},_handleGalleryChange:function(f){var e=this,a=new neo.ui.StageGalleryLink(f),b=a.getStageName(),d=a.getProductName(),c=a.getContentName();if(this._current!==b&&isObject(this._stageItems[b-1])){this._stageItems[b-1].showStageContents(d,c);e.show(b);}else{this._stageItems[b-1].showStageContents(d,c);}},_addInspirationExtra:function(a){this._$stageInspirationExtra.html(a.inspirationHtml);},show:function(b){if(b!==this._current){var h=this,g=this._current,c=b>this._itemCount?1:(b<1?this._itemCount:b),e=neo.jsComponents.Stage.ITEM_ANIMATION_DURATION,f="easeOutSine",a=neo.config.rtl?"margin-right":"margin-left",d={};if(g!==neo.jsComponents.Stage.BEGINNER){this._toggleIndicator(g,false);}if(this._gallery===null){this._toggleIndicator(c,true);}this._current=c;if(g===neo.jsComponents.Stage.BEGINNER){this._stageCloneLast.animateOut(function(){},0);this._stageItems[c-1].show();this._stageItems[c-1].animateIn(0);this._$itemContainer.css(a,-neo.jsComponents.Stage.STAGE_WIDTH);this._setUpCurrentStage();}else{if(b===this._itemCount+1){this._stageCloneFirst.animateOut(function(){},0);d[a]=-neo.jsComponents.Stage.STAGE_WIDTH*2;this._stageItems[g-1].animateOut(function(){h._setUpCurrentStage();h._stageItems[c-1].animateIn();h._stageCloneFirst.animateIn();h._$itemContainer.stop(true,true).animate(d,e,f,function(){h._stageItems[c-1].show();h._stageItems[g-1].hide();h._stageCloneFirst.animateOut();h._$itemContainer.css(a,-neo.jsComponents.Stage.STAGE_WIDTH);});});}else{if(b===0){d[a]=0;this._stageItems[g-1].animateOut(function(){h._setUpCurrentStage();h._stageItems[c-1].animateIn();h._stageCloneLast.animateIn();h._$itemContainer.stop(true,true).animate(d,e,f,function(){h._stageItems[c-1].show();h._stageItems[g-1].hide();h._stageCloneLast.animateOut();h._$itemContainer.css(a,-neo.jsComponents.Stage.STAGE_WIDTH);});});}else{if(c>g){d[a]=-neo.jsComponents.Stage.STAGE_WIDTH*2;this._stageItems[g-1].animateOut(function(){h._setUpCurrentStage();h._stageItems[c-1].show();h._stageItems[c-1].animateOut(function(){},0);h._stageItems[c-1].animateIn();h._$itemContainer.stop(true,true).animate(d,e,f,function(){h._stageItems[g-1].hide();h._$itemContainer.css(a,-neo.jsComponents.Stage.STAGE_WIDTH);});});}else{d[a]=-neo.jsComponents.Stage.STAGE_WIDTH;this._stageItems[g-1].animateOut(function(){h._setUpCurrentStage();h._stageItems[c-1].show();h._stageItems[c-1].animateOut(function(){},0);h._stageItems[c-1].animateIn();h._$itemContainer.stop(true,true).css(a,-neo.jsComponents.Stage.STAGE_WIDTH*2).animate(d,e,f,function(){h._stageItems[g-1].hide();h._$itemContainer.css({marginDirection:-neo.jsComponents.Stage.STAGE_WIDTH});});});}}}}}}};neo.mixin(neo.jsComponents.Stage,neo.ui.GalleryHolderMixin);neo.namespace("neo.jsComponents.Tooltip");neo.jsComponents.Tooltip=function(a){this._$tippster=$(a);this._title=a.title;this._tooltipClass=setDefaultValue(this._$tippster.attr("data-tooltip-extra-class"));this._isComplex=!isUndefined(this._$tippster.attr("data-tooltip-header"));this._isUsingExternalContent=!isUndefined(this._$tippster.attr("data-tooltip-content"));this._isButton=this._$tippster.hasClass("btn")||this._$tippster.attr("data-tooltip-buttonlike")==="true";this._isPersistent=this._$tippster.attr("data-tooltip-persistent")==="true";this._closeDelay=this._isPersistent?neo.jsComponents.Tooltip.PERSISTENCE_DELAY:0;this._orientation=setDefaultValue(this._$tippster.attr("data-tooltip-orientation"),neo.jsComponents.Tooltip.TOP);this._$tooltip=$(neo.jsComponents.Tooltip.HTML_SKELETON);this._$tooltipContent=this._$tooltip.children(".tooltip-content:first");this._tooltipCreated=false;this._repositionOnHover=true;this._closeTimeout=-1;};neo.jsComponents.Tooltip.prototype={_startClosing:function(){var a=this;this._closeTimeout=window.setTimeout(function(){a._$tooltip.stop(true,true).fadeOutCompat(150);a._$tippster.removeClass("active");},this._closeDelay);},_stopClosing:function(){clearTimeout(this._closeTimeout);},_getTooltipContent:function(){var a;if(this._isUsingExternalContent){a=this._$tippster.attr("data-tooltip-copy-content")==="yes"?$(this._$tippster.attr("data-tooltip-content")).html():$(this._$tippster.attr("data-tooltip-content")).show();}else{if(this._isComplex){a="

        "+this._$tippster.attr("data-tooltip-header")+""+this._$tippster.attr("data-tooltip-text")+"

        ";}else{a="

        "+this._title+"

        ";}}return a;},_createTooltip:function(){var a=this._orientation+" "+this._tooltipClass,d=this._$tippster.offset(),c,b;this._repositionOnHover=true;if(!this._tooltipCreated){this._$tooltipContent.append(this._getTooltipContent());if(this._isUsingExternalContent){a+=" external";}else{if(this._isComplex){a+=" complex";}}this._$tooltip.addClass(a);this._$tooltip.css({visibility:"hidden"});$("body").append(this._$tooltip);b=this._getTooltipLeft(d.left);c=this._getTooltipTop(d.top);this._$tooltip.fadeOut(0);this._$tooltip.css({left:b,top:c,visibility:"visible"});this._tooltipCreated=true;}if(this._repositionOnHover){this._$tooltip.css({top:this._getTooltipTop(d.top),left:this._getTooltipLeft(d.left)});this._repositionOnHover=false;}},_getTooltipLeft:function(d){var e,a=this._$tippster.outerWidth(),c=this._$tooltip.outerWidth(true),b;if(neo.config.rtl){b=d+a-c;e=this._isButton?b+10:b+27-(a/2);}else{e=this._isButton?d-10:d-27+(a/2);}return e;},_getTooltipTop:function(a){var c=this._$tooltip.height(),b;switch(this._orientation){case neo.jsComponents.Tooltip.TOP:b=a-c;break;case neo.jsComponents.Tooltip.BOTTOM:b=a+this._$tippster.outerHeight();break;case neo.jsComponents.Tooltip.LEFT:break;case neo.jsComponents.Tooltip.RIGHT:break;default:break;}return b;},_bindHovering:function(){var a=this;this._$tippster.hover(function(){a._createTooltip();a._stopClosing();a._$tooltip.stop(true,true).fadeInCompat(250);a._$tippster.addClass("active");},function(){a._startClosing();});this._$tooltip.hover(function(){a._stopClosing();},function(){a._startClosing();});},load:function(){this._$tippster.removeAttr("title");this._bindHovering();},unload:function(){},suspend:function(){},resume:function(){}};neo.jsComponents.Tooltip.PERSISTENCE_DELAY=400;neo.jsComponents.Tooltip.TOP="top";neo.jsComponents.Tooltip.BOTTOM="bottom";neo.jsComponents.Tooltip.LEFT="left";neo.jsComponents.Tooltip.RIGHT="right";neo.jsComponents.Tooltip.HTML_SKELETON='
        ';neo.namespace("neo.jsComponents.Tracking");neo.jsComponents.Tracking=function(a){this._$tracked=$(a);};neo.jsComponents.Tracking.prototype={_getCustomVarsArray:function(c,b){var a=[];neo.each(c,function(e,d){a[d]=e;},this);if(isFunction(shortenURL)){neo.each(b,function(e,d){a[d]=shortenURL(e);},this);}return a.length===0?"":a;},load:function(){var a=this._$tracked.is("form")?"submit":"click";this._$tracked.bind(a,$.proxy(function(){var e=this._$tracked.data("trackingAction"),f=this._$tracked.data("trackingSku"),d=this._$tracked.data("trackingVars"),b=this._$tracked.data("trackingVarsShort");neo.utils.Logger.log("neo.jsComponents.Tracking# Action:"+e+" SKU:"+f+" CustomVars:"+d+" CustomVarsShort:"+b);if(isObject(olyywa)&&isFunction(olyywa.captureLead)){try{olyywa.captureLead(e,f,this._getCustomVarsArray(d,b));}catch(c){neo.utils.Logger.log(c);}}},this));},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.Upload");neo.jsComponents.Upload=function(a){this._$view=$(a);this._$uploadInput=this._$view.find("input:file");this._$fileText=this._$view.find(".choose");};neo.jsComponents.Upload.prototype={load:function(){var a=this;this._$uploadInput.change(function(){a._$fileText.text(this.value);});},unload:function(){},suspend:function(){},resume:function(){}};neo.namespace("neo.jsComponents.VideoPlayer");neo.jsComponents.VideoPlayer=function(b,a){this._playerContainment=b;this._$playerContainment=$(b);b.id=isEmptyString(b.id)||isUndefined(b.id)||b.id===null?"video-player-"+a:b.id;};neo.jsComponents.VideoPlayer.prototype={load:function(){var a=this._playerContainment.getAttribute("data-video-url"),b=this._playerContainment.getAttribute("data-video-preview");if(isUndefined(a)||a===null||isEmptyString(a)){neo.utils.Logger.log("Video player used without an valid video-url",this._$playerContainment);}else{jwplayer(this._playerContainment).setup({flashplayer:neo.jsComponents.VideoPlayer.PLAYER_SRC,file:a,skin:neo.jsComponents.VideoPlayer.PLAYER_SKIN_SRC,width:this._$playerContainment.outerWidth(),height:this._$playerContainment.outerHeight(),image:b});}},unload:function(){},suspend:function(){},resume:function(){}};neo.jsComponents.VideoPlayer.PLAYER_SRC="http://common.olympus-europa.com/library/jwplayer/5.7/player.swf";neo.jsComponents.VideoPlayer.PLAYER_SKIN_SRC="http://common.olympus-europa.com/library/jwplayer/skins/whotube/1.0/whotube.zip";neo.namespace("neo.jsComponents.WhyFlyout");neo.jsComponents.WhyFlyout=function(a){this._$flyout=$(a);this._closeTimeout=0;};neo.jsComponents.WhyFlyout.prototype={_startClosing:function(){var a=this;this._closeTimeout=window.setTimeout(function(){a._$flyout.stop().fadeOutCompat(300,"easeInCirc");},neo.jsComponents.WhyFlyout.HIDE_DELAY);},_stopClosing:function(){clearTimeout(this._closeTimeout);},load:function(){var b=this,a;this._$flyout.prev().hover(function(){b._stopClosing();b._$flyout.fadeInCompat(neo.jsComponents.WhyFlyout.FADE_IN_DURATION,"easeInOutQuint");},function(){b._startClosing();});this._$flyout.hover(function(){b._stopClosing();},function(){b._startClosing();});},unload:function(){},suspend:function(){},resume:function(){}};neo.jsComponents.WhyFlyout.HIDE_DELAY=500;neo.jsComponents.WhyFlyout.FADE_IN_DURATION=450;neo.jsComponents.WhyFlyout.FADE_OUT_DURATION=300;neo.namespace("neo.dealerLocator");neo.dealerLocator.Dealer=function(a){this._model=a;this._marker=null;this._label=null;this._index=null;this._active=false;this._$li=null;};neo.dealerLocator.Dealer.prototype={name:function(){return this._model.name;},lat:function(){return parseFloat(this._model.latitude);},lng:function(){return parseFloat(this._model.longitude);},isPremium:function(){return this._model.classification==="preferred";},getDealerData:function(){return this._model;},getId:function(){return this._model.id;},setMarker:function(a){var b=this;this._marker=a;google.maps.event.addListener(this._marker,"click",function(c){neo.utils.Logger.log("Clicked a marker on the map. It was the dealer "+b.name());b.dispatchEvent(neo.dealerLocator.Dealer.FOCUS,{marker:b._marker});});},setLabel:function(a){this._label=a;},getMarker:function(){return this._marker;},getLabel:function(){return this._label;},setIndex:function(a){this._index=a;},getIndex:function(){return this._index;},setActiveStatus:function(a){this._active=a;},isActive:function(){return this._active;}};neo.dealerLocator.Dealer.FOCUS="dealerIsInFocus";neo.mixin(neo.dealerLocator.Dealer,neo.event.EventDispatcher);neo.namespace("neo.dealerLocator");neo.dealerLocator.DealerDetailView=function(a){this._$detail=a;this._$content=this._$detail.children(".detail-content");this._$mapWrapper=this._$detail.parent();this._wrapperWidth=this._$mapWrapper.width();this._wrapperHeight=this._$mapWrapper.height();this._detailWidth=this._getDetailWidth();this._isDetailVisible=false;this._currentDetailHtml="";this._bindEvents();};neo.dealerLocator.DealerDetailView.prototype={_bindEvents:function(){var c=this,a,b;this._$content.delegate(".route-details .get-route","click",function(d){d.preventDefault();$(this).parent().hide().next().show();}).delegate(".route-details .close","click",function(d){d.preventDefault();$(this).parent().hide().prev().show();}).delegate(".route-details .route-form","submit",function(d){d.preventDefault();b=encodeURI($(this).find("input[name=get-directions]").val());a=encodeURI(c._$content.find(".address").text().replace(/(\r\n|\n|\r)/gm," ").replace(/\s+/g," "));window.open("http://maps.google.com/maps?saddr="+b+"&daddr="+a,"_blank");});},_getDetailWidth:function(){var a;this._$detail.css({display:"block",visibility:"hidden"});a=this._$detail.outerWidth();this._$detail.css({display:"none",visibility:"visible"});return a;},getMapWidth:function(){return this._isDetailVisible?this._wrapperWidth-this._detailWidth:this._wrapperWidth;},getMapHeight:function(){return this._wrapperHeight;},updateDetail:function(a){if(a!==this._currentDetailHtml){var b=this;this._currentDetailHtml=a;this._$content.stop(true,true).fadeOut(200,function(){b._$content.html(a);}).fadeIn(350);}},show:function(){if(!this._isDetailVisible){this._$detail.stop(true,true).fadeIn(250);this._isDetailVisible=true;}},hide:function(){if(this._isDetailVisible){this._$detail.stop(true,true).fadeOut(250);this._isDetailVisible=false;}}};neo.namespace("neo.dealerLocator");neo.dealerLocator.DealerListModel=function(){this._model={};this._dealers=[];};neo.dealerLocator.DealerListModel.prototype={_createDealers:function(){var b=0,a=this.size(),c=this.getDealerDataArray();this._dealers=[];for(b,a;b0){var f=this,b=e+(d?"&init=true":"")+"&"+$.param(a.getViewportAsUrlObject())+"&categories="+c.join(",")+"&t="+(new Date()).getTime();neo.utils.Logger.log("Fetching dealer list with parameters: "+b);this._getDealerList(b);}else{this.clearFullDealerList();}},getOnlineDealerList:function(c,b){if(b.length>0){var d=this,a=c+"&categories="+b.join(",")+"&t="+(new Date()).getTime();neo.utils.Logger.log("Fetching online dealer list with parameters: "+a);this._getDealerList(a);}else{this.clearFullDealerList();}},clearFullDealerList:function(){this._model.clear();this.dispatchEvent(neo.dealerLocator.DealerLocatorService.DEALER_LIST_CLEARED);}};neo.dealerLocator.DealerLocatorService.NEW_DEALER_LIST="newDealerListAvailable";neo.dealerLocator.DealerLocatorService.DEALER_LIST_CLEARED="dealerListCleared";neo.dealerLocator.DealerLocatorService.NO_RESULT="noDealersFound";neo.mixin(neo.dealerLocator.DealerLocatorService,neo.event.EventDispatcher);neo.namespace("neo.dealerLocator");neo.dealerLocator.LocatorView=function(a){this._$container=a;this._$searchForm=this._$container.find(".search-form");this._$searchTerm=this._$searchForm.find("input[type=text]");this._$prefilledSearchTerm=this._$searchForm.find("#initialSearchValue");this._$requestForm=this._$container.find(".dealer-list-requester");this._$resultListWrapper=this._$container.find(".dealer-result-list:first");this._$results=this._$resultListWrapper.find(".tabbody ul:first");this._$dealerDetails=this._$container.find(".dealer-details");this._$selectAllFilterCheckbox=this._$container.find('.filters input[name="dealer-mass-select"]');this._$filterInputs=this._$container.find(".filters ul li input");this._isFilterHandlerActive=true;this._viewTop=this._$container.offset().top;this._blocker=new neo.ui.UiBlocker(this._$container);this._hoverTimeout=null;this._bindSearch();this._bindEvents();if(this._$selectAllFilterCheckbox.is(":checked")){this._onFilterMassSelect();}};neo.dealerLocator.LocatorView.prototype={_bindSearch:function(){var a=this;this._$searchForm.submit(function(c){var b=a._$searchTerm.val();c.preventDefault();if(!isEmptyString(b)&&b!==a._$searchTerm[0].defaultValue){a.dispatchEvent(neo.dealerLocator.LocatorView.SEARCH_SUBMIT,{searchTerm:b});}});},_bindEvents:function(){var a=this;this._$results.delegate("li.offline-dealer","click",$.proxy(this._onDealerClick,this));this._$results.delegate("li .dealer-features a","click",function(b){b.preventDefault();});this._$results.delegate("li .top","click",function(b){b.preventDefault();$("html,body").animate({scrollTop:a._viewTop-50},300,"easeInQuart");});this._$container.find(".filters").delegate('input[name="dealer-mass-select"]',"change",$.proxy(this._onFilterMassSelect,this));this._$container.find(".filters").delegate("ul li input","change",$.proxy(this._onFilterChange,this));this._$resultListWrapper.delegate(".tabcontainer .tabs a","click",$.proxy(this._onTabChange,this));},_onDealerClick:function(a){this.dispatchEvent(neo.dealerLocator.LocatorView.DEALER_FOCUS,{index:parseInt(a.currentTarget.getAttribute("data-index"),10)});},_onDealerHover:function(a){var b=this;clearTimeout(this._hoverTimeout);this._hoverTimeout=window.setTimeout(function(){b.dispatchEvent(neo.dealerLocator.LocatorView.DEALER_FOCUS,{index:parseInt(a.currentTarget.getAttribute("data-index"),10)});},neo.dealerLocator.LocatorView.HOVER_DELAY);},_onDealerLeave:function(a){clearTimeout(this._hoverTimeout);},_onFilterMassSelect:function(){var a=this._$selectAllFilterCheckbox.is(":checked");this._isFilterHandlerActive=false;this._$filterInputs.attr("checked",a).change();this._isFilterHandlerActive=true;this._onFilterChange();},_onTabChange:function(a){var b=$(a.currentTarget),c=b.parent();a.preventDefault();b.addClass("active");b.next().removeClass("active");b.prev().removeClass("active");this.dispatchEvent(b.hasClass("online-tab")?neo.dealerLocator.LocatorView.REQUEST_ONLINE:neo.dealerLocator.LocatorView.REQUEST_LOCAL,{href:a.currentTarget.href});},_onFilterChange:function(){var a;if(this._isFilterHandlerActive){this.dispatchEvent(neo.dealerLocator.LocatorView.FILTER_CHANGED,{filterList:this.getFilterList()});a=this._$filterInputs.filter(":checked").length===this._$filterInputs.length;this._$selectAllFilterCheckbox.attr("checked",a);this._$selectAllFilterCheckbox.parent("div")[a?"addClass":"removeClass"]("selected");}},setSearchTerm:function(a){this._$searchTerm.val(a);},getFilterList:function(){var a=[];this._$filterInputs.filter(":checked").each(function(){a.push(this.name);});return a;},getDealerListAction:function(){return this._$requestForm.attr("action");},getPrefilledSearch:function(){return this._$prefilledSearchTerm.val();},updateDealerResultHtml:function(a,c){var b=this;this._$resultListWrapper.fadeInCompat(350);this._$resultListWrapper.height(this._$resultListWrapper.height());this._$results.fadeOutCompat(150,function(){b._$results.html(a).fadeInCompat(200);window.setTimeout(function(){b._$resultListWrapper.show();b._$resultListWrapper.height("auto");},100);});this._$resultListWrapper.find(".tabcontainer .tabs a").removeClass("active").eq(c?1:0).addClass("active");},hideDealerResultList:function(){this._$resultListWrapper.fadeOut(150);},search:function(a){this._$searchTerm.val(a);this._$searchForm.submit();},blockView:function(){this._blocker.block();},unblockView:function(){this._blocker.unblock();},getOnlineDealerUrl:function(){return this._$resultListWrapper.find(".tabcontainer .tabs a").removeClass("active").eq(1).attr("href");},scrollToListTop:function(){var a=this._$resultListWrapper.offset().top;$("body,html").animate({scrollTop:a-20},800);}};neo.dealerLocator.LocatorView.HOVER_DELAY=700;neo.dealerLocator.LocatorView.SEARCH_SUBMIT="searchWasSubmitted";neo.dealerLocator.LocatorView.FILTER_CHANGED="aFilterChanged";neo.dealerLocator.LocatorView.DEALER_FOCUS="dealerItemFocused";neo.dealerLocator.LocatorView.REQUEST_LOCAL="requestLocalDealerlist";neo.dealerLocator.LocatorView.REQUEST_ONLINE="requestOnlineDealerlist";neo.mixin(neo.dealerLocator.LocatorView,neo.event.EventDispatcher);neo.namespace("neo.download");neo.download.AddRemoveLink=function(a){this._$link=$(a);this._controller=neo.download.DownloadController.getInstance();this._downloadItem=new neo.download.DownloadItem(this._$link.data("addAction"),this._$link.data("downloadPath"));this._bindEventHandler();this._checkStatus();};neo.download.AddRemoveLink.prototype={_bindEventHandler:function(){var a=this;this._controller.subscribe(this._controller.ELEMENTS_CHANGED,this._handleListUpdate,this);this._$link.click(function(b){b.preventDefault();if(!a._$link.hasClass("in-list")){a._controller.addItem(a._downloadItem);}});},_handleListUpdate:function(a){this._checkStatus();},_checkStatus:function(){this._$link[this._controller.isInList(this._downloadItem)?"addClass":"removeClass"]("in-list");}};neo.namespace("neo.download");neo.download.DownloadController=(function(){var a=null,b=function(){var c=this;this._model=new neo.download.DownloadModel();};b.prototype={_handleModelUpdate:function(d,c){this.dispatchEvent(this.ELEMENTS_CHANGED,{listData:d,wasAdded:c});},_handleModelAdd:function(c){this._handleModelUpdate(c,true);},_handleModelRemove:function(c){this._handleModelUpdate(c,false);},isInList:function(c){return this._model.isInList(c);},addItem:function(c){this._model.add(c,this._handleModelAdd,this);},removeItem:function(c){this._model.remove(c,this._handleModelRemove,this);},fetchList:function(c){this._model.fetchList(c,this._handleModelRemove,this);},getListData:function(){return this._model.getModelJson();}};b.prototype.ELEMENTS_CHANGED="donwloadListElementsChanged";neo.mixin(b,neo.event.EventDispatcher);return{getInstance:function(){if(a===null){a=new b();}return a;}};}());neo.namespace("neo.download");neo.download.DownloadItem=function(b,a){this.addAction=b;this.path=a;};neo.download.DownloadItem.prototype={};neo.namespace("neo.download");neo.download.DownloadModel=function(){this._cookieName=null;this._pathHash={};};neo.download.DownloadModel.prototype={_updateModel:function(a){this._model=a;this._pathHash={};this.foo="bar";neo.each(this._model,function(b){this._pathHash[b.pathName]=true;},this);},fetchList:function(a,d,b){var c=this;$.ajax({url:a,async:false,dataType:"json",success:function(e){c._updateModel(e);d.apply(b,[c._model]);},error:function(e){}});},add:function(a,d,b){var c=this;$.ajax({url:a.addAction,async:false,dataType:"json",success:function(e){c._updateModel(e);d.apply(b,[c._model]);},error:function(e){}});},remove:function(a,d,b){var c=this;$.ajax({url:a,async:false,dataType:"json",success:function(e){c._updateModel(e);d.apply(b,[c._model]);},error:function(e){}});},getModelJson:function(){return this._model;},isInList:function(a){return this._pathHash[a.path]?true:false;}};neo.download.DownloadModel.COOKIE_NAME="zip_basket";neo.namespace("neo.download");neo.download.RemoveLink=function(a){this._$link=$(a);this._bindEventHandler();};neo.download.RemoveLink.prototype={_bindEventHandler:function(){var a=this;this._$link.click(function(b){b.preventDefault();if(!a._$link.hasClass("in-list")){neo.download.DownloadController.getInstance().removeItem(this.getAttribute("data-remove-action"));}});}};neo.namespace("neo.finder");neo.finder.FeatureView=function(a){this._$view=a;this._$form=null;this._pristineHtml=this._$view.data("neo.finder.FeatureView.pristineHtml")||(function(b){a.data("neo.finder.FeatureView.pristineHtml",b);return b;}(this._$view.html()));this._initialized=false;this._triggerDelay=null;};neo.finder.FeatureView.prototype={_initialize:function(){this._$form=this._$view.find("form");if(!this._initialized&&!this._$view.hasClass("initialized")){var a=this;this._$view.addClass("initialized");this._initialized=true;neo.ComponentLoader.load(this._$view);this._$form.delegate("input","change",function(){a._handleFormUpdate();});this._$form.find(".ui-slider").remove();this._$form.find("li.slider-select").each(function(){a._createSlider(this);});}this._handleFormUpdate(true);},_createSlider:function(f){var e=this,a=$(f),b=a.find(".from:first"),d=a.find(".to:first"),c=a.find("select");c.selectToUISlider({sliderOptions:{change:function(g,h){e._updateSliderInfo(b,d,c);e._handleFormUpdate();}}});this._updateSliderInfo(b,d,c);},_handleFormUpdate:function(a){var b=this;clearTimeout(this._triggerDelay);this._triggerDelay=setTimeout(function(){b.dispatchEvent(neo.finder.FeatureView.SELECTION_CHANGED,{$featureForm:b._$form});},a?0:neo.finder.FeatureView.TRIGGER_DELAY);},_updateSliderInfo:function(a,c,b){a.text(b.eq(0).children("option:selected").text());c.text(b.eq(1).children("option:selected").text());},show:function(){this._$view.show();this._initialize();},hide:function(){this._$view.hide();},reset:function(){this._initialized=false;this._$view.removeClass("initialized");this._$view.html(this._pristineHtml);this._initialize();}};neo.mixin(neo.finder.FeatureView,neo.event.EventDispatcher);neo.finder.FeatureView.TRIGGER_DELAY=0;neo.finder.FeatureView.SELECTION_CHANGED="theFeatureSelectionChanged";neo.namespace("neo.finder");neo.finder.FinderController=(function(){var a=null,b=function(){this._initialized=false;this._finderService=new neo.finder.FinderService();this._finderService.subscribe(neo.finder.FinderService.FINDER_HTML_CHANGE,this._handleFinderHtmlChange,this);this._finderService.subscribe(neo.finder.FinderService.GUIDE_QUESTION_CHANGE,this._handleNewQuestion,this);this._finderService.subscribe(neo.finder.FinderService.NEW_RESULT,this._handleNewResult,this);this._lightbox=null;this._finderView=null;this._featureView=null;this._guidedView=null;this._resultView=null;this._openSubView=null;};b.prototype={_initializeViews:function(){if(!this._initialized){this._finderView=new neo.finder.FinderView(this._getLightbox().getFinderContent());this._finderView.subscribe(neo.finder.FinderView.PRODUCT_CHANGED,this._handleFinderProductChange,this);this._finderView.subscribe(neo.finder.FinderView.TYPE_CHANGED,this._handleFinderTypeChange,this);this._finderView.subscribe(neo.finder.FinderView.RESET,this._handleFinderReset,this);this._resultView=new neo.finder.FinderResultView(this._finderView.getResultView());this._initialized=true;}},_initializeSubViews:function(){this._featureView=new neo.finder.FeatureView(this._finderView.getFeatureView());this._featureView.subscribe(neo.finder.FeatureView.SELECTION_CHANGED,this._handleFeatureRequest,this);this._guidedView=new neo.finder.GuidedView(this._finderView.getGuidedView());this._guidedView.subscribe(neo.finder.GuidedView.ANSWERED,this._handleGuideAnswer,this);this._finderView.setType(neo.finder.FinderView.TYPE_FEATURE);},_getLightbox:function(){this._lightbox=this._lightbox===null?new neo.finder.FinderLightbox():this._lightbox;return this._lightbox;},_handleFinderProductChange:function(c){this._loadFinderByUrl(c.productUrl,c.category);},_handleFinderTypeChange:function(d){var c,e;switch(d.type){case neo.finder.FinderView.TYPE_FEATURE:c=this._featureView;e=this._guidedView;break;case neo.finder.FinderView.TYPE_GUIDED:c=this._guidedView;e=this._featureView;break;}this._resultView.empty();e.hide();c.show();this._openSubView=c;},_handleFinderReset:function(){if(this._openSubView!==null){this._openSubView.reset();}},_handleFeatureRequest:function(c){this._getLightbox().blockFinder(true);this._finderService.postFeatureForm(c.$featureForm);},_handleGuideAnswer:function(d){var e=d.questionUrl,c=d.resultUrl;if(isString(e)&&!isEmptyString(e)&&e!=="#"){this._getLightbox().blockFinder(true);this._finderService.getGuideQuestion(d.questionUrl);}if(isString(c)&&!isEmptyString(c)){this._getLightbox().blockFinder(true);this._finderService.getResultJson(d.resultUrl,d.view.isInitialQuestion);}},_handleFinderHtmlChange:function(c){this._resultView.empty();this._finderView.changeFinder(c.finderHtml,c.category);this._unblockLightbox();this._initializeSubViews();},_handleNewResult:function(d){var c=d.resultJson;this._resultView.updateResult(c.products,c.hitCount,d.initial);this._unblockLightbox();},_handleNewQuestion:function(c){this._guidedView.addQuestion(c.questionHtml);this._unblockLightbox();},_loadFinderByUrl:function(c,d){this._getLightbox().blockFinder(true);this._finderService.getFinderHtml(c,d);},_unblockLightbox:function(){if(!this._finderService.requestsPending()){this._getLightbox().blockFinder(false);}},open:function(c){this._getLightbox().open();this._initializeViews();this._finderView.setCategory(c);}};return{getInstance:function(){if(a===null){a=new b();}return a;}};}());neo.namespace("neo.finder");neo.finder.FinderLightbox=function(){this._lightbox=new neo.ui.Lightbox("product-finder-lightbox");this._$lightboxContent=null;this._blocker=null;};neo.finder.FinderLightbox.prototype={_createBody:function(){if(this._$lightboxContent===null){this._$lightboxContent=this._lightbox.change(neo.services.HandlebarsTemplateService.get("finder-lightbox-body",{}));this._blocker=new neo.ui.UiBlocker(this._$lightboxContent);}},open:function(){this._createBody();this._lightbox.open();},getFinderContent:function(){this._createBody();return this._$lightboxContent;},blockFinder:function(a){this._blocker[a?"block":"unblock"]();}};neo.namespace("neo.finder");neo.finder.FinderResultView=function(a){this._$view=a;};neo.finder.FinderResultView.prototype={_assignHeight:function(a){this._$view.css({height:a?this._$view.height():"auto"});},updateResult:function(c,b,a){this._assignHeight(true);if(b>0){this._$view.html(neo.services.HandlebarsTemplateService.get("finder-lightbox-resultlist",{count:b,products:c}));neo.ComponentLoader.load(this._$view);this._assignHeight(false);}else{this._$view.html(neo.services.HandlebarsTemplateService.get("finder-lightbox-noresult",{is_smiley:a}));this._assignHeight(false);}},empty:function(){this._$view.html("");}};neo.namespace("neo.finder");neo.finder.FinderService=function(){this._cache={};this._openRequests=0;};neo.finder.FinderService.prototype={_triggerFinderChange:function(a,b){this._openRequests-=1;this.dispatchEvent(neo.finder.FinderService.FINDER_HTML_CHANGE,{finderHtml:a,category:b});},_triggerNewQuestion:function(a){this._openRequests-=1;this.dispatchEvent(neo.finder.FinderService.GUIDE_QUESTION_CHANGE,{questionHtml:a});},_triggerNewResult:function(b,a){this._openRequests-=1;this.dispatchEvent(neo.finder.FinderService.NEW_RESULT,{resultJson:b,initial:a});},_addToCache:function(a,b){this._cache[a]=b;},requestsPending:function(){return this._openRequests>0;},getFinderHtml:function(a,b){var c=this;c._openRequests+=1;if(isUndefined(this._cache[a])){$.ajax({url:a,dataType:"html",success:function(d){c._addToCache(a,d);c._triggerFinderChange(d,b);},error:function(){}});}else{c._triggerFinderChange(this._cache[a],b);}},getGuideQuestion:function(a){var b=this;b._openRequests+=1;if(isUndefined(b._cache[a])){$.ajax({url:a,dataType:"html",success:function(c){b._addToCache(a,c);b._triggerNewQuestion(c);},error:function(){}});}else{b._triggerNewQuestion(b._cache[a]);}},getResultJson:function(b,a){var c=this;c._openRequests+=1;if(isUndefined(this._cache[b])){$.ajax({url:b,dataType:"json",success:function(d){c._addToCache(b,d);c._triggerNewResult(d,a);},error:function(){}});}else{c._triggerNewResult(this._cache[b],a);}},postFeatureForm:function(a){var b=this;b._openRequests+=1;$.ajax({url:a.attr("action"),dataType:"json",type:a.attr("method"),data:a.serialize(),success:function(c){b._triggerNewResult(c,false);},error:function(){}});}};neo.mixin(neo.finder.FinderService,neo.event.EventDispatcher);neo.finder.FinderService.FINDER_HTML_CHANGE="theFinderHtmlChanged";neo.finder.FinderService.GUIDE_QUESTION_CHANGE="aNewQuestionArrived";neo.finder.FinderService.NEW_RESULT="aNewProductResultIsAvailable";neo.namespace("neo.finder");neo.finder.FinderView=function(a){this._$container=a;this._$finder=a.find(".product-finder-header:first");this._$productTabs=a.find(".product-switcher a");this._currentFinderCategory=null;this._finderCategories={};this._bindEvents();};neo.finder.FinderView.prototype={_bindEvents:function(){var b=this,a;this._$container.delegate(".product-switcher a","click",function(c){c.preventDefault();a=$(this);if(!a.hasClass("active")){b._$productTabs.removeClass("active");a.addClass("active");b.dispatchEvent(neo.finder.FinderView.PRODUCT_CHANGED,{category:a.attr("data-product-category"),productUrl:a.attr("href")});}});this._$container.delegate(".finder-types a","click",function(c){c.preventDefault();a=$(this);a.nextAll().removeClass("active");a.prevAll().removeClass("active");a.addClass("active");b.dispatchEvent(neo.finder.FinderView.TYPE_CHANGED,{type:a.attr("data-finder-type")});});this._$container.delegate(".restart","click",function(c){c.preventDefault();b.dispatchEvent(neo.finder.FinderView.RESET);});},setCategory:function(a){this._$productTabs.filter('[data-product-category="'+a+'"]').click();},setType:function(a){this._$container.find(".finder-"+this._currentFinderCategory+' .finder-types a[data-finder-type="'+a+'"]').click();},changeFinder:function(a,b){var c;if(isUndefined(this._finderCategories[b])){c=$('
        ');this._finderCategories[b]={$view:c};c.html(a);this._$finder.append(c);}if(this._currentFinderCategory!==null){this._finderCategories[this._currentFinderCategory].$view.hide();}this._currentFinderCategory=b;this._finderCategories[b].$view.show();},getResultView:function(){return this._$container.find(".product-finder-content");},getFeatureView:function(){return this._$finder.find(".finder-"+this._currentFinderCategory+" .feature");},getGuidedView:function(){return this._$finder.find(".finder-"+this._currentFinderCategory+" .guided");}};neo.mixin(neo.finder.FinderView,neo.event.EventDispatcher);neo.finder.FinderView.TYPE_GUIDED="guided";neo.finder.FinderView.TYPE_FEATURE="feature";neo.finder.FinderView.PRODUCT_CHANGED="finderProductChanged";neo.finder.FinderView.TYPE_CHANGED="finderTypeChanged";neo.finder.FinderView.RESET="finderReset";neo.namespace("neo.finder");neo.finder.GuidedView=function(a){this._$view=a;this._initialized=false;this.isInitialQuestion=true;};neo.finder.GuidedView.prototype={_initialize:function(){if(!this._initialized){var b=this,a=$([]);this._initialized=true;if(!this._$view.hasClass("initialized")){this._publishInitialAnswer();}else{this._publishLastAnswer();}this._$view.delegate(".steps ul li a","click",function(c){c.preventDefault();a.removeClass("active");a=$(this).parent();a.addClass("active");b.isInitialQuestion=false;b._publishAnswer(this.getAttribute("data-result"),this.getAttribute("href"));});this._$view.addClass("initialized");}else{this._publishLastAnswer();}},_publishAnswer:function(a,b){this._$view.attr("data-last-result",a);this._$view.attr("data-last-question",b);this.dispatchEvent(neo.finder.GuidedView.ANSWERED,{resultUrl:a,questionUrl:b,view:this});},_publishLastAnswer:function(){this._publishAnswer(this._$view.attr("data-last-result"),this._$view.attr("data-last-question"));},_publishInitialAnswer:function(){this.isInitialQuestion=true;this._publishAnswer(this._$view.attr("data-initial-result"),this._$view.attr("data-initial-question"),true);},show:function(){this._$view.show();this._initialize();},hide:function(){this._$view.hide();},reset:function(){this._publishInitialAnswer();},addQuestion:function(a){this._$view.html(a);neo.ComponentLoader.load(this._$view);}};neo.mixin(neo.finder.GuidedView,neo.event.EventDispatcher);neo.finder.GuidedView.ANSWERED="someoneAnsweredTheQuestion";neo.namespace("neo.google");neo.google.GoogleGeocodingResult=function(b,a){this._data=isObject(b)?b[neo.google.GoogleGeocodingResult.RESULT_INDEX]:{};this._originalSearch=isString(a)?a:"";this._viewport=new neo.google.GoogleViewportAdapter(this._data.geometry.viewport);};neo.google.GoogleGeocodingResult.prototype={getOriginalAddress:function(){return this._originalSearch;},getFormattedAddress:function(){return isString(this._data.formatted_address)?this._data.formatted_address:this._originalSearch;},getViewportBoundaries:function(){return this._data.geometry.viewport;},getViewport:function(){return this._viewport;}};neo.google.GoogleGeocodingResult.RESULT_INDEX=0;neo.namespace("neo.google");neo.google.GoogleGeocodingService=function(){this._gGeo=new google.maps.Geocoder();this._preferredRegion="de";};neo.google.GoogleGeocodingService.prototype={_handleError:function(a){this.dispatchEvent(neo.google.GoogleGeocodingService.REQUEST_ERROR,{searchTerm:a});},_handleSuccess:function(b,a){this.dispatchEvent(neo.google.GoogleGeocodingService.NEW_GEOCODE,{result:new neo.google.GoogleGeocodingResult(b,a)});},_processResult:function(c,a,b){if(a==google.maps.GeocoderStatus.OK){this._handleSuccess(c,b);}else{if(a==google.maps.GeocoderStatus.ZERO_RESULTS){this._handleError(b);}else{this._handleError(b);}}},_searchByName:function(a){var b=this;this._gGeo.geocode({address:a,region:b._preferredRegion},function(d,c){b._processResult(d,c,a);});},_searchByCoords:function(b,a){var d=this,c=new google.maps.LatLng(b,a);this._gGeo.geocode({latLng:c},function(f,e){this._processResult(f,e,searchTerm);});},findByName:function(a){if(!isUndefined(a)&&!isEmptyString(a)){this._searchByName(a);}else{neo.utils.Logger.warn("neo.google.GoogleGeocodingService: No searchterm specified");}},findByCoords:function(b,a){if(isNumber(b)&&isNumber(a)){this._searchByCoords(b,a);}else{neo.utils.Logger.warn("neo.google.GoogleGeocodingService: No coordinates specified");}},setPreferredRegion:function(a){this._preferredRegion=isEmptyString(a)?this._preferredRegion:a;}};neo.google.GoogleGeocodingService.NEW_GEOCODE="gotNewGeocode";neo.google.GoogleGeocodingService.REQUEST_ERROR="requestGeocodeError";neo.mixin(neo.google.GoogleGeocodingService,neo.event.EventDispatcher);neo.namespace("neo.google");neo.google.GoogleMapAdapter=function(d,a){var c=new google.maps.LatLng(0,0),b={zoom:8,center:c,mapTypeId:google.maps.MapTypeId.ROADMAP,navigationControlOptions:{style:google.maps.NavigationControlStyle.ZOOM_PAN},streetViewControl:false};d.fadeTo(0,0);this._map=new google.maps.Map(d[0],b);this._map.fitBounds(a.bounds);this._currentWidth=0;this._currentHeight=0;d.fadeTo(200,1);this._$mapContainer=d;this._marker=[];this._label=[];this._repositionTimer=null;this._repositionDelay=neo.google.GoogleMapAdapter.REPOSITION_DELAY;this._bindListener();this._chatty=true;};neo.google.GoogleMapAdapter.prototype={_bindListener:function(){var a=this;google.maps.event.addListener(this._map,"zoom_changed",function(){a._startEventDelay();});google.maps.event.addListener(this._map,"center_changed",function(){a._startEventDelay();});},_startEventDelay:function(){var a=this;clearTimeout(this._repositionTimer);if(this._chatty){this._repositionTimer=window.setTimeout(function(){a._repositionDelay=neo.google.GoogleMapAdapter.REPOSITION_DELAY;a.dispatchEvent(neo.google.GoogleMapAdapter.MAP_POSITION_CHANGED,{viewport:new neo.google.GoogleViewportAdapter(a._map.getBounds())});},this._repositionDelay);}},updateViewport:function(a){this._repositionDelay=0;this._map.fitBounds(a.bounds);},getViewport:function(){return new neo.google.GoogleViewportAdapter(this._map.getBounds());},resize:function(b,a){if(isNumber(b)&&isNumber(a)){if(b!==this._currentWidth||a!==this._currentHeight){var c=this;this._currentWidth=b;this._currentHeight=a;this._$mapContainer.css({width:b,height:a});google.maps.event.trigger(this._map,"resize");}}else{throw new neo.CustomException("neo.google.GoogleMapAdapter: trying to resize the map with invalid width and/or height <"+b+","+a+">");}},addMarker:function(g,d,c,e){var a=new google.maps.LatLng(g,d);var f=new google.maps.MarkerImage(e?'/media-r/images/google-map-pin-active.png':'/media-r/images/google-map-pin.png',new google.maps.Size(26,38),new google.maps.Point(0,0),new google.maps.Point(0,13));var h=new google.maps.MarkerImage('/media-r/images/google-map-pin-shadow.png',new google.maps.Size(32,19),new google.maps.Point(0,0),new google.maps.Point(-10,-8));this._marker.push(new google.maps.Marker({position:a,map:this._map,icon:f,shadow:h,title:c.toString(),zindex:e?33000:1234-parseInt(c)}));var b=new neo.google.MarkerLabel({map:this._map},e);b.set("zIndex",e?3000:1234-parseInt(c));b.bindTo("position",this._marker[this._marker.length-1],"position");b.set("text",parseInt(c+1));b.set("isPremium",c===neo.google.GoogleMapAdapter.PREMIUM_DEALER_INDEX);this._label.push(b);return{marker:this._marker[this._marker.length-1],label:b};},removeMarker:function(a){a.setMap(null);},removeAllMarkers:function(){var b=0,a=this._marker.length;for(b;b0){for(var f=0,b=g.length;f0){for(var d=0,b=a.length;d ul > li","hover",function(b){if(b.type==="mouseenter"){a._showTooltip(this);}else{a._hideTooltip(this);}}).delegate(".picture-list > ul > li > a","click",function(b){}).delegate(".detail-picture-list > li > a","click",function(b){b.preventDefault();a._handleDetailClick(this,parseInt(this.getAttribute("data-index"),10));}).delegate(".tabs > a.top-rated","click",function(b){b.preventDefault();$(this).addClass("active").next().removeClass("active");a.dispatchEvent(neo.inspiration.FlickrView.ON_ORDER_TOP_RATED);}).delegate(".tabs > a.latest","click",function(b){b.preventDefault();$(this).addClass("active").prev().removeClass("active");a.dispatchEvent(neo.inspiration.FlickrView.ON_ORDER_LATEST);});this._$paging.delegate(".scroller-next.active","click",function(b){a._paginate(neo.inspiration.FlickrView.PAGING_NEXT);});this._$paging.delegate(".scroller-prev.active","click",function(b){a._paginate(neo.inspiration.FlickrView.PAGING_PREVIOUS);});},_showTooltip:function(c){var b=$(c),a=b.children("div.tooltip");if(!b.is(".active")){b.addClass("active");clearTimeout(this._tooltipHideTimer);if(this._$openedTooltip!==null){this._$openedTooltip.parent().removeClass("active");this._$openedTooltip.hide();this._$openedTooltip=a;this._$openedTooltip.show();}else{this._$openedTooltip=a;this._$openedTooltip.fadeIn(200);}}},_hideTooltip:function(c){var d=this,b=$(c);clearTimeout(this._tooltipHideTimer);var a=this._isIe7?neo.inspiration.FlickrView.TOOLTIP_HIDE_DELAY_IE7:neo.inspiration.FlickrView.TOOLTIP_HIDE_DELAY;this._tooltipHideTimer=setTimeout(function(){b.removeClass("active");if(d._$openedTooltip!==null){if(d._$view.is(":visible")){d._$openedTooltip.fadeOut(150);}else{d._$openedTooltip.hide();}d._$openedTooltip=null;}},a);},_paginate:function(a){this.dispatchEvent(neo.inspiration.FlickrView.ON_PAGING,{pagingDirection:a});},_handleDetailClick:function(b,a){var c=this._images[a];this._$listContainer.find(".detail-picture-list li > a.active").removeClass("active");$(b).addClass("active");this.updateDetail(c);},updateList:function(b,e,c,a){var h=this,d,f=neo.services.HandlebarsTemplateService.get("inspiration-picture-list",{imageCount:e,canScrollBack:false,canScrollFwd:true,images:b}),g=neo.services.HandlebarsTemplateService.get("inspiration-picture-pager",{canScrollBack:c,canScrollFwd:a,isVisible:c||a});this._images=b;this._$listContainer.html(f);this._$listContainer.find("ul > li > a").imagesLoaded(function(){h.finishLoading();});this._$paging.html(g);if(this._$detail.length>0){d=this._$listContainer.find("ul > li > a");d.eq(Math.floor(Math.random()*d.length)).click();}},updateDetail:function(b){var a=neo.services.HandlebarsTemplateService.get("inspiration-picture-detail",{image:b});this._$detail.html(a);},showErrorPage:function(){this._$view.find(".module-success").hide();this._$view.find(".module-nosuccess").show();},finishLoading:function(){this._blocker.unblock();this._$listContainer.find(".picture-list > ul, ul.detail-picture-list").fadeIn(350);this._$detail.fadeIn(350);},prepareLoading:function(){this._blocker.block();this._$listContainer.find(".picture-list > ul, ul.detail-picture-list").fadeOut(150);this._$detail.fadeOut(150);}};neo.inspiration.FlickrView.ON_PAGING="paging";neo.inspiration.FlickrView.ON_ORDER_TOP_RATED="orderingTop";neo.inspiration.FlickrView.ON_ORDER_LATEST="orderingLatest";neo.inspiration.FlickrView.PAGING_NEXT="pagingNext";neo.inspiration.FlickrView.PAGING_PREVIOUS="pagingPrevious";neo.inspiration.FlickrView.TOOLTIP_HIDE_DELAY=1500;neo.inspiration.FlickrView.TOOLTIP_HIDE_DELAY_IE7=1;neo.mixin(neo.inspiration.FlickrView,neo.event.EventDispatcher);neo.namespace("neo.inspiration");neo.inspiration.ImagesListModel=function(){this._model={};};neo.inspiration.ImagesListModel.prototype={update:function(a){if(isObject(a)){this._model=a;neo.utils.Logger.log("neo.inspiration.ImagesListModel#update added new model with "+this.getImageCount()+" images");}},getImageCount:function(){return parseInt(this._model.count,10);},getImages:function(b){var a=[];neo.each(this._model.images,function(d,c){if(c-1){if(e.select.FilterList[d].Id===a){c=true;break;}}a=c?a:"";var b=neo.services.HandlebarsTemplateService.get("jobs-country-select",e.select);this._$view.find(".filters .country-selection").html(b).find('option[value="'+a+'"]').attr("selected","selected").parent().change();},changeFilterForm:function(d){var b=neo.services.HandlebarsTemplateService.get("jobs-filter-form",d),a='option[value="'+this._$view.attr("data-select-preselection-category")+'"]',e='option[value="'+this._$view.attr("data-select-preselection-business-area")+'"]',c='option[value="'+this._$view.attr("data-select-preselection-employment-type")+'"]';this._$view.find(".filters .filter-selection").html(b).find(a+","+e+","+c).attr("selected","selected").parents("form").submit();}};neo.mixin(neo.jobs.JobsView,neo.event.EventDispatcher);neo.jobs.JobsView.COUNTRY_CHANGED="someoneChangedTheCountry";neo.jobs.JobsView.FILTER_CHANGED="someoneChangedTheFilter";neo.namespace("neo.jobs");neo.jobs.Result=function(a){this.id=a.Id;this.position=a.Title;this.businessDomain=a.BusinessArea;this.fieldOfActivity=a.Category;};neo.namespace("neo.jobs");neo.jobs.ResultView=function(a){this._$view=a;this._$resultTableBody=this._$view.find("tbody:first");this._bindEventHandler();};neo.jobs.ResultView.prototype={_bindEventHandler:function(){var c=this,b=this._$view.find("thead th a"),a;b.click(function(d){d.preventDefault();a=$(this);if(!a.hasClass("current")){b.removeClass("current");a.addClass("current").next("input").attr("checked","checked");c.dispatchEvent(neo.jobs.ResultView.SORT_CHANGED);}return false;});},resetListSort:function(){var a=this._$view.find("thead th a");a.removeClass("current");a.next("input").removeAttr("checked");},getViewParametersSerialized:function(){var a=this._$view.find("input:radio[name=result-sort]:checked");if(a.length>0){return[{name:"sortBy",value:a.val()}];}return[];},change:function(a){var b=neo.services.HandlebarsTemplateService.get("jobs-result-list",{jobs:a});this._$resultTableBody.html(b);this._$resultTableBody.children("tr:even").addClass("even");}};neo.mixin(neo.jobs.ResultView,neo.event.EventDispatcher);neo.jobs.ResultView.SORT_CHANGED="someoneWantsToSortAnotherWay";(function(c){var a=c.browser.msie&&parseInt(c.browser.version,10)<9,d=0,b=400;c.fn.fadeInCompat=function(e,g,f){if(typeof e!=="number"){f=g;g=e;e=b;}e=a?typeof e==="number"?d:e:e;return this.each(function(){c(this).fadeIn(e,g,f);});};c.fn.fadeOutCompat=function(e,g,f){if(typeof e!=="number"){f=g;g=e;e=b;}e=a?typeof e==="number"?d:e:e;return this.each(function(){c(this).fadeOut(e,g,f);});};})(jQuery);neo.namespace("neo.services");(function(){var a=function(){this._templateCache={};};a.prototype={_getTemplateSource:function(c){var b=$("#"+c);return b.html();},_compile:function(c,d){var b="";if(isUndefined(this._templateCache[c])){neo.utils.Logger.log("Compiling new template "+c);this._addToCache(c,Handlebars.compile(this._getTemplateSource(c)));}try{b=this._getFromCache(c)(d);}catch(f){neo.utils.Logger.warn("An error occured compiling template #"+c,f);}return b;},_addToCache:function(b,c){this._templateCache[b]=c;},_getFromCache:function(b){return this._templateCache[b];},get:function(b,c){if(!isString(b)){throw new neo.CustomException("Missing template name.");}return this._compile(b,setDefaultValue(c,{}));}};neo.services.HandlebarsTemplateService=new a();}());neo.namespace("neo.ui.CollapsibleFeatureList");neo.ui.CollapsibleFeatureList=function(a){this._$container=a;this._$extended=this._$container.find(".feature-list-extended");this._$trigger=this._$container.find(".feature-list-trigger ");this._extendedHeight=null;this._extendedVisible=false;this._bindToggle();};neo.ui.CollapsibleFeatureList.prototype={_bindToggle:function(){var a=this;this._$trigger.click(function(b){b.preventDefault();a.toggle();});},_getExtendedHeight:function(){return this._extendedHeight!==null?this._extendedHeight:this._$extended.children("ul:first").outerHeight(true)+7;},_animateTo:function(a){var b=this;this._$extended.stop(true,true).animate({height:a},200,a>0?"easeInOutQuint":"easeInQuint",function(){b._$trigger.toggleClass("active");});},toggle:function(){if(this._extendedVisible){this._animateTo(0);}else{this._animateTo(this._getExtendedHeight());}this._extendedVisible=!this._extendedVisible;}};neo.namespace("neo.ui");neo.ui.FancyFormsSelect=function(a){this._select=a;this._$select=$(a);this._fancySelect();};neo.ui.FancyFormsSelect.prototype={_fancySelect:function(){var b=this._$select,d=$('
        '+b.find("option:selected").html()+'
        '),c=d.children(".fs-title"),a=d.find(".drop .arrow-16");b.before(d);d.prepend(b);b.css({width:d.outerWidth()}).change(function(){c.html(b.find("option:selected").html());});},x_fancySelect:function(){var e=[],m=this,k=false,j,f=this._$select,p,r=this._select.value,d=this._select.options.length,o,h,g,n,b,c,s,a,q;this._$select.after(function(){return'
        '+$(this).find("option:selected").html()+'
          ';});o=this._$select.next(".custom_select");h=o.children("ul.erg");n=o.children(".fs-title");for(j=0;j"+e[e.length-1]+"");}b=o.width();p=o.find(".arrow-16");h.css({minWidth:b});g=h.children();o.click(function(){h.toggle("slide",{direction:"up"},100);k=!k;o.toggleClass("opened");p.toggleClass("up");if(k){window.setTimeout(function(){$("body").bind("click.fancyformselect",function(i){c=$(i.target);c=c.hasClass("custom_select")?c:c.parents(".custom_select");if(c.length===0||(c.length>0&&c[0]!==o[0])){o.click();}});},0);}else{$("body").unbind("click.fancyformselect");}});h.delegate("li","click",function(){var i=parseInt(this.getAttribute("data-index"),10),l=$(this);if(l.hasClass("disabled")){}else{neo.utils.Logger.log("selected item #"+i+": value="+m._select.options[i].value);f.val(m._select.options[i].value);f.trigger("change");n.text(l.text());g.removeClass("current");l.addClass("current");b=o.width();h.css({minWidth:b});}});neo.ComponentLoader.load(h);}};neo.namespace("neo.ui");neo.ui.Gallery=function(a,b){if(!isString(b)){throw new neo.CustomException("A stage gallery can't be created without a gallery name!");}this.name=b;this._$gallery=a;var c=this._$gallery.attr("class").match(/contains-products-\d+/);this._$scrollable=this._$gallery.find(".gallery-thumbnails > ul[data-gallery-name="+b+"]");if(this._$scrollable.length===0){throw new neo.CustomException("Gallery can't be created for name "+b+'. There is no
            ...
          ');}else{if(this._$scrollable.length>1){throw new neo.CustomException("Gallery can't be created for name "+b+'. There is more than one
            ...
          ');}}this._$scrollable.show();this._$items=this._$scrollable.find("li a");this._$selectedItem=$([]);this._itemCount=this._$items.length;if(c!==null&&isString(c[0])){this._$gallery.removeClass(c[0]);}this._$gallery.addClass("contains-products-"+this._itemCount);this._itemWidth=this._$items.eq(0).parent().outerWidth();this._$next=this._$gallery.find(".product-selector-controls a.next");this._$prev=this._$gallery.find(".product-selector-controls a.previous");this._scrollIndex=null;this._bindEvents();};neo.ui.Gallery.IMAGES_VISIBLE=4;neo.ui.Gallery.prototype={_bindEvents:function(){var a=this;this._$gallery.find(".product-selector-controls ").show();if(this._itemCount>neo.ui.Gallery.IMAGES_VISIBLE){this._$next.show();this._$prev.show();this._$next.click(function(b){b.preventDefault();a.show(a._scrollIndex+1);});this._$prev.click(function(b){b.preventDefault();a.show(a._scrollIndex-1);});}else{this._$next.hide();this._$prev.hide();}this._$gallery.delegate(".gallery-thumbnails ul li[class!=current] a","click",function(b){b.preventDefault();a._select($(this));}).delegate(".gallery-thumbnails ul li[class=current] a","click",function(b){b.preventDefault();});},_select:function(a){this._setCurrentItem(a);this.dispatchEvent(neo.ui.Gallery.IMAGE_SELECTED,this._$selectedItem);},_setCurrentItem:function(a){this._$selectedItem.parent().removeClass("current");a.parent().addClass("current");this._$selectedItem=a;},_setScrollIndex:function(a){this._scrollIndex=a;if(this._scrollIndex===0){this._$prev.addClass("disabled");}else{this._$prev.removeClass("disabled");}if(this._scrollIndex>=this._itemCount-neo.ui.Gallery.IMAGES_VISIBLE){this._$next.addClass("disabled");}else{this._$next.removeClass("disabled");}},show:function(b){if(isNumber(b)&&b<=this._itemCount-neo.ui.Gallery.IMAGES_VISIBLE&&b>=0){var a=neo.config.rtl?"margin-right":"margin-left",c={};this._setScrollIndex(b);c[a]=-b*this._itemWidth;this._$scrollable.stop(true,true).animate(c,200,"easeOutQuart");}else{}},select:function(a){this.show(a);this._$items.eq(a).click();},destroy:function(){this._$scrollable.hide();this._$next.unbind("click");this._$prev.unbind("click");this._$gallery.undelegate(".gallery-thumbnails ul li[class!=current] a","click").undelegate(".gallery-thumbnails ul li[class=current] a","click");this._setCurrentItem($([]));}};neo.ui.Gallery.IMAGE_SELECTED="thumbnailWasSelected";neo.ui.Gallery.COLOR_SELECTED="colorWasSelected";neo.mixin(neo.ui.Gallery,neo.event.EventDispatcher);neo.namespace("neo.ui.Lightbox");neo.ui.Lightbox=function(b,a){var c=this;this._open=false;this._contentClass=setDefaultValue(b,"");this._isClosable=setDefaultValue(a,true);this._$lightbox=$(neo.ui.Lightbox.HTML_SKELETON);this._$content=this._$lightbox.find(".dialog-content > div");this._documentBody=$("body");this._$html=$("html");if(!isEmptyString(this._contentClass)){this._$content.addClass(this._contentClass);}if(!this._isClosable){this._$lightbox.find(".dialog").removeClass("is-closable");}this._$lightbox.delegate(".dialog-close","click",function(){c.close();});this._manager=neo.ui.LightboxManager.getInstance();this._manager.registerLightbox(this);};neo.ui.Lightbox.prototype={_showDocumentScrollbars:function(){if(!this._manager.isLightboxOpened()){$("html,body").removeAttr("style");this._documentBody.css({marginRight:0});this._$currentScrollTarget.scrollTop(this._currentScroll);}},_hideDocumentScrollbars:function(){var d=this._$html.scrollTop(),c=this._documentBody.scrollTop(),b=d>0?this._$html:this._documentBody,f=d>0?d:c,a=this._documentBody.width(),e;$("html,body").css({overflow:"hidden"});e=this._documentBody.width();this._documentBody.css({marginRight:(e-a)});b.scrollTop(f);this._currentScroll=f;this._$currentScrollTarget=b;},show:function(){this._$lightbox.show();},hide:function(){this._$lightbox.hide();},open:function(){if(!this.isOpened()){var a=this;this._open=true;this._$lightbox.css({visibility:"hidden"});$("body").append(this._$lightbox);this._$lightbox.fadeOut(0,function(){a._$lightbox.css({visibility:"visible"});a._hideDocumentScrollbars();a._$lightbox.fadeInCompat(300,function(){neo.ComponentLoader.load(a._$content);});a.dispatchEvent(neo.ui.Lightbox.OPEN);$("body").trigger("neo.ui.Lightbox.open",a);});}},close:function(){if(this.isOpened()){var a=this;this._open=false;this._$lightbox.fadeOutCompat(150,function(){a._$lightbox.detach();a.dispatchEvent(neo.ui.Lightbox.CLOSE);$("body").trigger("neo.ui.Lightbox.close",a);a._showDocumentScrollbars();});}},change:function(a){this._$content.empty().prepend(a).append('');return this._$content;},isOpened:function(){return this._open;}};neo.ui.Lightbox.CLOSE="uiClosed";neo.ui.Lightbox.OPEN="uiOpened";neo.ui.Lightbox.HTML_SKELETON='
          ';neo.mixin(neo.ui.Lightbox,neo.event.EventDispatcher);neo.namespace("neo.ui.LightboxGallery");neo.ui.LightboxGallery=function(a){var b=neo.services.HandlebarsTemplateService.get("lightbox-gallery",{});this._lightbox=new neo.ui.Lightbox("dialog-gallery");this._data=isObject(a)&&!isUndefined(a.length)?a:[];this._lightbox.subscribe(neo.ui.Lightbox.CLOSE,this._handleLightboxClose,this);this._$gallery=this._lightbox.change(b);this._$fullSize=this._$gallery.find(".full-size");this._$thumbnails=this._$gallery.find(".thumbnail-list");this._$title=this._$gallery.find(".description .title");this._$description=this._$gallery.find(".description .info");this._$download=this._$gallery.find(".description .download");this._$thumbnails.append(this._getThumbnailList());this._bindEventHandler();};neo.ui.LightboxGallery.prototype={_bindEventHandler:function(){var a=this;this._$thumbnails.delegate(".highlight","click",function(b){b.preventDefault();a.show(this.getAttribute("data-index"));return false;});},_handleLightboxClose:function(){this._$fullSize.stop(true).fadeTo(0,0);},_getThumbnailList:function(){var b=0,a=this._data.length,c="";for(b;b
          ';}return"
            "+c+"
          ";},_renderDownloadBox:function(c,b){if(isString(c)&&isString(b)){var a=neo.services.HandlebarsTemplateService.get("lightbox-gallery-download-links",{action:c,path:b});this._$download.html(a).show();neo.ComponentLoader.load(this._$download);}else{this._$download.empty().hide();}},show:function(a,b){this._lightbox.open();this._scroller=this._scroller||new neo.ui.ScrollContainer(this._$gallery.find(".thumbnails"));if(!isUndefined(this._data[a])){var d=this,c;if(setDefaultValue(b,false)){this._scroller.show(a);}this._$thumbnails.find(".current").removeClass("current");this._$thumbnails.find("li:eq("+a+")").addClass("current");this._$fullSize.stop(true).fadeTo(100,0,function(){c=window.setTimeout(function(){d._$fullSize.parent().addClass("spinning");},500);d._$fullSize.empty().append(' '+d._data[a].large+' ');d._$fullSize.imagesLoaded(function(e){d._$fullSize.fadeTo(300,1);d._$fullSize.parent().removeClass("spinning");window.clearTimeout(c);});d._$title.text(d._data[a].title);d._$description.text(d._data[a].description);d._renderDownloadBox(d._data[a].downloadAddAction,d._data[a].downloadPath);});}}};neo.ui.LightboxGallery.FIRST_SELECTED=0;neo.namespace("neo.ui.LightboxManager");neo.ui.LightboxManager=(function(){var b=null,a=function(){var c=this;this._lightboxes=[];this._opened=[];this._hidden=[];$("body").bind("neo.ui.Lightbox.open",function(d,e){c._handleLightboxOpen(e);});$("body").bind("neo.ui.Lightbox.close",function(d,e){c._handleLightboxClose(e);});};a.prototype={_addOpened:function(c){this._opened.push(c);},_removeOpened:function(c){neo.each(this._opened,function(e,d){if(e===c){this._opened.splice(d,1);return false;}},this);},_hideOpenedLightboxes:function(){neo.each(this._opened,function(c){c.hide();},this);},_showHiddenLightbox:function(){neo.each(this._opened,function(c){c.show();return false;});},_handleLightboxClose:function(c){this._removeOpened(c);this._showHiddenLightbox();},_handleLightboxOpen:function(c){this._hideOpenedLightboxes();this._addOpened(c);},registerLightbox:function(c){this._lightboxes.push(c);},isLightboxOpened:function(){return this._opened.length>0;}};return{getInstance:function(){if(b===null){b=new a();}return b;}};}());neo.namespace("neo.ui");neo.ui.Pagination=function(a){this._$container=isJquery(a)?a:$([]);this._$from=null;this._$to=null;this._$firstJumper=this._createJumper();this._$lastJumper=this._createJumper();this._$links=null;this._$linksInTheMiddle=null;this._$next=null;this._$prev=null;this._isLimited=false;this._alwaysVisible=neo.ui.Pagination.MINIFICATION_THRESHOLD-2;this._length=0;this._current=0;this._max=0;this._count=0;this._bindEvents();};neo.ui.Pagination.prototype={_bindEvents:function(){var a=this;this._$container.delegate(".paging-link.inactive","click",function(b){b.preventDefault();a._activate(parseInt(this.getAttribute("data-index"),10)-1,true);});this._$container.delegate(".paging-link.active","click",function(b){b.preventDefault();});this._$container.delegate(".next","click",function(b){b.preventDefault();a._activate(a._current+1,true);});this._$container.delegate(".prev","click",function(b){b.preventDefault();a._activate(a._current-1,true);});},_initializePagination:function(){this._$links=this._$container.find(".paging-link");this._$from=this._$container.find(".from");this._$to=this._$container.find(".to");this._$linksInTheMiddle=this._$links.slice(1,this._length-1);this._$next=this._$container.find(".next");this._$prev=this._$container.find(".prev");this._activate(0,false);},_createJumper:function(){return $('');},_activate:function(b,a){if(this._$links&&b>=0&&b0&&(this._current+1)>(this._alwaysVisible)){this._$firstJumper.show();}if(this._current<(this._length-1)&&(this._current)<(this._length-this._alwaysVisible)){this._$lastJumper.show();}if(!this._$firstJumper.is(":visible")){this._$linksInTheMiddle.slice(0,this._alwaysVisible+1).show();}else{if(!this._$lastJumper.is(":visible")){this._$linksInTheMiddle.slice(-(this._alwaysVisible+1)).show();}else{if((this._current)===(this._alwaysVisible)){this._$firstJumper.hide();this._$linksInTheMiddle.slice(0,this._current+1).show();}else{if((this._current+1)===(this._length-this._alwaysVisible)){this._$lastJumper.hide();this._$linksInTheMiddle.slice(-(this._alwaysVisible+1)).show();}else{b=Math.round(c/2);a=c-b;this._$linksInTheMiddle.slice(this._current-1-b,this._current+a).show();}}}}}},build:function(g,b,f){var e=0,a=Math.ceil(g/b),c=[],d=a>(neo.ui.Pagination.MINIFICATION_THRESHOLD+2);this._isLimited=d;this._max=b;this._count=g;a=a<1?1:a;this._length=a;for(e;e1,count:g,max:b,start_image:1,end_image:17}));if(this._isLimited){this._$container.find("a[data-index=1]").after(this._$firstJumper);this._$container.find("a[data-index="+this._length+"]").before(this._$lastJumper);}this._initializePagination();},serializeArray:function(b,a){return[{name:b,value:this._current},{name:a,value:this._max}];}};neo.ui.Pagination.PAGINATE_NOW="userWantsAnotherPage";neo.ui.Pagination.MINIFICATION_THRESHOLD=5;neo.mixin(neo.ui.Pagination,neo.event.EventDispatcher);neo.namespace("neo.ui.ScrollContainer");neo.ui.ScrollContainer=function(c,b){this._$wrapper=c;this._$scrollable=isString(b)?this._$wrapper.find("ul#"+b):this._$wrapper.find("ul:first");if(this._$scrollable.length===0){neo.utils.Logger.warn("Possible wrong usage of no.ui.ScrollContainer. No HTML-List found to scroll");}this._$scrollable.show();this._$items=this._$scrollable.children("li");this._$next=this._$wrapper.find(".scroller-next");this._$prev=this._$wrapper.find(".scroller-prev");this._itemCount=this._$items.length;this._$next.addClass("unneeded");this._$prev.addClass("unneeded");if(this._itemCount>1){this._itemWidth=this._$items.eq(0).outerWidth();this._itemOuterWidth=this._$items.eq(1).outerWidth(true);this._itemsVisible=Math.max(Math.floor(this._$scrollable.parent().width()/this._itemWidth),1);this._maxIndex=this._itemCount-this._itemsVisible;this._scrollIndex=0;var a=this._detectCurrentSelectedItemIndex();if(a>-1){this._scrollIndex=a>this._maxIndex?this._maxIndex:a;}this._bindEvents();this.show(this._scrollIndex);}};neo.ui.ScrollContainer.prototype={_bindEvents:function(){var a=this;if(this._itemCount>this._itemsVisible){this._$next.removeClass("unneeded");this._$prev.removeClass("unneeded");this._$next.show().click(function(b){b.preventDefault();if(!a._$next.hasClass("inactive")){a.show(a._scrollIndex+1);}});this._$prev.show().click(function(b){b.preventDefault();if(!a._$prev.hasClass("inactive")){a.show(a._scrollIndex-1);}});}},_setScrollIndex:function(a){this._scrollIndex=a;},_detectCurrentSelectedItemIndex:function(){for(var a=0;athis._maxIndex?this._maxIndex:c<0?0:c;var b=c===this._maxIndex,e=c===0,a,d;if(c<=this._maxIndex&&c>=0){a=neo.config.rtl?"margin-right":"margin-left";d={};this._setScrollIndex(c);d[a]=-c*this._itemOuterWidth;this._$scrollable.stop(true,true).animate(d,200,"easeOutQuart");}if(b){this._$next.addClass("inactive");this._$prev.removeClass("inactive");}else{if(e){this._$prev.addClass("inactive");this._$next.removeClass("inactive");}else{this._$next.removeClass("inactive");this._$prev.removeClass("inactive");}}}},destroy:function(){this._$scrollable.hide();this._$next.unbind("click");this._$prev.unbind("click");}};neo.namespace("neo.ui");neo.ui.SimplePager=function(a){this._page=a;this._offset=0;this._itemCount=0;};neo.ui.SimplePager.prototype={_log:function(){neo.utils.Logger.log("current Paging: "+(this._offset+1)+"/"+this.sections());},setItemCount:function(a){this._itemCount=a;},offset:function(){this._log();return this._offset;},next:function(){if(this.hasMore()){this._offset+=1;}else{this._offset=this.sections()-1;}},previous:function(){if(this.hasLess()){this._offset-=1;}},hasMore:function(){return this._itemCount>(this._offset+1)*this._page;},hasLess:function(){return this._offset>0;},sections:function(){return Math.ceil(this._itemCount/this._page);}};neo.namespace("neo.ui.StageGalleryLink");neo.ui.StageGalleryLink=function(a){this._$link=$(a);this._stageRef=null;this._productName=null;this._contentName=null;};neo.ui.StageGalleryLink.prototype={getStageName:function(){var a=this;return this._stageRef?this._stageRef:(function(){a._stageRef=parseInt(a._$link.attr("data-stage-ref"));return a._stageRef;}());},getProductName:function(){var a=this;return this._productName?this._productName:(function(){a._productName=a._$link.attr("data-stage-product-name");return a._productName;}());},getContentName:function(){var a=this;return this._contentName?this._contentName:(function(){a._contentName=a._$link.attr("data-stage-content-name");return a._contentName;}());}};neo.namespace("neo.ui.StageItem");neo.ui.StageItem=function(a){var b=this;this._$item=$(a);this._$shadow=this._$item.find(".stage-shadow");this._$productImages=this._$item.find(".stage-product");this._$productContents=this._$item.find(".stage-content");this._hasAnimatedItems=this._$shadow.length>0||this._$productImages.length>0||this._$productContents.length>0;this._productImages={};this._productContents={};this._$productImages.each(function(){b._productImages[this.getAttribute("data-stage-product-name")]=$(this);});this._$productContents.each(function(){b._productContents[this.getAttribute("data-stage-content-name")]=$(this);});this.animateOut();window.setTimeout(function(){b._$item.css({visibility:"visible"});},neo.ui.StageItem.SWIPE_IN_OUT_ANIMATION_DURATION);};neo.ui.StageItem.SWIPE_IN_OUT_ANIMATION_DURATION=650;neo.ui.StageItem.SWIPE_IN_ANIMATION_DURATION=850;neo.ui.StageItem.STAGE_HEIGHT=350;neo.ui.StageItem.prototype={showStageContents:function(a,b){if(isObject(this._productImages[a])&&this._productImages[a].is(":hidden")){this._$productImages.hide();this._productImages[a].stop(true,true).fadeIn(350);}if(isObject(this._productContents[b])&&this._productContents[b].is(":hidden")){this._$productContents.hide();this._productContents[b].stop(true,true).fadeIn(0);}},show:function(){this._$item.show();},hide:function(){this._$item.hide();},_animationIn:function(a,f,d,b,e){var c={};c[f]=d;a.delay(b).animate(c,e,"easeOutQuint");},_animationOut:function(a,f,d,e,g){var c={},b={};c[f]=d;b[f]=d*-1;a.animate(c,e,"easeInQuart");if(g){a.animate(b,0);}},animateIn:function(a){a=setDefaultValue(a,neo.ui.StageItem.SWIPE_IN_ANIMATION_DURATION);this._animationIn(this._$shadow,"marginBottom",0,400,a);this._animationIn(this._$productImages,"marginBottom",0,250,a);this._animationIn(this._$productContents,"marginTop",0,0,a);},animateOut:function(d,b){var a=setDefaultValue(d,function(){}),c=this,b=setDefaultValue(b,neo.ui.StageItem.SWIPE_IN_OUT_ANIMATION_DURATION);if(this._hasAnimatedItems){this._animationOut(this._$shadow,"marginBottom",-this._$shadow.height(),b);this._animationOut(this._$productImages,"marginBottom",neo.ui.StageItem.STAGE_HEIGHT,b);this._animationOut(this._$productContents,"marginTop",neo.ui.StageItem.STAGE_HEIGHT,b,true);window.setTimeout(function(){a.call();},b);}else{a.call();}}};neo.namespace("neo.ui");neo.ui.UiBlocker=function(a){this._$item=$(a);this._$blocker=null;this._blocking=false;this._delay=0;};neo.ui.UiBlocker.prototype={_getBlocker:function(){var a=this;this._$blocker=this._$blocker?this._$blocker:(function(){var b=$(' ');a._$item.append(b);return b;})();return this._$blocker;},block:function(a){if(!this._blocking){var b=this;this._blocking=true;window.clearTimeout(this._delay);this._getBlocker().stop(true,true).fadeTo(0,0).show();this._delay=window.setTimeout(function(){b._getBlocker().fadeTo(150,1);},setDefaultValue(a,1500));}},unblock:function(a){if(this._blocking){var b=this;this._blocking=false;window.clearTimeout(this._delay);this._getBlocker().stop().fadeTo(setDefaultValue(a,150),0,function(){b._getBlocker().hide();});}}};(function(){neo.namespace("utils");var a=function(){this._bindEvents();};a.prototype={DOCUMENT_SCROLL:"documentScrolled",COMPONENTS_LOADED:"javascriptComponentsLoaded",DOM_CHANGED:"theDomChanged",WEBSITE_STANDBY:"theWebsiteIsInactiveNow",WEBSITE_RESUME:"theWebsiteIsActiveAgain",_bindEvents:function(){var c=this,b=$(window);neo.ComponentLoader.subscribe(neo.ComponentLoader.COMPONENTS_LOADED,function(){this.dispatchEvent(this.COMPONENTS_LOADED);},this);$(function(){b.scroll(function(){c._dispatchCurrentScroll(b);});c._dispatchCurrentScroll(b);c._setupPowersaver();});},_dispatchCurrentScroll:function(c){var b=c.scrollTop();this.dispatchEvent(this.DOCUMENT_SCROLL,{scrollTop:b,visibleBottom:b+c.height()});},_setupPowersaver:function(){var f=this,e=true,d=document.activeElement,c=function(){if(!e){e=true;f._dispatchPowerState(false);}},b=function(){if(d!==document.activeElement){d=document.activeElement;return;}if(e){e=false;f._dispatchPowerState(true);}};if($.browser.msie){document.onfocusout=function(){b();};document.onfocusin=function(){c();};}else{window.onblur=function(){b();};window.onfocus=function(){c();};}},_dispatchPowerState:function(b){this.dispatchEvent(b?this.WEBSITE_STANDBY:this.WEBSITE_RESUME);}};neo.mixin(a,neo.event.EventDispatcher);neo.utils.CommonEventsManager=new a();}());(function(){var a=function(){var f=["log","debug","info","warn","error","assert","dir","dirxml","group","groupEnd","time","timeEnd","count","trace","profile","profileEnd"],c=neo.config.DEBUG,h=this;var e=function(i){var j=i?b:function(){};for(var k in f){(function(l){h[l]=function(){var n;try{n=setDefaultValue(arguments.callee.caller.displayName,"");}catch(p){n="";}finally{var o=[l,n];for(var m=0;m>");}else{console.log("There is no console-method called <<"+o+">>");}}};var b=function(){};if(!window.console){window.console={};for(var d=0;d a > span').first(); var targetLanguagesElement = $('div.header li.select-language div.languages').first(); if (targetCountryNameElement.length > 0) { $.ajax({ url: '/js/countries.js', dataType: 'jsonp', jsonpCallback: 'countryList', success: function (data) { var countriesMeaCount = data.countries_mea.length; var searchPattern, countryNamesArray, languagesArray; for (var i = 0; i < countriesMeaCount; i++) { searchPattern = new RegExp(countryCode + '.', "ig"); if (data.countries_mea[i].url.length > 0 && searchPattern.test(data.countries_mea[i].url)) { countryNamesArray = data.countries_mea[i].country.split('|'); switch ($('meta[name="language"]').attr('content')) { case 'en': targetCountryNameElement.text(countryNamesArray[0]); break; case 'fr': targetCountryNameElement.text(countryNamesArray[1]); break; case 'ru': targetCountryNameElement.text(countryNamesArray[1]); break; case 'ar': targetCountryNameElement.text(countryNamesArray[countryNamesArray.length - 1]); break; }/* if (data.countries_mea[i].languages !== undefined) { targetLanguagesElement.find('li').css('display', 'none'); languagesArray = data.countries_mea[i].languages.split('|'); for (var j = 0; j < languagesArray.length; j++) { targetLanguagesElement.find('li.' + languagesArray[j]).css('display', 'block'); } }*/ break; } } } }); } } neo.jsComponents.Flyout.prototype._getHeight = function () { if (this._$flyout.find('div#countrySelectorContent').length > 0 && this._$flyout.find('div#countrySelectorContent ul').length === 0) { $.ajax({ url: '/js/countries.js', dataType: 'jsonp', jsonpCallback: 'countryList', success: function (data) { data.render_content(data, 'h4'); } }); } else { if (this._height === 0) { this._$flyout.css({ height : "auto", visibility : "hidden" }); this._height = this._$flyout.height(); this._$flyout.css({ height : 0, visibility : "visible" }); } return this._height; } }; /* end modification for country selector layer */