var jq = jQuery;
// Navigation
function clearDeSearchfVal(myObj){
	if(myObj.value=='search by make, model, etc.') myObj.value='';
}
function restoreDefVal(myObj){
	if(myObj.value=='') {
		if (jq.trim(jq('.activeSearch').text()) == 'Autos')
			myObj.value='search by make, model, etc.';
		else
			myObj.value='Search Here';
	}
}

function nav_init(actTab){
	if(actTab!=''){jq('#navigation li.nav_item:eq('+actTab+')').addClass('actTab')}
	jq('#navigation > li').each(function(){
		var liNode=jq(this);
		liNode.find('a.top_link').bind('mouseover',function(){
			obj=jq(this).parent();
			if(obj.showtimer){nav_killTimer(obj)}
			jq('#navigation > li').each(function(){jq(this).removeClass('dd_open')});
			obj.addClass('dd_open');
		}).bind('mouseout',function(){nav_startTimer(obj)});
		liNode.find('ul.sub_nav').find('li a').each(function(){
			jq(this).parent().parent().hide();
			obj=jq(this).parent().parent().parent();
			jq(this).bind('mouseover',function(){nav_killTimer(obj)}).bind('mouseout',function(){nav_startTimer(obj)})
		})
	}).end();
	var options = {
		script:"/smartBoxForm.jsp",
		minchars:3,
		varname:"queryString",
		json:true,
		shownoresults:false,
		maxresults:10,
		timeout:10000,
		delay:1,
		formId:"navSearch"
	};
	var as_json = new bsn.AutoSuggest("topquery", options)
}

function nav_init_old(actTab){

	if(actTab != '') {
		jq('ul.top_nav li.nav_item:eq(' + actTab + ')').addClass('actTab');
	}
	
	jq('#head_nav ul.top_nav > li').each(function(){
		var liNode = jq(this);
		liNode.find('a.top_link')
			.bind('mouseover',function(){
				obj = jq(this).parent();
				if (obj.showtimer) nav_killTimer(obj);
				jq('#head_nav ul.top_nav > li').each(function(){
					jq(this).removeClass('dd_open');
				});
				obj.addClass('dd_open');
			})
			.bind('mouseout',function(){
				nav_startTimer(obj);
			});
		liNode.find('ul.sub_nav')
			.before(jq('<iframe src="http://o.aolcdn.com/art/ch_autos/blank.html"></iframe>'))
			.find('li a').each(function(){
				jq(this).parent().parent().hide()
				obj = jq(this).parent().parent().parent();
				jq(this).bind('mouseover',function(){
					nav_killTimer(obj);
				}).bind('mouseout',function(){
					nav_startTimer(obj);
				});
			});
		}).end();
		jq('#head_nav iframe').each(function(){
			jq(this).attr('height',jq(this).next().height()).attr('width',jq(this).next().width())
		})

	var formObj = jq('#nav_search');
	var queryObj = jq('#nav_search').find(':first');
	queryObj.attr('disabled','');
	formObj.bind('submit',function(){
		if (queryObj.val() == 'search by make, model, etc.' || queryObj.val() == 'Search Here') {
			queryObj.val('');
		}
	});

	jq(document).ready(function(){
		queryObj.bind('blur',function(){restoreDefVal(this);jq(this).css({color:'#b6b8bb'})});
		queryObj.bind('click',function(){clearDeSearchfVal(this);jq(this).css({color:'#000'})});
		jq('.webMenu > li a.nav_search').each(function(){
			if (jq(this).text() != 'Autos') {
				jq(this).bind('click',function(){nav_submitLink(this);return false;});
			} else {
				jq(this).bind('click',function(){return false;});
			}
		});
	});
}
function nav_startTimer(obj){
	obj.showtimer = setTimeout(
	function(){
		nav_killTimer(obj);
		obj.removeClass('dd_open');
	},250);
}
function nav_killTimer(obj){
	if (obj.showtimer) {
		clearInterval(obj.showtimer);
		obj.showtimer = null;
	}
}
function nav_submitLink(obj) {
	var lObj = jq('#topquery');
	if(lObj.val() == 'search by make, model, etc.') {
		lObj.val();
	}
	var oAct = jq('#nav_search').attr('action');
	jq('#nav_search').attr('action',jq(obj).attr('href')).attr('target',jq(obj).attr('target'));
	jq('#nav_search').submit();
	jq('#nav_search').attr('action',oAct).attr('target','');
	return false;
}
function nav_setActive(obj) {
	jq('.webMenu > li a.nav_search').each(function(){
		jq(this).parent().attr('class','inactiveSearch');
	});
	jq(obj).parent().attr('class','activeSearch');
	jq('#nav_search').attr('target',jq(obj).attr('target'));
	jq('#nav_search').attr('action',jq(obj).attr('href'));
	if (jq(obj).text() == 'Autos')
		jq('#topquery').attr('value','search by make, model, etc.');
	else
		jq('#topquery').attr('value','Search Here');
	if (jq('#smore').css('display') == 'block') {
		jq('#smore').hide();
	}
}

