// JavaScript Document
var loadedHTML = '';
var navigation = '<li id="home"><a href="about.htm"><span>Home</span></a></li><li id="about_us"><a href="about.htm"><span>About Us</span></a></li><li id="testimonials"><a href="testimonials.htm"><span>Testimonials</span></a></li>	<li id="contact"><a href="contact.htm"><span>Contact</span></a></li>';
var inSpotlight = false;
var spotlightImages = new Array();
var currentSpotlightIndex = 0;
var currentAJAX;

function replaceURLWithHTMLLinks(text) {
  var exp = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;
  return text.replace(exp,"<a href='$1'>$1</a>"); 
}


$(function(){

	$('#contact_submit').after('<a href="javascript:void(0);" id="contact_submit_text">Send &gt;</a>');
	$('#contact_submit').remove();
	$('#contact_submit_text').click(function() { $('#contact_form').submit(); });
	
	initialiseNavigation();
	
	$.getJSON('http://twitter.com/statuses/user_timeline/markshepherd.json?count=3&callback=?', gotTweet);
	
});

function gotTweet(json)
{
	$('#siteholder').append('<div id="tweetpopup"><a href="javascript:void(0);" id="close_tweet"></a><a href="http://www.twitter.com/markshepherd" target="_blank"id="follow_mark"></a><p>'+replaceURLWithHTMLLinks(json[0].text)+'<span>'+getTweetTime(json[0].created_at).toLocaleString().substr(0,25)+'</span></p><p>'+replaceURLWithHTMLLinks(json[1].text)+'<span>'+getTweetTime(json[1].created_at).toLocaleString().substr(0,25)+'</span></p><p>'+replaceURLWithHTMLLinks(json[2].text)+'<span>'+getTweetTime(json[2].created_at)+'</span></p></div>');
	$('#social').append('<a href="javascript:void(0);" id="read_tweets"><img src="images/read_tweets.png" width="148 height="11" alt="Read our latest Tweet"></a>');
	$('#read_tweets').click(function() { $('#tweetpopup').fadeIn(); });
	$('#close_tweet').click(function() { $('#tweetpopup').fadeOut(); });
}

function getTweetTime(tweetTime)
{
	var tweetTimeString = '';
	
	var now = new Date();
	var then = new Date(Date.parse(tweetTime));
	var milliseconds = now.getTime() - then.getTime();
	
	milliseconds /= 1000;
	milliseconds /= 60;
	milliseconds /= 60;
	milliseconds = Math.floor(milliseconds);
	
	if (milliseconds < 1)
	{
		tweetTimeString = 'less than an hour ago';
	}
	else if (milliseconds > 23)
	{
		milliseconds /= 24;
		milliseconds = Math.floor(milliseconds);
		tweetTimeString = milliseconds+' days ago';
	}
	else
	{
		tweetTimeString = milliseconds+' hours ago';
	}
	
	return tweetTimeString;	
}

function initialiseNavigation(donotresetsifr)
{
	$("#navigation a").hover(function(){
 			$(this).stop().animate({marginTop:"0px"}, "fast");
 		}, function(){
 			$(this).stop().animate({marginTop:"-20px"}, "fast");
 		});	

	$('#home a').click(loadHome);
	$('#home a').attr('href','javascript:void(0);');

	$('#about_us a').click(loadAboutUs);
	$('#about_us a').attr('href','javascript:void(0);');
	
	$('#testimonials a').click(loadTestimonials);
	$('#testimonials a').attr('href','javascript:void(0);');

	$('#contact a').click(loadContact);
	$('#contact a').attr('href','javascript:void(0);');
	
	$('#client_spotlight li a').click(loadSpotlight);
	$('#client_spotlight li a').attr('href','javascript:void(0);');
	
	$('.testimonial_thumbs').attr('href', 'javascript:void(0);');
	$('.testimonial_thumbs').click(loadTestimonial);
	
	$('#prev a').mouseover(jinkyLeft);
	$('#prev a').mouseout(jinkyCentre);
	$('#next a').mouseover(jinkyRight);
	$('#next a').mouseout(jinkyCentre);
	$('#prev a').click(spotlightPrev);
	$('#next a').click(spotlightNext);
	
	sIFR.replace(basenine, {
		selector: "h2",
		css: [
			'.sIFR-root { font-size:14px; font-weight:normal; color:#000000; }'
		],
		wmode: 'transparent'
	});

}

function jinkyLeft()
{
	$('#floating').stop().animate({left: 190},{"easing":"easeOutBounce"});	
}
function jinkyCentre()
{
	$('#floating').stop().animate({left: 202},{"easing":"easeOutBounce"});	
}
function jinkyRight()
{
	$('#floating').stop().animate({left: 214},{"easing":"easeOutBounce"});	
}

