function initHomeSlideshow()
{
	var HomeSlides = $("#HomeSlideshow .Slide");
	if(HomeSlides.size() > 0)
	{
		HomeSlides.not(':first')
			.each(function()
					{
						var sg = $(this);
						sg.addClass('ImageLoading');
						var img = $('<img style="display:none" />');
						img.appendTo('body');
						img.load(function()
									{
										sg.removeClass('ImageLoading');
										img.appendTo(sg).css('display', 'block');									
									})
						img.attr('src', sg.attr('src'))
					});
			
		
		var HomeSlideNav = $('<div class="SlideNav"></div>');
		HomeSlideNav.css('width', HomeSlides.size()*11 + 'px');
		HomeSlideNav.appendTo('#HomeSlideshow');
			
		
		$("#HomeSlideshow .Slides")
			.cycle({ 
				fx:     'fade', 
				speed:  500, 
				sync: true,
				easing: 'easeInOutQuad',
				timeout: 5000, 
				pager: HomeSlideNav
			}); 
	}
}

function initMapTriggers()
{
	$('a.ShowMap')
		.click(function()
				{
					var lnk = $(this);
					lnk.css('display', 'none');
					var slideshow = $("#HomeSlideshow .Slides");
					var slide = lnk.parents('.Slide:first');
					slideshow.cycle('pause');
					slide.css('height', '392px');
					slide.find('.SlideMap').css({
											height: '1px', 
											display: 'block'
										})
							.animate(
									 	{height: '392px'}, 
									 	1000, 
										'easeInOutQuad', 
										function()
										{
												slide.find('img').css('display', 'none');
												slide.find('a.ShowPhotos').fadeIn();
												var mapIframe = slide.find('iframe');
												if(mapIframe.attr('src') != lnk.attr('href'))
													mapIframe.attr('src', lnk.attr('href'));
												mapIframe.css('display', 'block');
										});
					return false;
				});
		
	$('a.ShowPhotos')
		.click(function()
				{
					var lnk = $(this);
					lnk.css('display', 'none');
					var slideshow = $("#HomeSlideshow .Slides");
					var slide = lnk.parents('.Slide:first');
				 	slide.find('iframe').css('display', 'none');
					slide.find('img').css('display', 'block');
					slide.find('.SlideMap').animate(
										  {height: '1px'}, 
										  1000, 
										  'easeInOutQuad', 
										  function()
										  {
											  slide.css('height', '428px');
											  $(this).css('display', 'none');
											  //slideshow.css('height', '428px');
											  slide.find('a.ShowMap').fadeIn();
											  //slideshow.cycle('resume');
										});
					return false;
				})
}

function initHomeQuoteRotation()
{
	var HomeQuotes = $("#HomeQuotes");
	if(HomeQuotes.size() > 0)
	{
		$("#HomeQuotes")
			.cycle({ 
				fx:     'fade', 
				speed:  1000,
				sync: false,
				timeout: 12000
			});
	}
}

function initTwitterFeedRotation()
{
	var twFeedWrapper = $('#TwitterFeed');
	if(twFeedWrapper.size() > 0)
	{
		twFeedWrapper
			.twitterSearch({
								term:  '@amanda', 
								title: '',
								animOut: {opacity: 0}, 
								avatar:  false, 
								anchors: true, 
								bird:    false, 
								pause:   true, 
								time:    false, 
								timeout: 5000,
								applyStyles: false
						   });
	}
}

function initTwitterFeeds()
{
	var tfw = jQuery('#TwitterFeed');
	if(tfw.size() > 0)
	{
		jQuery('#twFeed').remove();
		jQuery('head').append('<script id="twFeed" src="http://search.twitter.com/search.json?q=from%3Aamanda&page=1&rpp=2&callback=displayTwitterFeeds"></script>');
	}
}

function displayTwitterFeeds(JSON)
{
	var tfw = jQuery('#TwitterFeed');	
	var feeds = JSON;
	
	var feedWrapper = jQuery('#TwitterFeed');
	feedWrapper.css('visibility', 'hidden').empty();
	for (var i=0; i< 2; i++)
	{
		feedWrapper.append('<li>' + 
							 '<p title="'+ feeds.results[i]['text'] +'">' + feeds.results[i]['text'] + '</p>' + 
						'</li>');
	}
	feedWrapper.css('visibility', 'visible');
}


function initContactOverlay()
{
	var overlay = $('#ContactOverlay');
	if(overlay.size() == 0)
	{
		var overlay = $('<div id="ContactOverlay" style="display:none"></div>');
		overlay.html('<div class="OverlayContent"></div><a href="#" title="close" class="BtnClose">close</a>')
		overlay.appendTo('body');
	}
	
	var lnkOverlay = $('#Header ul li.contact a');
	lnkOverlay
		.click(function()
				{
					var lnk = $(this);
					var o = overlay.overlay({top: 140, api: true, oneInstance: false, ajax: true, close: '.BtnClose'});
					var overlayContent = overlay.find('.OverlayContent')
					overlayContent.html('<div class="loading">Loading. Please wait...</div>');
					o.load();
					$.ajax({
						   		url: lnk.attr('href'),
								success: function(HTML)
										{
											overlayContent.html(HTML);
											initContactOverlayForm(overlayContent);
											
										},
								error: function()
										{
											overlayContent.html('<div class="notice_warning">An unknown error has occured. Please try again later...</div>');
										}
						   })
					return false;
				})
}

function initContactOverlayForm(overlayContent)
{
	var overlayContent = overlayContent;
	overlayContent
		.find('form')
			.submit(function()
					{
						overlayContent.html('<div class="loading">Loading. Please wait...</div>');
						var frm = $(this);
						$.ajax({
								url: frm.attr('action'),
								type: frm.attr('method'),
								data: frm.serialize(),
								success: function(HTML)
											{
												overlayContent.html(HTML);
												initContactOverlayForm(overlayContent);
											}
							   })
					})
}

jQuery(function(){
	initContactOverlay();
	initHomeSlideshow();
	initMapTriggers();
	initHomeQuoteRotation();
	//initTwitterFeedRotation();
	initTwitterFeeds()
});