/*** JS required for Smart Box : Starts ***/

/**
 *  author:		Radhakrishna
 *	version:	1.0 - 2008-12-29
 *
 */

if (typeof(bsn) == "undefined")
_b = bsn = {};


if (typeof(_b.Autosuggest) == "undefined")
_b.Autosuggest = {};
else
alert("Autosuggest is already set!");


_b.AutoSuggest = function (id, param)
{
// no DOM - give up!
//
if (!document.getElementById)
	return 0;	

// get field via DOM
this.fld = _b.DOM.gE(id);

if (!this.fld)
	return 0;	

// init variables
this.sInp 	= "";
this.nInpC 	= 0;
this.aSug 	= [];
this.iHigh 	= 0;

// parameters object
this.oP = param ? param : {};	

// defaults	
var k, def = {minchars:1, meth:"get", varname:"query", className:"autosuggest", timeout:2500, delay:10, offsety:-5, shownoresults: true, noresults: "No results!", maxheight: 250, cache: true, maxentries: 25};
for (k in def)
{
	if (typeof(this.oP[k]) != typeof(def[k]))
		this.oP[k] = def[k];
}

// set keyup handler for field
// and prevent autocomplete from client
var p = this;

// NOTE: not using addEventListener because UpArrow fired twice in Safari
//_b.DOM.addEvent( this.fld, 'keyup', function(ev){ return pointer.onKeyPress(ev); } );	
this.fld.onkeypress 	= function(ev){ return p.onKeyPress(ev); };
this.fld.onkeyup 		= function(ev){ return p.onKeyUp(ev); };

this.fld.setAttribute("autocomplete","off");
};

_b.AutoSuggest.prototype.onKeyPress = function(ev)
{
var key = (window.event) ? window.event.keyCode : ev.keyCode;
// set responses to keydown events in the field
// this allows the user to use the arrow keys to scroll through the results
// ESCAPE clears the list
// TAB sets the current highlighted value
var RETURN = 13;
var TAB = 9;
var ESC = 27;

var bubble = 1;
switch(key)
{
	case RETURN:
		this.selectCurrent();
		bubble = 0;
		break;

	case ESC:
		this.clearSuggestions();
		break;
}
return bubble;
};

_b.AutoSuggest.prototype.onKeyUp = function(ev)
{
var key = (window.event) ? window.event.keyCode : ev.keyCode;	
// set responses to keydown events in the field
// this allows the user to use the arrow keys to scroll through the results
// ESCAPE clears the list
// TAB sets the current highlighted value
//

var ARRUP = 38;  //up arrow
var ARRDN = 40;  //down arrow	
var bubble = 1;

switch(key)
{
	case ARRUP:
		this.changeHighlight(key);
		bubble = 0;
		break;

	case ARRDN:
		this.changeHighlight(key);
		bubble = 0;
		break;
		
	default:
		this.getSuggestions(this.fld.value);
}
return bubble;
};

