var favClass = 'favItem1';
var favInited = false;
var favIds = new Array();
var _COOK = null;
var cookIdsData = new Array();
var detailLinkTpl = new String('/more-info/|T|:|ID|.html');

var frm_email='';
var frm_pass = '';

function addToFav(rId,t){

	var hasId = jQuery.inArray(rId,favIds);
	if( hasId > -1) return;

	if( favIds.length == 5) {
		alert("You need to delete one of the favourites to add a new one.\n There can be up to 5 properties.");
		return;
	}

	favIds.push(rId);
    if( !t){
		var title = $('#t_'+rId).text();
    }else { var title = t}

	var htm = getFavItemHTML(rId,title);
	if( ! favInited){
		$('#fav').html('');
	}

	$('#fav').append(htm);
	if( ! favInited ){
		htm = '<div class="padding-top"><div align="right" class="make"> \
		 <a href="/compare">compare all</a>&nbsp;&#8226;&nbsp; \
		 <a href="#" onclick="js:deleteAllFav()">delete all</a> </div></div>';

		$('#subFav').html(htm);
		favInited = true;
	}

	var s = new Object();//['t':title , 'id':rId];
	s.t = title;
	s.id = rId;
	cookIdsData.push(s);
	_COOK.set('favIds',cookIdsData);

	return false;
}



function initCook(){
	// load the cookieJar into an object
    _COOK = $.cookieJar('cook');

    // get the name from the cookieJar
    var favIds = _COOK.get('favIds');

    // check that the name is defined
    if (typeof favIds != 'undefined') {
      populateFav(favIds)
    }


}

function populateFav(arr){
	 $.each(arr, function(i, v) {
        addToFav(v.id , v.t);
    });
}

function cleanForUrl(str){
	var S = new String(str);
	var re = new RegExp('\\W+', "g");
	return S.replace(re ,'-');
}


function getFavItemHTML(id,title){
	var t = cleanForUrl(title);
	var dLink = detailLinkTpl.replace('|ID|',id).replace('|T|',t);
	favClass =  favClass =='favItem2'  ? 'favItem1'  : 'favItem2';
	var toAdd = '<a href="'+dLink+'"  ><b>'+title+'</b></a>';
	var htm =  '<div class="favourite" id="f_'+id+'"> \
					<div class="'+favClass+'">'+toAdd+
				 	'</div> \
					<div class="make"> \
				 		<a href="'+dLink+'">see details</a>&nbsp;&#8226;&nbsp; \
				 		<a href="#" onclick="js:removeFav(\''+id+'\')">delete</a> \
					</div> \
				</div>';
		 return htm;

}

function removeFav(rId){
	//alert($('#f_'+rId).html());
	$('#f_'+rId).remove();
	var newIdsData = new Array();
	for( i in cookIdsData){
		if(cookIdsData[i].id == rId){
			cookIdsData[i].id=null;
			cookIdsData[i].t=null;
		}else{
			if(cookIdsData[i].id != null)
				newIdsData.push(cookIdsData[i]);
		}
	}
	cookIdsData = newIdsData;
	var  newFavIds = new Array();
	for( k in favIds){
		if(favIds[k] == rId){
			favIds[k]=null;
		}else{
			newFavIds.push(favIds[k]);
		}
	}
	favIds = newFavIds;

	_COOK.set('favIds',cookIdsData);

}

function deleteAllFav(){
	$('#fav').html('<div class="text1">All Favorites Removed</div>');
	$('#subFav').html('');

	cookIdsData = new Array();
	favIds = new Array();
	favInited = false;

	_COOK.set('favIds',cookIdsData);
}


function srcbox(){
	//$('#box').val();
	_COOK.set('boxt',$('#box').val());
	return true;
}

function updateModels(make){
	if( ! make) return;
	var url = '/ajax/models?make='+escape(make);
		//var pars = 'someParameter=ABC';

	$.get(url, function (data){
		$('#model_holder').html(data);
	}
	);

}



function refresh(){
	window.location.reload();
}

function pop(m){
	//alert(m);
	$.facebox(m);
}

jQuery(function($) {
	initCook();
	if($('#box').size() > 0){
		$('#box').val(_COOK.get('boxt'));
		_COOK.set('boxt','');
	}

	$('#more_makes').facebox();

	if($('.fcbox').size() > 0){
		$('.fcbox').facebox();
	}
	try{
		$("#box").suggest("/s.php",{
		onSelect: function() { $('#box').val(this.val); $('#box').focus()}});
	}catch(e){}


	try{
	if( !isLogged){
		$('a.login_form').cluetip({local:true, cursor: 'pointer', sticky: true, closePosition: 'top', arrows: false, width: 150,dropShadow: false,showTitle:false, closeText: '<b>close</b>'});
	}
	  $('a.adv_form_link').cluetip({local:true, activation:'click', cursor: 'pointer', sticky: true, closePosition: 'top', arrows: false, width: 250,dropShadow: false,showTitle:false, closeText: '<b>close</b>'});
		$('a.sample_ss_link').cluetip({local:true, activation:'click', cursor: 'pointer', sticky: true, closePosition: 'top', arrows: false, width: 230,dropShadow: false,showTitle:false, closeText: '<b>close</b>'});
	}catch(e){}


});