if( typeof(ecarlist) !== 'object' ){ ecarlist = {}; }
ecarlist.te = {
	ele: null,
	ele_enter: null,
	ele_leave: null,
	timeout_enter: null,
	timeout_leave: null,
	ele_tracker: null,
	make_tracker: null,
	base_url: null,
	location_make: {
		audi: 1981,
		porsche: 1982,
		saab: 1983
	},
	images: [
		'moreDiv_logoBig.jpg',
		'moreDiv_bg.jpg'
	],	
	timeout_duration: 250,
	build_url: function(id){
		var urls = ecarlist.te.urls;
		var url = 'http://';
		if( urls.testing ){
				url += id + '.testing.ecarlist.com';
		}else{
			if( urls.domains[ecarlist.location] ){
				url += urls.domains[ecarlist.location];
			}else{
				url += id + '.ecarlist.com';
			}
		}
		return url;
	},
	mouseenter: function(){
		var ele = ecarlist.te.ele_enter;
		$(ele).children('a').stop().animate({ top: "15px" });
		$(ele).children('ul.makeButton_links').stop().animate({ top: "138px" });
		ecarlist.te.ele_enter = null;
	},
	mouseleave: function(){
		var ele = ecarlist.te.ele_leave;
		$(ele).children('a').stop().animate({ top: "60px" });
		if( $ec(ele).attr('id') != ecarlist.te.ele_tracker ){
			$(ele).children('ul.makeButton_links').stop().animate({ top: "270px" });		
		}
		ecarlist.te.ele_leave = null;
	},
	more_link: function(ele){ // removes make buttons
		var par = $ec(ele).parent().parent().parent();
		var elements = $('#home_bottom').children('.make_button');
		ecarlist.te.ele_tracker = $ec(par).attr('id');
		for( var count = elements.length - 1; count >= 0; count-- ){
			var ele = elements[count];
			var anim = { };
			var pos = $ec(ele).position();
			var offset = pos.left - 0;
			var width = $ec(ele).width();
			width += parseInt($ec(ele).css("margin-left"), 10) + parseInt($ec(ele).css("margin-right"), 10);
			width -= 0;
			offset += width;
			anim.left = '-' + offset + 'px';
			if( $ec(ele).attr('id') == ecarlist.te.ele_tracker ){
				$ec(ele).css({
					'z-index': 3
				});
				var fun = function() {
					ecarlist.te.show_more();
					ecarlist.te.unbind_make_events();
				};
			}else{
				$ec(ele).css({
					'z-index': 2
				});
				var fun = '';
			}
			$ec(elements[count]).animate(anim, 'slow', fun);
		}
	},
	show_more: function(){ // displays selected make block
		var make = ecarlist.te.ele_tracker.split('_');
		make = make.pop();
		ecarlist.te.make_tracker = make;
		ecarlist.location = ecarlist.te.location_make[make];
		ecarlist.base_url = ecarlist.te.build_url(ecarlist.location);
		ecarlist.te.load_specials_wrap();
		var ele = $ec('#more_container_' + make);
		$ec(ele).show();
		$ec(ele).siblings()
			.hide();
		$ec(ele).parent()
			.hide()
			.css('z-index', 0)
			.fadeIn('fast', function(){
				$ec(this).css('z-index', '5');
				$ec('#about_content').fadeOut('fast');
			});
	},
	swap_more: function(make){
		var cur_ele = $ec('#more_container_' + ecarlist.te.make_tracker);
		make = make.split(' ')[0].split('_');
		make = make[make.length - 1];
		var ele = $ec('#more_container_' + make);
		$('#specials_flash').empty();
		$ec(cur_ele).fadeOut('fast', function(){
			$ec(this).css('z-index', '0');
			swapSelectClass();
      $('#finderContent').remove();
		});
		$ec('#specials_wrap').attr('className', make)
		$ec(ele).fadeIn('fast', function(){
			ecarlist.te.make_tracker = make;
			ecarlist.location = ecarlist.te.location_make[make];
			ecarlist.base_url = ecarlist.te.build_url(ecarlist.location);
			ecarlist.te.load_specials();
		});
	},
	close_more: function(){
		$ec('#about_content').fadeIn('fast');
		$ec('#specials_wrap')
			.fadeOut('fast', function(){
				$ec(this).css('z-index', '-3');
				$('#specials_flash').empty();
				swapSelectClass();
        $('#finderContent').remove();
			});
		$ec('#more_container')
			.css('z-index', 0)
			.fadeOut('fast', function(){
				$ec('.more_container')
					.hide();
				$ec(this).css('z-index', '-3');
				ecarlist.te.show_makes();
			});
	},
	show_makes: function(){
		var elements = $('#home_bottom').children('.make_button');
		ecarlist.te.ele_tracker = null;
		for( var count = elements.length - 1; count >= 0; count-- ){
			var ele = elements[count];
			$ec(ele).children().attr('style', '');
			var anim = { };
			anim.left = '0px';
			$ec(elements[count]).animate(anim, 'slow', function(){
				$ec(ele).css({
					'z-index': ''
				});
				ecarlist.te.bind_make_events();
			});
		}
	},
	load_specials_wrap: function(){
		$ec('#specials_wrap')
			.hide()
			.attr('className', ecarlist.te.make_tracker)
			.css('z-index', 0)
			.fadeIn('fast', function(){
				$ec(this).css('z-index', '5');
			});
		$ec('#fyc_price > a').click(function(){
			buildContent('price');
			return false;
		});
		$ec('#fyc_type > a').click(function(){
			buildContent('body');
			return false;
		});
		$ec('#fyc_specials > a').click(function(){
			buildSpecials();
			return false;
		});
		$ec('#fyc_more > a').click(function(){
			buildOther();
			return false;
		});		ecarlist.te.load_specials();
	},
	load_specials: function(){
		var so = ecarlist.te.so[ecarlist.te.make_tracker];
		so.addParam('allowfullscreen','false');
  	so.addParam('wmode','transparent');
  	so.addParam('menu','false');
  	so.addParam('allowscriptaccess','always');
  	setTimeout( function(){ so.write('specials_flash'); }, 750 );
	},
	mouse_enter: function(ele){
		if( ecarlist.te.ele_leave == ele ) {
			clearTimeout(ecarlist.te.timeout_leave);
		} else {
			ecarlist.te.ele_enter = ele;
		}
		ecarlist.te.timeout_enter = setTimeout(ecarlist.te.mouseenter, ecarlist.te.timeout_duration)
	},
	mouse_leave: function(ele){
		if( ecarlist.te.ele_enter == ele ) {
			clearTimeout(ecarlist.te.timeout_enter);
		} else {
			ecarlist.te.ele_leave = ele;
		}
		ecarlist.te.timeout_leave = setTimeout(ecarlist.te.mouseleave, ecarlist.te.timeout_duration)
	},
	bind_make_events: function(){
		$ec('.make_button').bind('mouseenter', function(){
			ecarlist.te.mouse_enter(this);		
		});
		$ec('.make_button').bind('mouseleave', function(){
			ecarlist.te.mouse_leave(this);		
		});
	},
	unbind_make_events: function(){
		$ec('.make_button')
			.unbind('mouseleave')
			.unbind('mouseenter');
	}
};

$ec(document).ready(function(){
	ecarlist.te.bind_make_events();
	$ec('.makeButtons_link03').click(function(){
		ecarlist.te.more_link(this);
		return false;
	});
	var more_links = $ec('.more_container > a');
	for( var i = 0; i < more_links.length; i++ ){
		if( more_links[i].className == 'more_container_close' ){
			$ec(more_links[i]).click(function(){
				ecarlist.te.close_more();
				return false;
			})
		} else {
			$ec(more_links[i]).click(function(){
				ecarlist.te.swap_more(this.className);
				return false;
			});
		}
	}
});