_b.AutoSuggest.prototype.getSuggestions = function (val)
{

// if input stays the same, do nothing
if (val == this.sInp)
	return 0;

// kill list
_b.DOM.remE(this.idAs);

this.sInp = val;	
// input length is less than the min required to trigger a request
// do nothing
if (val.length < this.oP.minchars)
{
	this.aSug = [];
	this.nInpC = val.length;
	return 0;
}

var ol = this.nInpC; // old length
this.nInpC = val.length ? val.length : 0;

// if caching enabled, and user is typing (ie. length of input is increasing)
// filter results out of aSuggestions from last request
var l = this.aSug.length;	
var pointer = this;
var input = this.sInp;
clearTimeout(this.ajID);
this.ajID = setTimeout( function() { pointer.doAjaxRequest(input) }, this.oP.delay );

return false;
};

_b.AutoSuggest.prototype.doAjaxRequest = function (input)
{
// check that saved input is still the value of the field
if (input != this.fld.value)
	return false;

var pointer = this;	

// create ajax request	
var url = this.oP.script+"?"+this.oP.varname+"="+encodeURIComponent(this.sInp);	

if (!url)
	return false;

var meth = this.oP.meth;
var input = this.sInp;

var onSuccessFunc = function (req) { pointer.setSuggestions(req, input) };
var onErrorFunc = function (status) { /*alert("AJAX error: "+status);*/ };

var myAjax = new _b.Ajax();
//addding loading symbol to input box
$j(this.fld).addClass("smartbox_loading");
myAjax.makeRequest( url, meth, onSuccessFunc, onErrorFunc );
};

_b.AutoSuggest.prototype.setSuggestions = function (req, input)
{
// if field input no longer matches what was passed to the request
// don't show the suggestions
if (input != this.fld.value)
	return false;

this.aSug = [];	
if (this.oP.json)
{
	var jsondata = eval('(' + req.responseText + ')');
	jsonDataLen = jsondata.length;
	for (var i=0;i<jsonDataLen;i++)		{
		this.aSug.push(jsondata[i]);
	}
}	
this.idAs = "as_"+this.fld.id;
this.createList(this.aSug);
};

_b.AutoSuggest.prototype.selectCurrent = function()
{	
	var li = $j("li.as_highlight", _b.DOM.gE("as_ul"))[0];
	if (!li) {
			li = document.createElement("li");
			li.extra = [];
			li.selectValue = "";
	}
	this.setHighlightedValue(li);
	return true;
};

_b.AutoSuggest.prototype.createList = function(arr)
{
var pointer = this;

// get rid of old list
// and clear the list removal timeout
_b.DOM.remE(this.idAs);
this.killTimeout();

// if no results, and shownoresults is false, do nothing
if (arr.length == 0 && !this.oP.shownoresults){
	$j(this.fld).removeClass("smartbox_loading");
	return false;
}

// create holding div
var div = _b.DOM.cE("div", {id:this.idAs, className:this.oP.className});	

// create and populate ul
var ul = _b.DOM.cE("ul", {id:"as_ul"});

// loop throught arr of suggestions
// creating an LI element for each suggestion
for (var i=0;i<arr.length;i++)
{
	// format output with the input enclosed in a EM element
	// (as HTML, not DOM)
	var liText=arr[i];
	var li = _b.DOM.cE(  "li", {className:"li"}, liText  );
	ul.appendChild( li );

	$j(li).hover(
			function() { $j("li",  ul).removeClass("as_highlight"); $j(this).addClass("as_highlight"); 	},
			function() { $j(this).removeClass("as_highlight"); }
		).click(function(e) { 
				pointer.selectCurrent();

		});
}
// no results
if (arr.length == 0 && this.oP.shownoresults)
{
	var li = _b.DOM.cE(  "li", {className:"as_highlight"}, this.oP.noresults  );
	ul.appendChild( li );
}

	div.appendChild( ul );
	
	// get position of target textfield
	// position holding div below it
	// set width of holding div to width of field
	//
	
	var pos = _b.DOM.getPos(this.fld);	
	
	if($j.browser.msie)
	{		
		div.style.left 		= (pos.x + 1)+ "px";
		div.style.top 		= ( pos.y + this.fld.offsetHeight + 1) + "px";		
	}	
	else{
		div.style.left 		= (pos.x)+ "px";		
		div.style.top 		=	( pos.y + this.fld.offsetHeight ) + "px";
	}
	div.style.width 	= (this.fld.offsetWidth-2)+ "px";	
	// set mouseover functions for div
	// when mouse pointer leaves div, set a timeout to remove the list after an interval
	// when mouse enters div, kill the timeout so the list won't be removed
	//
	div.onmouseover 	  = function(){ pointer.killTimeout() };
	div.onmouseout 		  = function(){ pointer.resetTimeout() };
	document.body.onclick = function(){ pointer.resetTimeout() };
	//remove loading symbol
	$j(this.fld).removeClass("smartbox_loading");
	// add DIV to document
	document.getElementsByTagName("body")[0].appendChild(div);
	div.style.display="block";
	
		
	// currently no item is highlighted
	this.iHigh = 0;
	
	// remove list after an interval
	var pointer = this;
	this.toID = setTimeout(function () { pointer.clearSuggestions(); }, this.oP.timeout);
};