function loadTestimonial()
{
	uninitialiseNavigation();
	inSpotlight = false;
	//$('body').addClass('nooverflow');
	$('#client_spotlight li a').removeClass('selected');
	if (currentAJAX) { currentAJAX.abort(); }
	currentAJAX = $.ajax({
      url: "index.php?page_id="+$(this).attr('rel')+"&jc=1",
      type: "GET",
      dataType: "html",
      success: populateTestimonial
   });	
}
function populateTestimonial(html)
{
	loadedHTML = html;
	$('#floating').animate({left: -2000},1000, showTestimonial);
}
function showTestimonial()
{
	$('#floating').html(loadedHTML);
	$('#floating').css({left: 2000}).animate({left:202},1000, initialiseNavigation); //, function() {$('body').removeClass('nooverflow');}
	
}

function uninitialiseNavigation()
{
	$('#home a').unbind();
	$('#about_us a').unbind();
	$('#testimonials a').unbind();
	$('#contact a').unbind();
	$('.testimonial_thumbs').unbind();
	$('#client_spotlight li a').unbind();
	$('#prev a').unbind();
	$('#next a').unbind();
}

function loadHome()
{
	inSpotlight = false;
	$('#client_spotlight li a').removeClass('selected');
	if (currentAJAX) { currentAJAX.abort(); }
	currentAJAX = $.ajax({
      url: "index.php?jc=1",
      type: "GET",
      dataType: "html",
      success: populateHome
   });
}

function populateHome(html)
{
	loadedHTML = html;
	$('#content').fadeOut(showHome);
}

function showHome()
{
	//uninitialiseNavigation();
	$('#navigation').html(navigation);
	var linkcontent = $('#home a').html();
	$('#home a').remove();
	$('#home').append(linkcontent);
	$('#home').addClass('selected');
	//initialiseNavigation();

	$('#content').html(loadedHTML);
	$('#content').fadeIn(initialiseNavigation);	//
	
	$('#menu_arrow').removeClass('hideme');
	$('#menu_arrow').animate({left: 40});
}




function loadAboutUs()
{
	inSpotlight = false;
	$('#client_spotlight li a').removeClass('selected');
	if (currentAJAX) { currentAJAX.abort(); }
	currentAJAX = $.ajax({
      url: "index.php?page_id=7&jc=1",
      type: "GET",
      dataType: "html",
      success: populateAboutUs
   });
}

function populateAboutUs(html)
{
	loadedHTML = html;
	$('#content').fadeOut(showAboutUs);
}

function showAboutUs()
{
	//uninitialiseNavigation();
	$('#navigation').html(navigation);
	var linkcontent = $('#home a').html();
	$('#about_us a').remove();
	$('#about_us').append(linkcontent);
	$('#about_us').addClass('selected');
	//initialiseNavigation();

	$('#content').html(loadedHTML);
	$('#content').fadeIn(initialiseNavigation);	 //
	
	$('#menu_arrow').removeClass('hideme');
	$('#menu_arrow').animate({left: 120});
}




function loadTestimonials()
{
	//uninitialiseNavigation();
	inSpotlight = false;
	$('#client_spotlight li a').removeClass('selected');
	if (currentAJAX) { currentAJAX.abort(); }
	currentAJAX = $.ajax({
      url: "index.php?page_id=15&jc=1",
      type: "GET",
      dataType: "html",
      success: populateTestimonials
   });
}

function populateTestimonials(html)
{
	loadedHTML = html;
	$('#content').fadeOut(showTestimonials);
}

function showTestimonials()
{
	//uninitialiseNavigation();
	$('#navigation').html(navigation);
	var linkcontent = $('#testimonials a').html();
	$('#testimonials a').remove();
	$('#testimonials').append(linkcontent);
	$('#testimonials').addClass('selected');
	

	$('#content').html(loadedHTML);
	//initialiseNavigation();
	$('#content').fadeIn(initialiseNavigation); //
	
	$('#menu_arrow').removeClass('hideme');
	$('#menu_arrow').animate({left: 225});
}
 



function loadContact()
{
	inSpotlight = false;
	$('#client_spotlight li a').removeClass('selected');
	if (currentAJAX) { currentAJAX.abort(); }
	currentAJAX = $.ajax({
      url: "index.php?page_id=17&jc=1",
      type: "GET",
      dataType: "html",
      success: populateContact
   });
}

function populateContact(html)
{
	loadedHTML = html;
	$('#content').fadeOut(showContact);
}

function showContact()
{
	//uninitialiseNavigation();
	$('#navigation').html(navigation);
	var linkcontent = $('#contact a').html();
	$('#contact a').remove();
	$('#contact').append(linkcontent);
	$('#contact').addClass('selected');
	//initialiseNavigation();

	$('#content').html(loadedHTML);
	$('#content').fadeIn(initialiseNavigation); //
	
	$('#menu_arrow').removeClass('hideme');
	$('#menu_arrow').animate({left: 335});
	
	$('#contact_submit').after('<a href="javascript:void(0);" id="contact_submit_text">Send &gt;</a>');
	$('#contact_submit').remove();
	$('#contact_submit_text').click(function() { $('#contact_form').submit(); });
}








