var whichcars={accordian:function(f){if(!document.getElementById("how-we-test")&&!document.getElementById("standard-equipment")&&!document.getElementById("optional-extras")){return
}accordionWrapper=$(f);
c=accordionWrapper.find("div div");
d=accordionWrapper.find("h2");
e=accordionWrapper.find("h3");
if(accordionWrapper.attr("id")=="side-by-side"){var c=accordionWrapper.find("div.accordion div");
var d=accordionWrapper.find("div.accordion h2");
var e=accordionWrapper.find("div.accordion h3")
}c.each(function(g,h){if(g>0){$(this).hide()
}});
showLink="<a href='#' class='show'>Show</a>";
hideLink="<a href='#' class='hide'>Hide</a>";
e.css("text-align","right").wrapInner("<span></span>").each(function(){if($(this).next("div").is(":visible")){$(this).append(hideLink)
}else{$(this).append(showLink)
}});
e.find("a").live("click",function(){var g=$(this).parent().next("div");
if(g.is(":visible")){$(this).replaceWith(showLink);
g.slideUp()
}else{$(this).replaceWith(hideLink);
g.slideDown()
}return false
});
var a="<a href='#' class='show'>Show all</a> / <a href='#' class='hide'>Hide all</a>";
if(d.parent().parent().is("#sidebar")){d.css("text-align","right").wrapInner("<span></span>").append(a)
}else{d.after("<p class='showHideAll'>"+a+"</p>")
}function b(g){accordionItems=$(g).parents("div.accordion").find("div div");
if(accordionWrapper.attr("id")=="side-by-side"){accordionItems=$(g).parents("div.accordion").find("div")
}if($(g).hasClass("show")){accordionItems.show();
e.children("a").each(function(){$(this).replaceWith(hideLink)
})
}else{accordionItems.hide();
e.children("a").each(function(){$(this).replaceWith(showLink)
})
}}accordionWrapper.find(".showHideAll a").live("click",function(){b($(this));
return false
});
accordionWrapper.find("h2 a").live("click",function(){b($(this));
return false
})
},navigationAddHover:function(){$(this).addClass("hovering")
},navigationRemoveHover:function(){$(this).removeClass("hovering")
},navigationHoverInit:function(){var a=$("#category-nav li");
var b={interval:300,sensitivity:4,over:whichcars.navigationAddHover,timeout:0,out:whichcars.navigationRemoveHover};
a.hoverIntent(b)
},modelFinder:function(a){if(!document.getElementById("model-finder")&&!document.getElementById("car-finder")){return
}$modelFinder=$(a);
$usedCars=$("#used-cars");
$newCars=$("#new-cars");
$carAge=$("#age");
whichcars.disableAgeSelect();
$modelFinder.find(":checkbox").change(function(){$carAge.removeAttr("disabled");
whichcars.disableAgeSelect()
});
$carAge.change(function(){$usedCars.removeAttr("checked");
if((!$usedCars.is(":checked"))&&($(this).val()!=1)){$usedCars.attr("checked","checked")
}})
},disableAgeSelect:function(){if(!$usedCars.is(":checked")&&$newCars.is(":checked")){$carAge.attr("disabled","disbled")
}},shortlistPopup:function(){var b=$("#view-shortlist");
var a=b.attr("href")+" #shortlist";
$dialog=$('<div id="shortlist-popup"></div>').load(a).dialog({autoOpen:false,title:"Your shortlist",position:"center",width:500,maxWidth:500});
$("#view-shortlist").click(function(){$dialog.load(a).dialog("open");
return false
})
},helpPopup:function(){if(!document.getElementById("inline-help")){return
}$("#inline-help").hide();
var b=$("#frame a.help-link");
var a=$('<div class="inner"></div>').dialog({autoOpen:false,title:"",dialogClass:"help-popup",closeText:"X",width:300,maxWidth:300,resizable:false,modal:true});
b.click(function(){var e=$(this);
var f=((e.position().top)+10);
var c=((e.position().left)+10);
var d=$(e.attr("href")).clone().html();
a.html(d).dialog("open").parents("div.help-popup").css({left:c,top:f});
return false
});
$("#frame").click(function(){a.dialog("close")
})
},drillDownOption:function(f,d){if(!document.getElementById("review-finder")&&!document.getElementById("model-comparator-selector")&&!document.getElementById("range-comparator-selector")){return
}var b=$(f);
selectMake=$("#make");
selectRange=$("#range");
selectStyle=$("#style");
selectModel=$("#model");
b.find("fieldset button[id='addrange']").hide();
if(document.getElementById("review-finder")){b.find("select").css("width","270px")
}else{b.find("select").css("width","208px")
}b.find("select").change(function(){var g=$(this).attr("value");
if(g!=""){if($(this).attr("id")=="make"){whichcars.ajaxMakeRangeBuilder(g,d,"")
}else{if($(this).attr("id")=="range"){whichcars.ajaxRangeStyleBuilder(g,d,"");
$("#selected_range").attr("value",g);
if(selectStyle.length==0){$("#search").removeAttr("disabled");
$("#searchreviewbutton").attr("src","/assets/topics/images/buttons/btn-go.png")
}}else{if($(this).attr("id")=="style"){$("#selected_style").attr("value",g);
if(selectModel.length!=0){whichcars.ajaxModelsBuilder(g,d)
}else{$("#search").removeAttr("disabled");
$("#searchreviewbutton").attr("src","/assets/topics/images/buttons/btn-go.png")
}}}}}b.find(".error").remove()
});
var c=$(selectMake).attr("value");
var e=$("#selected_range").attr("value");
if(c!=null&&c!=""){whichcars.ajaxMakeRangeBuilder($(selectMake).attr("value"),d,e);
b.find(".error").remove()
}if(e!=null&&e!=""){var a=$("#selected_style").attr("value");
whichcars.ajaxRangeStyleBuilder(e,d,a);
b.find(".error").remove()
}},ajaxMakeRangeBuilder:function(b,a,e){if(d!=null){d.abort()
}RangeFilterAjaxURL="/cars/ajax/"+a+"/marques"+b;
var c="";
var d=$.ajax({type:"GET",url:RangeFilterAjaxURL,dataType:"json",error:function(f,h,g){},success:function(f){if(f.ranges==undefined){}else{if(f.ranges.details.length==0){}else{$.each(f.ranges.details,function(h,g){c=c+'<option value="'+g.value+'">'+g.name+"</option>"
})
}}selectRange.html(c);
selectRange.removeAttr("disabled");
if(e!=""){selectRange.find("option[value="+e+"]").attr("selected","selected")
}}})
},ajaxRangeStyleBuilder:function(c,b,e){if(d!=null){d.abort()
}styleFilterAjaxURL="/cars/ajax/"+b+"/bodyStyle"+c;
var a="";
var d=$.ajax({type:"GET",url:styleFilterAjaxURL,dataType:"json",error:function(f,h,g){},success:function(f){if(f.styles==undefined){}else{if(f.styles.details.length==0){}else{$.each(f.styles.details,function(g,h){a=a+'<option value="'+h.value+'">'+h.name+"</option>"
})
}}selectStyle.html(a);
selectStyle.removeAttr("disabled");
if(e!=""){selectStyle.find("option[value="+e+"]").attr("selected","selected")
}}})
},ajaxModelsBuilder:function(b,a){if(c!=null){c.abort()
}modelFilterAjaxURL="/cars/ajax/"+a+"/models"+b;
var d="";
var c=$.ajax({type:"GET",url:modelFilterAjaxURL,dataType:"json",error:function(e,g,f){},success:function(e){if(e.models==undefined){}else{if(e.models.details.length==0){}else{$.each(e.models.details,function(f,g){d=d+'<option value="'+g.value+'">'+g.name+"</option>"
})
}}selectModel.html(d);
selectModel.removeAttr("disabled");
selectModel.change(function(g){var f=$("#model option:selected").val();
if($("#add").length>0){if(f!=""){$("#add").show()
}else{$("#add").hide()
}}})
}})
},testedModelRatings:function(){if($("div.models-tested").length===0){return
}var a,b;
$("#rating-data table").each(function(c){a="Hide tested model ratings {specName}";
if($(this).prev().is("h3")){b=$(this).prev().find("span").text()
}else{if($(this).prev().prev().is("h3")){b=$(this).prev().prev().find("span").text()
}else{if($(this).prev().prev().prev().is("h3")){b=$(this).prev().prev().prev().find("span").text()
}else{if($(this).prev().prev().prev().prev().is("h3")){b=$(this).prev().prev().prev().prev().find("span").text()
}else{if($(this).prev().prev().prev().prev().prev().is("h3")){b=$(this).prev().prev().prev().prev().prev().find("span").text()
}else{b=""
}}}}}a=a.replace(/{specName}/,'for "'+b+'"');
if(c>0){a=a.replace("Hide","Show")
}$(this).before('<p><a href="#" class="show-hide-tested-models">'+a+"</a></p>")
});
$("#rating-data table:gt(0)").hide();
$("#rating-data a.show-hide-tested-models").click(function(){var c=$(this).text();
if($(this).parent().next().is(":visible")){$(this).parent().next().hide();
$(this).text(c.replace("Hide","Show"))
}else{$(this).parent().next().show();
$(this).text(c.replace("Show","Hide"))
}return false
})
},initTabSwitch:function(){$('#inline-tabs a[href^="#fragment"]').click(function(){whichcars.tabSwitch($(this));
return false
});
if($("#inline-tabs.showForJS").length>0){var b=location.href.split("#");
if(b.length>1&&b[1].indexOf("fragment")===0){var a=b[1];
whichcars.tabSwitch($('#inline-tabs a[href="#'+a+'"]'))
}else{if(b.length==1){whichcars.tabSwitch($("#inline-tabs a:eq(0)"))
}}}},tabSwitch:function(a){$("#inline-tabs li").removeClass("current").find("a").show();
$("#inline-tabs li span").remove();
a.hide().after("<span>"+a.text()+"</span>").parent().toggleClass("current");
$('div[id^="fragment"]').hide();
$(a.attr("href")).show()
},modelFinderFilter:{props:{root:"/cars/finder?",dynamicFilters:{1:{name:"#filter-newused",type:"multi",urlParamName:"newAndUsedCars"},2:{name:"#filter-budget",type:"single",urlParamName:"budget"},3:{name:"#filter-bodystyle",type:"multi",urlParamName:"bodyStyle"},4:{name:"#filter-make",type:"multi",urlParamName:"makes"}},defaultParams:{"submit-master":"",view:"25",reviewindex:"0",filterMode:"on"},resultRefreshText:"Results updated"},init:function(){if($("#filter-options").length===0){return
}$("#filter-options input").click(function(){whichcars.modelFinderFilter.loadReviewFinderResults(true,true)
});
$("#filter-bodystyle, #filter-make").each(function(){$(this).prepend('<p class="local-options"><a href="#" onclick="whichcars.modelFinderFilter.selectAll(\'#'+$(this).attr("id")+'\', true); return false;">Select all</a> | <a href="#"  onclick="whichcars.modelFinderFilter.clearAll(\'#'+$(this).attr("id")+"', true); return false;\">Clear all</a></p>")
});
var a='#filter-options fieldset[id!="filter-newused"] ol';
$(a).resizable({minWidth:223,maxWidth:223,minHeight:160,alsoResize:a});
$('#filter-options button[type="submit"]').hide();
$("#filter-options button.btn-reset").click(function(){whichcars.modelFinderFilter.clearAll("#filter-budget",false);
whichcars.modelFinderFilter.clearAll("#filter-bodystyle",false);
whichcars.modelFinderFilter.clearAll("#filter-make",true)
});
$('<div class="ajax-loading">').css({position:"absolute",top:"3.4em",left:"4px"}).appendTo("#filter-options").hide();
$('<p class="loader">').css({width:"892px",height:"180px"}).appendTo("#filter-options div.ajax-loading");
$("#filter-options div.ajax-loading").ajaxStart(function(){$(this).show()
}).ajaxStop(function(){$(this).fadeOut()
});
whichcars.modelFinderFilter.loadReviewFinderResults(false,false)
},selectAll:function(b,a){$(b).find("input").attr("checked","checked").blur();
if(a){whichcars.modelFinderFilter.loadReviewFinderResults(true,true)
}},clearAll:function(b,a){$(b).find("input").removeAttr("checked").blur();
if(a){whichcars.modelFinderFilter.loadReviewFinderResults(true,true)
}},queryBuilder:function(){var b,f="",i=whichcars.modelFinderFilter.props.dynamicFilters,e=whichcars.modelFinderFilter.props.defaultParams;
for(var j in i){var c=i[j],a=$(c.name+" input:checked");
if(c.type==="single"){if(a.val()){f+="&_"+c.urlParamName+"=on";
f+="&"+c.urlParamName+"="+a.val()
}}else{if(c.type==="multi"){a.each(function(){f+="&"+c.urlParamName+"="+$(this).attr("value")
})
}}if(a.length>0){f+="&_"+c.urlParamName+"=on"
}}if($("div.view-per-page").length>0){if($("div.view-per-page:first li:eq(0) a").length==0){f+="&fullreviewshow=10"
}else{if($("div.view-per-page:first li:eq(2) a").length==0){f+="&fullreviewshow=50"
}else{f+="&fullreviewshow=25"
}}}else{f+="&fullreviewshow=25"
}var g=$("select#fullReviewSortOptionTop option:selected");
if(g.length>0){f+="&fullReviewSortOption="+g.val()
}else{f+="&fullReviewSortOption=15"
}for(var d in e){var h=e[d];
f+="&"+d+"="+h
}f=f.replace(/\\?&/,"");
b=whichcars.modelFinderFilter.props.root+f;
return b
},ajaxModelResults:function(a){if(b!=null){b.abort()
}var b=$.ajax({type:"GET",url:a,dataType:"html",timeout:40000,error:function(c,e,d){whichcars.modelFinderFilter.showModelResultsError("Code: 557.")
},success:function(c){if(c==undefined){whichcars.modelFinderFilter.showModelResultsError("Code: 562.")
}else{if(c.length==0){whichcars.modelFinderFilter.showModelResultsError("Code:566.")
}else{$("#filter-options p").remove(":contains('error')");
if($("#results").length>0){if(c.indexOf("Login")>0){window.location.href="/login"
}else{$("#results").html(c)
}}else{$("#filter-options").after(c)
}$(".view-per-page a, .pagination a").click(function(){whichcars.modelFinderFilter.ajaxModelResults($(this)[0].href);
return false
});
$("#inline-tabs").tabs();
$(".showForJS").show();
$("#results").css({position:"relative"});
$("#results").append('<div id="resultsMessage">'+whichcars.modelFinderFilter.props.resultRefreshText+"</div>");
$("#resultsMessage").css({position:"absolute",top:"50px",left:"300px",width:"300px",padding:"30px 0",border:"solid 3px #C5D2D8",background:"#E7EEF2",color:"#C00","font-size":"160%","text-align":"center"}).animate({opacity:0},2000,function(){$("#resultsMessage").remove()
})
}}}})
},loadReviewFinderResults:function(a,d){var c=whichcars.modelFinderFilter.props.dynamicFilters[1],e=$(c.name+" input:checked");
if(e.val()!=undefined){var b=whichcars.modelFinderFilter.queryBuilder();
$("#errorMsgNewUsed").empty();
$(this).blur();
if(b.length!=0||d){whichcars.modelFinderFilter.ajaxModelResults(b)
}}else{if(a){$("#errorMsgNewUsed").empty();
$("#errorMsgNewUsed").append("<p class='error'>Please choose new or used option</p>")
}}},showModelResultsError:function(a){$("#filter-options p").remove(":contains('error')");
$("#filter-options").append("<p class='error'>Unfortunately, an error occurred. "+a+" Please try again.</p>")
}},newsletterclearonfocus:function(){$("#newsletterSignUp").focus(function(){if($(this).val()==="Please enter your email"){$(this).val("")
}}).blur(function(){if($(this).val()===""){$(this).val("Please enter your email")
}})
},setupCarsLightboxInvoker:function(){$(".cars-intermediate-link").click(function(){var a=$(this).attr("href");
whichcars.showModifiedLightbox(a);
return false
})
},showModifiedLightbox:function(b){var a=b+"?height=595&width=521&modal=true";
tb_show("",a,false);
return false
}};
var carsLightboxes={savedLBLogin:"",savedLinkName:"",savedLinkURL:"",dynamicLink:false,log:function(b){var a=window.console;
if(a&&a.log){a.log(b)
}},setupLightbox:function(){if(member!=undefined&&!member){$("a.valuations-link, button.valuations-link").unbind().click(function(){carsLightboxes.showValuationsLightbox(this);
return false
})
}else{$("button.valuations-link").unbind().click(function(){this.form.submit()
})
}var b=$("#idlink");
var a=b.text();
carsLightboxes.savedLinkName=a;
carsLightboxes.savedLBLogin=$("#lblogin").attr("href");
carsLightboxes.savedLinkURL=adtech.adclickL2+b.attr("href");
if(b.attr("rel")!=""){carsLightboxes.defaultLinkName=b.attr("rel")
}if(typeof adtech.adclickL2!="undefined"){carsLightboxes.defaultLinkHref=adtech.adclickL2+carsLightboxes.defaultLinkHref
}else{carsLightboxes.defaultLinkHref="http://adtech.staticwhich.co.uk/adlink|987|2381942|0|2973|AdId=2886351;BnId=14;itime=259234922;nodecode=yes;link="+carsLightboxes.defaultLinkHref
}if(carsLightboxes.savedLinkName.indexOf("{link.")>=0){carsLightboxes.dynamicLink=true
}if(carsLightboxes.dynamicLink){b.text(carsLightboxes.defaultLinkName);
b.attr("href",carsLightboxes.defaultLinkHref)
}},showValuationsLightbox:function(a){if($("#carslightbox").size()==0){carsLightboxes.log("Unable to find valuations lightbox in page");
window.location.href=$(a).attr("href");
return false
}if($("#carslightbox-panel").find(".innerTwo").size()==0){$("#carslightbox-panel").append($("#valuations-panel").detach())
}$("#carslightbox-panel").find(".inner").hide().end().find(".innerTwo").show();
var b=tb_close_callback;
tb_close_callback=function(){tb_close_callback=b;
$("#carslightbox-panel").find(".inner").show().end().find(".innerTwo").hide()
};
tb_show("","TB_inline?inlineId=carslightbox&height=600&width=600&modal=true",false);
return false
}};
$(window).load(function(){setTimeout(carsLightboxes.setupLightbox,600)
});
$(document).ready(function(){whichcars.navigationHoverInit();
whichcars.modelFinder("#model-finder");
whichcars.modelFinder("#car-finder");
if($("#inline-help").length){whichcars.helpPopup()
}whichcars.testedModelRatings();
whichcars.initTabSwitch();
$(".showForJS").show();
whichcars.newsletterclearonfocus();
whichcars.accordian("#how-we-test");
whichcars.accordian("#standard-equipment");
whichcars.accordian("#optional-extras");
whichcars.accordian("#side-by-side");
$("#manufacturer-reviews .inner").tabs();
$("#recommended").tabs();
whichcars.drillDownOption("#review-finder","CarReviewSelectorComponent");
whichcars.drillDownOption("#model-comparator-selector","CarModelComparisonComponent");
whichcars.drillDownOption("#range-comparator-selector","CarRangeComparisonComponent");
$("#best-buys").tabs();
$("#tabs").tabs();
$(".tabify").tabs();
$("#results #inline-tabs").tabs();
$(".showForJS").show();
whichcars.modelFinderFilter.init();
whichcars.setupCarsLightboxInvoker()
});