_b.AutoSuggest.prototype.changeHighlight = function(key)
{	
var list = _b.DOM.gE("as_ul");
if (!list)
	return false;

var n;

if (key == 40)
	n = this.iHigh + 1;
else if (key == 38)
	n = this.iHigh - 1;


if (n > list.childNodes.length)
	n = list.childNodes.length;
if (n < 1)
	n = 1;
//alert('select item='+n);

this.setHighlight(n);
};

_b.AutoSuggest.prototype.setHighlight = function(n)
{
//var Rlist = _b.DOM.gE("as_ul");
var list = $j("li",  _b.DOM.gE("as_ul"));
if (!list)
	return false;

if (this.iHigh > 0)
	this.clearHighlight();

this.iHigh = Number(n);

$j(list[this.iHigh - 1]).addClass("as_highlight");

this.killTimeout();
};


_b.AutoSuggest.prototype.clearHighlight = function()
{
var list = $j("li",  _b.DOM.gE("as_ul"));
if (!list)
	return false;

if (this.iHigh > 0)
{
	$j(list[this.iHigh-1]).removeClass("as_highlight");
	this.iHigh = 0;
}
};

_b.AutoSuggest.prototype.setHighlightedValue = function (li)
{		
	var v = $j.trim(li.selectValue ? li.selectValue : li.innerHTML);		
	if(v=="")
		v = this.fld.value;		
	
	this.sInp = this.fld.value = v;
	this.clearSuggestions();		
	this.fld.focus();

	// submit form on selection of list item
	if (this.oP.formId)
	{
		$j("#"+this.oP.formId).submit();
	}
	else{
		$j("#nav_search").submit();
	}

};


_b.AutoSuggest.prototype.killTimeout = function()
{
clearTimeout(this.toID);
};

_b.AutoSuggest.prototype.resetTimeout = function()
{
clearTimeout(this.toID);
var pointer = this;
this.toID = setTimeout(function () { pointer.clearSuggestions() }, 1000);
};


_b.AutoSuggest.prototype.clearSuggestions = function ()
{

this.killTimeout();

var ele = _b.DOM.gE(this.idAs);
var pointer = this;
if (ele)
{
	var fade = new _b.Fader(ele,1,0,250,function () { _b.DOM.remE(pointer.idAs) });
}
};


//AJAX PROTOTYPE _____________________________________________

if (typeof(_b.Ajax) == "undefined")
_b.Ajax = {};

_b.Ajax = function ()
{
this.req = {};
this.isIE = false;
};

_b.Ajax.prototype.makeRequest = function (url, meth, onComp, onErr)
{

if (meth != "POST")
	meth = "GET";

this.onComplete = onComp;
this.onError = onErr;

var pointer = this;

// branch for native XMLHttpRequest object
if (window.XMLHttpRequest)
{
	this.req = new XMLHttpRequest();
	this.req.onreadystatechange = function () { pointer.processReqChange() };
	this.req.open("GET", url, true); //
	this.req.send(null);
// branch for IE/Windows ActiveX version
}
else if (window.ActiveXObject)
{
	this.req = new ActiveXObject("Microsoft.XMLHTTP");
	if (this.req)
	{
		this.req.onreadystatechange = function () { pointer.processReqChange() };
		this.req.open(meth, url, true);
		this.req.send();
	}
}
};