function loadSpotlight()
{
	//if (inSpotlight)
	//{
	//	uninitialiseNavigation();
	//	$.ajax({
	//	  url: "index.php?page_id="+$(this).attr('rel')+"&jc=1",
	//	  type: "GET",
	//	  dataType: "html",
	//	  success: populateSpotlightSweepPrev
	//   });	
	//	$('body').addClass('nooverflow');
	//}
	//else
	//{
	//	inSpotlight = true;
	if (currentAJAX) { currentAJAX.abort(); }
	currentAJAX = $.ajax({
	  url: "index.php?page_id="+$(this).attr('rel')+"&jc=1",
	  type: "GET",
	  dataType: "html",
	  success: populateSpotlight
   });
	//}
	$('#client_spotlight li a').removeClass('selected');
	$(this).addClass('selected');
}

function populateSpotlight(html)
{
	loadedHTML = html;
	$('#content').fadeOut(showSpotlight);
}

function showSpotlight()
{
	//uninitialiseNavigation();
	$('#navigation').html(navigation);
	

	$('#content').html(loadedHTML);
	spotlightImages = new Array();
	$('#floating img').each(function() { spotlightImages.push($(this).attr('src')); } );
	$('#image_holder img').each(function() { spotlightImages.push($(this).attr('src')); } )
	currentSpotlightIndex = 0;
	
	//for (var a=0; a<spotlightImages.length; a++)
	//	alert(spotlightImages[a]);
	
	//$('#controls').append('<div id="prev"><a href="javascript:void(0);" rel=""><img src="images/previous.png" width="35" height="35" alt="Previous"></a></div><div id="next"><a href="javascript:void(0);" rel=""><img src="images/next.png" width="35" height="35" alt="Next"></a></div>');
	//initialiseNavigation();
	$('#content').fadeIn(initialiseNavigation);	 //
	
	$('#menu_arrow').addClass('hideme');
}
 
 
 
 
function spotlightPrev()
{
	uninitialiseNavigation();
	
	currentSpotlightIndex -= 2;
	
	if (currentSpotlightIndex < 0)
		currentSpotlightIndex = 0;
		
	$('#floating').animate({left: -2000},1000, showSpotlightSweepPrev);
	
	//
	
	//$.ajax({
    //  url: "index.php?page_id="+$(this).attr('rel')+"&jc=1",
    //  type: "GET",
    //  dataType: "html",
    //  success: populateSpotlightSweepPrev
   //});	
	
	//$('#client_spotlight li a').removeClass('selected');
	//$(this).addClass('selected');
	//$('body').addClass('nooverflow');
}
function populateSpotlightSweepPrev(html)
{
	//loadedHTML = html;
	//$('#content_header').fadeOut();
	//$('#floating').animate({left: -2000},1000, showSpotlightSweepPrev);
}
function showSpotlightSweepPrev()
{
	$('#fl_1 img').attr('src',spotlightImages[currentSpotlightIndex]);
	$('#fl_2 img').attr('src',spotlightImages[currentSpotlightIndex+1]);
	
	//$('#content').html(loadedHTML);
	////initialiseNavigation();
	//$('#content_header').hide();
	//$('#content_header').fadeIn(initialiseNavigation);
	
	$('#floating').css({left: 2000}).animate({left:202},1000, initialiseNavigation);
	$('body').removeClass('nooverflow');
}



function spotlightNext()
{
	uninitialiseNavigation();
	
	currentSpotlightIndex += 2;
	
	if (currentSpotlightIndex > spotlightImages.length - 1)
		currentSpotlightIndex = 0;
		
	$('#floating').animate({left: 2000},1000, showSpotlightSweepNext);
	
	//$('body').addClass('nooverflow');
	
	//uninitialiseNavigation();
	//$.ajax({
    //  url: "index.php?page_id="+$(this).attr('rel')+"&jc=1",
    //  type: "GET",
    //  dataType: "html",
    //  success: populateSpotlightSweepNext
   //});
	
	//$('#client_spotlight li a').removeClass('selected');
	//$(this).addClass('selected');
	//$('body').addClass('nooverflow');
}
function populateSpotlightSweepNext(html)
{
	//loadedHTML = html;
	//$('#content_header').fadeOut();
	//$('#floating').animate({left: 2000},1000, showSpotlightSweepNext);
}
function showSpotlightSweepNext()
{
	$('#fl_1 img').attr('src',spotlightImages[currentSpotlightIndex]);
	$('#fl_2 img').attr('src',spotlightImages[currentSpotlightIndex+1]);
	
	$('#floating').css({left: -2000}).animate({left:202},1000, initialiseNavigation);
	$('body').removeClass('nooverflow');
	
	//$('#content').html(loadedHTML);
	////initialiseNavigation();
	//$('#content_header').hide();
	//$('#content_header').fadeIn(initialiseNavigation);
	
	//$('#floating').css({left: -2000}).animate({left:202},1000);
	
	//$('body').removeClass('nooverflow');
}

