var alphabet=["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"];$(document).ready(function(){activateMakeButtons();});function activateMakeButtons(){$("#makesModelsSearch").click(function(){openPopularMakesPanel();});$("#showPopular").click(function(){openPopularMakesPanel();});$("#showAllMakes").click(function(){openAToZMakesPanel();});$("#scrollLeft").click(function(){scrollAToZ(-1);});$("#scrollRight").click(function(){scrollAToZ(+1);});}function openPopularMakesPanel(){if(!popularMakesUpToDate){loadPopularMakesDimVals();}else{highlightPopularMakesPanelButtons();}}function loadPopularMakesDimVals(){executeAjaxRequest(getCurrentDimensionRefinementsUrl("popularMakes"),"json",function(E){closeOpenModelsOverlay();highlightPopularMakesPanelButtons();updateTotalAdverts(E);makeDimVals=E.refinements.Make;if(makeDimVals){var B="";var G=Math.floor(makeDimVals.length/3);var H=makeDimVals.length%3;for(var F=0;F<makeDimVals.length;F++){var D=F%3;var A=Math.floor(F/3);var C=(D*G)+A+Math.min(D,H);B+=getMakeHtml(makeDimVals[C],true,A,D);}$("#popularMakes").html(B);truncatemakeText();activateMakeModelAnchors();}else{showNoRemainingRefinementsMessage();}aToZMakesUpToDate=false;popularMakesUpToDate=true;});}function highlightPopularMakesPanelButtons(){$("#searchAreaDetail > div:not(#makesModels)").hide();$("#makesModels").show();$("#allMakes").hide();$("#popularMakes").show();$("#makesModelsSearch").addClass("selected");$("#searchDimensionArea a:not(#makesModelsSearch)").removeClass("selected");$("#showAllMakes").removeClass("selectedTab");$("#showPopular").addClass("selectedTab");}function getMakeHtml(H,D,F,B){var E;var C;var G;var I;if(D){E=H.id+"PopularContainer";C=removeSpaces(H.name)+"PopularMake";G=removeSpaces(H.name)+"PopularModelsContainer";I=removeSpaces(H.name)+"PopularModelCount";}else{E=H.id+"AToZContainer";C=removeSpaces(H.name)+"AToZMake";G=removeSpaces(H.name)+"AToZModelsContainer";I=removeSpaces(H.name)+"AToZModelCount";}var A="<div id='"+E+"' class='makes' name='"+F+"-"+B+"'><a title='Click here to view all "+H.name+" models' href='#' onclick='javascript:return false;' name='"+H.id+"' id='"+C+"' class='";if(H.selected||H.selectedModelsDimValIds.length>0){A+="makeSelected";}else{A+="modelsOverlayHidden";}A+="'>"+H.name+"</a>"+"<span>("+formatNumber(H.count)+")</span>"+"<a id='"+I+"' href='#' onclick='javascript:return false;' class='modelsAvailable";if(H.selected||H.selectedModelsDimValIds.length>0){A+=" selectedModelsText";}A+="'>"+getModelsLinkText(H)+"</a></div>";return A;}function activateMakeModelAnchors(){$("div.makes").find("a:first").unbind("click");$("div.makes").find("a:first").toggle(function(){closeOpenModelsOverlay();var C=$(this);if(!C.hasClass("makeSelected")){C.attr("class","modelsOverlayVisible");}var D=C.parent("div.makes");var A=C.attr("name");var B=getMakeDimVal(A);getModels(B,D);},function(){var A=$(this);var C=A.parents("div.makes");C.removeClass("activeMake");var B=$("#modelsOverlayContainer div.modelsContainer");B.hide();if(!A.hasClass("makeSelected")){A.attr("class","modelsOverlayHidden");}$(document).unbind("click",clickOutsideOfModelsOverlay);});$("a.modelsAvailable").unbind("click");$("a.modelsAvailable").click(function(){$(this).parent("div.makes").find("a:first").click();});}function selectMake(A){subtractMakeModelSelectionsFromCarsMatchedCount(A);removeSelectionsFromMakeModelDimensionNParam(A);clearMakeModelSelections(A);A.selected=true;addSelectionsToMakeModelDimensionNParam(A);updateMakeModelHtml(A);}function deSelectMake(A){removeSelectionsFromMakeModelDimensionNParam(A);subtractMakeModelSelectionsFromCarsMatchedCount(A);clearMakeModelSelections(A);updateMakeModelHtml(A);}function subtractMakeModelSelectionsFromCarsMatchedCount(A){if(A.selected){carsMatched-=A.count;}else{if(A.selectedModelsAdvertCount>0){carsMatched-=A.selectedModelsAdvertCount;}}if(carsMatched==0&&makeModelDimensionNParam==""){carsMatched=excludeCurrentDimensionTotalAdverts;}}function addMakeModelSelectionsToCarsMatchedCount(A){if(A.selected||A.selectedModelsAdvertCount>0){if(carsMatched==excludeCurrentDimensionTotalAdverts){carsMatched=0;}if(A.selected){carsMatched+=A.count;}else{carsMatched+=A.selectedModelsAdvertCount;}}}function updateMakeModelHtml(A){var C=$("div.makes:has(a[name="+A.id+"])");var B=C.find("a[name="+A.id+"]");var D=C.find("a.modelsAvailable");if(A.selected||A.selectedModelsDimValIds.length>0){B.attr("class","makeSelected");D.text(getModelsLinkText(A));D.addClass("selectedModelsText");breadCrumbsContainer.addMakeBreadCrumb(A);}else{$(B).each(function(){var E=$(this);if(E.parent("div.makes").hasClass("activeMake")){E.attr("class","modelsOverlayVisible");}else{E.attr("class","modelsOverlayHidden");}});D.text(getModelsLinkText(A));D.removeClass("selectedModelsText");breadCrumbsContainer.removeMakeBreadCrumb(A);}addMakeModelSelectionsToCarsMatchedCount(A);updateTotalAdvertsCounter(carsMatched);}function closeOpenModelsOverlay(){var A=$("div.activeMake");if(A.length>0){A.find("a:first").click();}}function getModels(A,B){if(A.models.length>0){displayModelsOverlay(A,B);}else{executeAjaxRequest(getModelRefinementsUrl(A),"json",function(C){A.models=C.refinements.Model;displayModelsOverlay(A,B);});}}function displayModelsOverlay(A,C){$("#modelsOverlayContainer").html(getModelsOverlayHtml(A,C));var B=$("#modelsOverlayContainer div.modelsContainer");activateModelsOverlay(A,C,B);C.addClass("activeMake");B.show();$(document).bind("click",clickOutsideOfModelsOverlay);}function getModelsOverlayHtml(D,H){var B=H.attr("name").split("-");var C=parseInt(B[0]);var G=parseInt(B[1]);var F;var A=$("#showPopular").hasClass("selectedTab");if(A){F=removeSpaces(D.name)+"PopularModelsContainer";}else{F=removeSpaces(D.name)+"AToZModelsContainer";}var E="<div id='"+F+"' class='modelsContainer";switch(G){case 1:E+=" middle";break;case 2:E+=" right";break;}E+="' style='position:absolute; "+"top: "+getModelsOverlayTopPosition(C,A)+"; "+"left: "+getModelsOverlayLeftPosition()+";'>"+"<p class='selectModelText'>Select one or more "+D.name+" models then press the <strong>Close</strong> button</p><p class='selectAllContainer'>"+"<a href='#' onclick='javascript:return false;' class='selectAll'>Select All Models</a> "+"<a href='#' onclick='javascript:return false;' class='deSelectAll'>De-Select All Models</a>"+"<button id='chooseModels' class='chooseModels'>Close</button></p><div class='modelsOnly'>";E=appendModelsOverlayHtml(D,E,A);E+="</div></div>";return E;}function appendModelsOverlayHtml(I,C,D){var A=I.models;var E=Math.floor(A.length/3);var J=A.length%3;for(var F=0;F<A.length;F++){var B=F%3;var G=Math.floor(F/3);var H=(B*E)+G+Math.min(B,J);C+=getModelHtml(A[H],I,D);}return C;}function getModelsOverlayLeftPosition(){var A;if($.browser.msie){A="216px";}else{A="217px";}return A;}function getModelsOverlayTopPosition(B,A){var D;var C=parseFloat($.browser.version);if(A){switch(B){case 0:if($.browser.msie&&C<=6){D="137px";}else{D="140px";}break;case 1:if($.browser.msie&&C<=6){D="177px";}else{D="186px";}break;case 2:if($.browser.msie&&C<=6){D="216px";}else{D="231px";}break;case 3:if($.browser.msie&&C<=6){D="256px";}else{D="277px";}break;case 4:if($.browser.msie&&C<=6){D="296px";}else{D="324px";}break;}}else{switch(B){case 0:if($.browser.msie&&C<=6){D="173px";}else{D="176px";}break;case 1:if($.browser.msie&&C<=6){D="213px";}else{D="222px";}break;case 2:if($.browser.msie&&C<=6){D="253px";}else{D="268px";}break;case 3:if($.browser.msie&&C<=6){D="317px";}else{D="471px";}break;case 4:if($.browser.msie&&C<=6){D="357px";}else{D="517px";}}}return D;}function getModelHtml(D,C,A){var B="<div class='models'><input type='checkbox' class='"+removeSpaces(D.name)+"' name='"+D.id+"'";var E;if(A){E=D.id+"PopularMake";}else{E=D.id+"AToZ";}B+=" id='"+E+"'";if(D.selected||C.selected){B+=" checked";}B+=" /><label for='"+E+"'>"+D.name+" <span>("+formatNumber(D.count)+")</span></label></div>";return B;}function clickOutsideOfModelsOverlay(B){var E=$("div.activeMake");var D=E.attr("id");var C=$("div.modelsContainer:visible");var A=C.attr("id");if(!$(B.target).is("#"+D)&&$(B.target).parents("#"+D).length==0&&!$(B.target).is("#"+A)&&$(B.target).parents("#"+A).length==0){closeOpenModelsOverlay();}}function activateModelsOverlay(A,F,E){var B=E.find(".selectAll");var D=E.find(".deSelectAll");var C=E.find("div.modelsOnly :checkbox");if(A.models.length==1){B.hide();D.hide();}else{B.click(function(){C.attr({checked:"checked"});selectMake(A);});D.click(function(){deSelectMake(A);C.removeAttr("checked");});}C.click(function(){var G=E.find("div.modelsOnly :checkbox[checked]");if(G.length==C.length&&C.length>1){selectMake(A);}else{if(G.length==0){deSelectMake(A);}else{subtractMakeModelSelectionsFromCarsMatchedCount(A);removeSelectionsFromMakeModelDimensionNParam(A);clearMakeModelSelections(A);$(G).each(function(H){var I=this.name;A.selectedModelsDimValIds[H]=I;$(A.models).each(function(){if(this.id==I){this.selected=true;A.selectedModelsAdvertCount+=this.count;}});});addSelectionsToMakeModelDimensionNParam(A);updateMakeModelHtml(A);}}});E.find(".chooseModels").click(function(){F.find("a:first").click();});}function openAToZMakesPanel(){if(!aToZMakesUpToDate){loadAToZMakesDimVals();}else{highlightAToZMakesPanelButtons();}}function loadAToZMakesDimVals(){executeAjaxRequest(getCurrentDimensionRefinementsUrl("make"),"json",function(A){closeOpenModelsOverlay();highlightAToZMakesPanelButtons();updateTotalAdverts(A);makeDimVals=A.refinements.Make;if(makeDimVals){var B=$("#panelNavigation a.selected");aToZMakesUpToDate=true;$(".panel").empty();this.currentLetter="a";buildAToZMakesPanel(makeDimVals);truncatemakeText();activateMakeModelAnchors();activateAToZButtons();if(B.length==0||B.hasClass("empty")){$(alphabet).each(function(D){var C=$("#panelNavigation a[href=#"+alphabet[D]+"]");if(!C.hasClass("empty")){showMakePanel(this);return false;}});}}else{showNoRemainingRefinementsMessage();}});}function buildAToZMakesPanel(D){var A=0;var L=0;var J;for(var H=0;H<D.length;H++){var M=D[H].name.charAt(0).toLowerCase();if(M!=currentLetter){currentLetter=M;}if(H>=L){A=0;J=D.slice(0,0);for(var G=L;G<D.length;G++){var M=D[G].name.charAt(0).toLowerCase();if(M!=currentLetter){break;}else{A++;}}J=D.slice(H,H+A);L+=A;for(var F=0;F<J.length;F++){var E=Math.floor(J.length/3);var I=Math.floor(F/3);var N=J.length%3;var C=F%3;var K=(C*E)+I+Math.min(C,N);var B=getMakeHtml(J[K],false,I,C);$(B).appendTo("#makePanel-"+currentLetter);}}}}function highlightAToZMakesPanelButtons(){$("#searchAreaDetail > div:not(#makesModels)").hide();$("#makesModels").show();$("#popularMakes").hide();$("#allMakes").show();$("#showAllMakes").addClass("selectedTab");$("#showPopular").removeClass("selectedTab");}function activateAToZButtons(){$("#panelNavigation a").unbind("click");$("#panelNavigation a").removeClass("empty");$(".panel").each(function(){var B=this.id.replace("makePanel-","");var A=$("#panelNavigation a[href=#"+B+"]");if($(this).is(":empty")){A.unbind("click");A.addClass("empty");}else{$(A).click(function(){showMakePanel(B);});}});}function scrollAToZ(A){var D=$("#panelNavigation a[class*=selected]");var E=$(D).attr("href").replace("#","");var C=0;$(alphabet).each(function(F){if(this==E){C=F;return false;}});C+=A;if(C<0){C=(alphabet.length)+C;}else{if(C>alphabet.length-1){C=C-(alphabet.length);}}var B=$("#panelNavigation a[href=#"+alphabet[C]+"]");if(B.hasClass("empty")){if(A>0){return scrollAToZ(++A);}else{return scrollAToZ(--A);}}showMakePanel(alphabet[C]);}function showMakePanel(A){$("#panelNavigation a[href=#"+A+"]").addClass("selected");$(".panel").each(function(){var C=this.id.replace("makePanel-","");if(C==A){$(this).show();}else{$(this).hide();var B=$("#panelNavigation a[href=#"+C+"]");B.removeClass("selected");}});}function truncatemakeText(){var A=$(".makes");$(A).each(function(){var E=$(this).find("a:first");var F=E.html();var D=63;var C=E.css("height").replace("px","");E.html("<span>"+F+"</span>");var B=$(E.children()[0]);while(F.length>0&&(B.width()>=D||B.height()>=C)){F=F.substr(0,F.length-1);B.html(F+"...");}E.text(B.text());});}