_b.Ajax.prototype.processReqChange = function()
{

// only if req shows "loaded"
if (this.req.readyState == 4) {
	// only if "OK"
	if (this.req.status == 200)
	{
		this.onComplete( this.req );
	} else {
		this.onError( this.req.status );
	}
}
};


//DOM PROTOTYPE _____________________________________________

if (typeof(_b.DOM) == "undefined")
_b.DOM = {};

/* create element */
_b.DOM.cE = function ( type, attr, cont, html )
{
var ne = document.createElement( type );
if (!ne)
	return 0;
	
for (var a in attr)
	ne[a] = attr[a];

var t = typeof(cont);

if (t == "string" && !html)
	ne.appendChild( document.createTextNode(cont) );
else if (t == "string" && html)
	ne.innerHTML = cont;
else if (t == "object")
	ne.appendChild( cont );

return ne;
};

/* get element */
_b.DOM.gE = function ( e )
{
var t=typeof(e);
if (t == "undefined")
	return 0;
else if (t == "string")
{
	var re = document.getElementById( e );
	if (!re)
		return 0;
	else if (typeof(re.appendChild) != "undefined" )
		return re;
	else
		return 0;
}
else if (typeof(e.appendChild) != "undefined")
	return e;
else
	return 0;
};

/* remove element */
_b.DOM.remE = function ( ele )
{
var e = this.gE(ele);

if (!e)
	return 0;
else if (e.parentNode.removeChild(e))
	return true;
else
	return 0;
};

/* get position */
_b.DOM.getPos = function ( e )
{
var e = this.gE(e);

var obj = e;

var curleft = 0;

if (obj.offsetParent)
{
	while (obj.offsetParent)
	{
		curleft += obj.offsetLeft;
		obj = obj.offsetParent;

	}
}
else if (obj.x)
	curleft += obj.x;

var obj = e;

var curtop = 0;
if (obj.offsetParent)
{
	while (obj.offsetParent)
	{
		curtop += obj.offsetTop;
		obj = obj.offsetParent;
	}
}
else if (obj.y)
	curtop += obj.y;

return {x:curleft, y:curtop};
};

//FADER PROTOTYPE _____________________________________________

if (typeof(_b.Fader) == "undefined")
_b.Fader = {};

_b.Fader = function (ele, from, to, fadetime, callback)
{	
if (!ele)
	return 0;

this.e = ele;

this.from = from;
this.to = to;

this.cb = callback;

this.nDur = fadetime;
	
this.nInt = 50;
this.nTime = 0;

var p = this;
this.nID = setInterval(function() { p._fade() }, this.nInt);
};


_b.Fader.prototype._fade = function()
{
this.nTime += this.nInt;

var ieop = Math.round( this._tween(this.nTime, this.from, this.to, this.nDur) * 100 );
var op = ieop / 100;

if (this.e.filters) // internet explorer
{
	try
	{
		this.e.filters.item("DXImageTransform.Microsoft.Alpha").opacity = ieop;
	} catch (e) { 
		// If it is not set initially, the browser will throw an error.  This will set it if it is not set yet.
		this.e.style.filter = 'progid:DXImageTransform.Microsoft.Alpha(opacity='+ieop+')';
	}
}
else // other browsers
{
	this.e.style.opacity = op;
}


if (this.nTime == this.nDur)
{
	clearInterval( this.nID );
	if (this.cb != undefined)
		this.cb();
}
};

