jQuery.extend({
	debug: function(info){
		$("#debugger").html($("#debugger").html() + '<br/>\n' + info)
	}
});

var exervio = {
	menu: {
		reset: function(){
			$("#nav div.selected").removeClass('selected').end()
		},
		realign_after_select: function(item, ref){
			refLeft = ref.offset().left
			itemLeft = item.offset().left
			if (itemLeft != refLeft) {
				newLeft = itemLeft - refLeft
				item.css('margin-left', '-'+(newLeft)+'px')
			}
		},
		do_shade: function(){
			$("#nav div.focus").prepend('<div id="navShade"></div>')
			if ($.browser.msie && (parseInt($.browser.version) <= 6)){
				$("#navShade").css('opacity', 0.5)
			}
		},
		select: function(which){
			exervio.menu.reset();
			which.addClass('selected');
			exervio.menu.realign_after_select(which.find('ul'), $("#navShade"));	
		},
		select_current_page: function(){
			$("#nav div.section").each(function(index) {
				if($(this).is('.'+$('body').attr('class'))){
					exervio.menu.select($(this));
				}
			});
		},
		setup_fuctionality: function(){
			$('#nav').addClass('js')
				.find('h2')
					.addClass('acts_as_link')
					.bind('click', function(){
						exervio.menu.select($(this).parent());
					})
					.siblings('ul').removeClass('hidden')
			exervio.menu.select_current_page();
		}
	},
	slideshow: {
		setup: function(){
			if($('body').is('.home')){
				$("#company div.focus h2").before('<div id="slideshow"></div>');
				$("#slideshow").css({position:'absolute', width: '100%', height: '100%'})
				exervio.slideshow.addSlides();
				exervio.slideshow.animate()
			}
		},
		options: {
			details: [
				['1-t.jpg','Driving Business Performance Improvement'],
				['2-t.jpg','$1 Billion of Net Client Value<br />to be Delivered by 2025'],
				['3-t.jpg','Over 90% of Projects<br />from Repeat Clients'],
				['4-t.jpg','Strategic, Longstanding Relationships<br />with Local crown-jewel clients'],
				['5-t.jpg','Accountable for results,<br />responsible for delivery'],
				['6-t.jpg','Focus on Tangible Operational Results']
			],
			image_location: 'images/headers/'
		},
		addSlides: function(){
			$.each(exervio.slideshow.options.details, function(i,n){
				// $("#slideshow").append('<div id="slide_'+ i +'"><p>'+n[1]+'</p></div>')
				$("#slideshow").append('<div id="slide_'+ i +'"></div>')
				$("#slide_"+i)
					.css({
						background:'url("'+ exervio.slideshow.options.image_location + n[0] + '")',
						display: 'none'})
					.bind('focus.exervio',function(){
						$(this)
							.fadeIn('slow',function(){
								$(this).find('p').trigger('focus.exervio');
							})
							.siblings().trigger('blur.exervio')
					})
					.bind('blur.exervio',function(){
						$(this).fadeOut(3000).find('p:visible').trigger('blur.exervio');
					})
					.find('p')
						.bind('focus.exervio',function(){
							$(this).animate({opacity: '1'}, 6000, 'swing',function(){
								$(this).trigger('blur.exervio');
							});
						})
						.bind('blur.exervio',function(){
							$(this).animate({opacity: '0'},2000)
						})
					
			})
			$("#slide_0").trigger('focus.exervio');
		},
		animate: function(){
			counter = 1;
			setInterval(function(){				
				$('#slide_'+counter).trigger('focus.exervio');
				counter < exervio.slideshow.options.details.length ? counter++ : counter = 0;
			}, 6000);
				
		}
	},
	testimonials: {
		setup: function(){
			if($('body').is('.home')){
				$("#testimonials div.quote:not(:first)").hide();
				last_one = $("#testimonials div.quote:last");
				setInterval(function(){
					next_one = $("#testimonials div.quote:visible").next();
					$("#testimonials div.quote:visible").hide('slow')
					if(last_one.is(":visible")){
						$("#testimonials div.quote:first").show('slow');
					} else {
						next_one.show('slow');
					}
				},12000);
			}
		}
	}
}

$(function(){
	$('body').prepend('<div id="debugger"><div>')
	$("#debugger")
		.css({
			'position':'absolute',
			'z-index':2,
			'color':'red'
		})
	// add nav background holder
	exervio.menu.do_shade();
	// setup click functions for menus
	exervio.menu.setup_fuctionality();
	
	exervio.menu.select_current_page();
	
	exervio.slideshow.setup()
	exervio.testimonials.setup()
	
	var t = setTimeout(exervio.menu.select_current_page, 500);
	
})