_b.Fader.prototype._tween = function(t,b,c,d)
{
return b + ( (c-b) * (t/d) );
};
/*** JS required for Smart Box : Ends ***/
$j.cookie=function(name,value,options){if(typeof value!='undefined'){options=options || {};if(value === null){value='';options.expires=-1}var expires='';if(options.expires && (typeof options.expires=='number' || options.expires.toUTCString)){var date;if(typeof options.expires=='number'){date=new Date();date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000))}else{date=options.expires}expires=';expires=' + date.toUTCString()}var path=options.path ? ';path=' + (options.path) : '';var domain=options.domain ? ';domain=' + (options.domain) : '';var secure=options.secure ? ';secure' : '';document.cookie=[name,'=',encodeURIComponent(value),expires,path,domain,secure].join('')}else{var cookieValue=null;if(document.cookie && document.cookie!=''){var cookies=document.cookie.split(';');for(var i=0;i<cookies.length;i++){var cookie=jQuery.trim(cookies[i]);if(cookie.substring(0,name.length + 1)==(name + '=')){cookieValue=decodeURIComponent(cookie.substring(name.length + 1));break}}}return cookieValue}};
if($j.cookie('zip')==null || $j.cookie('zip')=='none' || $j.cookie('zip')==''){var cVal=''}else{var cVal=$j.cookie('zip')}

function aol_initRecView(){
	$j('#recViewed .title').bind('click',function(){
		$j('#recModelData').slideToggle('fast');
		if($j('#recViewed .zipInfo').css("display")=='block'){
			$j('#recViewed .zipInfo').fadeOut('fast').hide()
		}
		$j('#recViewed .zip_info').show();
		$j('#recViewed .change_zip').hide();
		return false
	}).bind("click",bN.click).end();
	$j('#recViewed a.change').bind('click',function(){
		if($j('#recModelData').css("display")=='block'){
			$j('#recModelData').slideToggle('fast');
		}
		if($j('#recViewed .zipInfo').css("display")=='block'){
			$j('#recViewed .zipInfo').hide()
		}
		$j('#recViewed .zip_info').hide();
		$j('#recViewed .change_zip').show();
		return false
	}).bind("click",bN.click).end();
	$j('#recViewed .zip_info span').bind('click',function(){
		$j('#recViewed .zip_info').hide();
		$j('#recViewed .change_zip').show();
	});
	$j('#recViewed form span.submit').bind('click',function(){$j('#recViewed form').submit()});
	$j('#recViewed form').bind('submit',function(){
		var v="0123456789";
		var o=$j('#m_czip').val();
		if(o.length!=5){alert("Please enter your 5 digit ZIP code");return false}
		for(var i=0;i<o.length;i++){
			t=""+o.substring(i,i+1);
			if(v.indexOf(t)=="-1"){
				alert("You have invalid characters in your ZIP code.  Please correct and try again");
				return false
			}
		}
		setZipCityStateCookie($j('#m_czip').val(),30);
		$j('#recViewed .zip_info span').html($j('#m_czip').val());
		$j('#newSearch #new_loc_zip').val($j('#m_czip').val());
		$j('#usedSearch #used_loc_zip').val($j('#m_czip').val());
		$j('#maintraffic').val($j('#m_czip').val());
		$j('#recViewed .zip_info').show();
		$j('#recViewed .change_zip').hide();
		return false
	});
	$j('#recViewed a.info').bind('click',function(){
		if($j('#recModelData').css("display")=='block'){
			$j('#recModelData').hide()
		}
		if($j('#recViewed .change_zip').css("display")=='block'){
			$j('#recViewed .change_zip').hide()
		}
		$j('#recViewed .zipInfo').show();
		return false
	}).bind("click",bN.click).end();
	if(cVal!=''){
		$j('#recViewed .zip_info span').html(cVal);
		$j('#newSearch #new_loc_zip').val(cVal);
		$j('#usedSearch #used_loc_zip').val(cVal);
	}
	if(null==$j.cookie('makeModelCookie')){
		$j.ajax({
			type:"get",url:"/modules/common/popularVehicles.jsp",success:function(data){
				$j('#recModelData').html('<div class="adata">'+data+'</div><div class="close_rv"><a href="#close_rv"><span>Close</span></a></div>');
				$j('.model_data .close_rv a').bind('click',function(){
					$j('#recModelData').slideToggle('fast');
					return false
				}).bind("click",bN.click).end()
			},error:function(errorData){
				$j('#recModelData').html("<div style='padding:0 0 5px 68px'>Currently you don't have any recently viewed vehicles</div>"+'<div class="close_rv"><a href="#close_rv"><span>Close</span></a></div>');
				$j('.model_data .close_rv a').bind('click',function(){
					$j('#recModelData').slideToggle('fast');
					return false
				}).bind("click",bN.click).end()
			}
		}
	)}
	if($j.cookie('makeModelCookie')){
		$j('#recModelData').html('');
		var data=$j.cookie('makeModelCookie').split('~').reverse();
		var tData='<h4 class="left">Vehicle</h4><h4 class="right">MSRP</h4><div class="mdata"><table>';
		$j.getScript('/cars-js/cars-makemodel_data.jsp?ck=makeModelCookie',function(){
			$j(data).each(function(i){
				var ldata=data[i].split(',');
				var make=ldata[0].replace('"','');
				var model=ldata[1];
				var year=ldata[2].replace('"','');
				var dObj=makeModelDetails[make+','+model+','+year+''];
				var trClass="dRow";
				if(eval(i+1)==data.length){var trClass='dRow noBor'}
				var mmVal=year+' '+make+' '+model;
				var mmConVal=mmVal;
				if(mmVal.length>22){
					var mmConVal=mmVal.substring(0,22)+'&hellip;';
				}
				tData+='<tr class="'+trClass+'"><td class="left"><a href="/cars-overview.jsp?make='+escape(make)+'&amp;model='+escape(model)+'&amp;pdata=&amp;year='+year+'" class="mlink" title="'+mmVal+'">'+mmConVal+'</a>';
				if(year >= 2008){
					tData+='<a href="/getaquote?make='+escape(make)+'&amp;model='+escape(model)+'&amp;year='+year+'">Get Dealer Quotes</a>'
				}else{
					if(cVal!=''){
						tData+='<a href="/used-listing-page.jsp?make1='+escape(make)+'&amp;model1='+escape(model)+'&amp;year1='+year+'&location='+cVal+'">Find For Sale</a>'
					}else{
						tData+='<a href="/used-listing-page.jsp?make1='+escape(make)+'&amp;model1='+escape(model)+'&amp;year1='+year+'">Find For Sale</a>'
					}
				}
				tData+='</td><td class="right"><span>$'+dObj['highMsrp']+'</span></td></tr>';
			});
			tData+='</table></div><div class="close_rv"><a href="#close_rv"><span>Close</span></a></div>';
			$j('#recModelData').html(tData).find('.close_rv a').bind('click',function(){
				$j('#recModelData').slideToggle('fast');
				return false
			}).bind("click",bN.click).end();
		});
		$j('#recViewed .title').addClass('hasVeh').find('span:eq(1)').html(data.length).show()
	}
	$j('#recViewed .zipInfo').append('<div class="close_rv"><a href="#close_rv"><span>Close</span></a></div>');
	$j('.zipInfo .close_rv a').bind('click',function(){
		$j('#recViewed .zipInfo').hide();
		return false
	}).bind("click",bN.click).end()
}

function search_init(sPos){
	if(sPos=='h'){
		var formObj=jq('#navSearch');
		var queryObj=jq('#navSearch').find(':first');
		var lObj = jq('#topquery');
		var sObj = jq('#search');
	}else{
		var formObj=jq('#navSearchB');
		var queryObj=jq('#navSearchB').find(':first');
		var lObj = jq('#botquery');
		var sObj = jq('#searchB');
	}
	queryObj.attr('disabled','');
	formObj.bind('submit',function(){if(queryObj.val()=='search by make, model, etc.' || queryObj.val()=='Search Here'){queryObj.val('')}});
	jq(window).ready(function(){
		queryObj.bind('blur',function(){restoreDefVal(this);$j(this).css({color:'#666'})});
		queryObj.bind('click',function(){clearDeSearchfVal(this);$j(this).css({color:'#000'})});
		sObj.find('.webMenu > li a.nav_search').each(function(i){
			if(jq(this).text() != 'Autos'){
				jq(this).bind('click',function(){
					return nav_submitLink(this,formObj,lObj,i)
				})
			}else{
				jq(this).bind('click',function(){
					return false
				})
			}
		})
	})
}


