// Website Slide Show; author: http://www.reusserdesign.com/
//Helper Function
Array.prototype.in_array = function(p_val) { for(var i = 0, l = this.length; i < l; i++) { if(this[i] == p_val) { return true; } } return false; }
//Global Variables
var preload = new Image(), slideable = true;
preload.src = 'images/tahoma_old.png';
var loading, width = initWidth = 936, slideSpeed = 500, currentSlide = 1, firstImage, pageSeal, search = location.search.replace('?','');;
var slidesNumeric = slideNames = ['index','jon','born','reborn','adventure','preserving','everyone','purpose','source', 'community', 'generations', 'thanks', 'tahoma']; //slide id's go here in order
var nationalPark = new Image();
nationalPark.src = "images/washingNationalPark.png";
//Establishes slide positions throughout slideshow
for( var x = 0; x < slideNames.length; x++ ) {
	slideNames[slideNames[x]] = initWidth * x * -1;
}
//Checks to see if an element (img) is loaded. Once it's loaded it hides the load bar
function checkOnload( element, pendingFunction ) {
	if( element.complete && pageSeal.complete ) {
		setTimeout(hideLoadingBar, 200);
		loading = false;
		if( typeof pendingFunction == 'function' ) {
			pendingFunction();
		}
	}
	else {
		setTimeout(function() { checkOnload(element, pendingFunction); }, 500);
	}
}
//Make decisions based on which slide you are viewing
function viewingSlide( currentSlide ) {
	//adjust viewingWindow height
	var height = $('#slide_'+slidesNumeric[currentSlide-1]).height();
	$('#viewingWindow').css({height: height+'px'});
	if( currentSlide == slidesNumeric.length ) {
		$('#slideRight').animate({opacity: '.2'}, 100);
	}
	switch( currentSlide ) {
		case 1:
			$('#pageSeal').css('display','none');
		break;
		case 2:
			$('#pageSeal').css('display','block');
		break;
		case 3:
			$('#pageSeal').attr('src','images/tahoma_old.png');
		break;
	}
}
//Make decisions based on which slide you are leaving
function leavingSlide( previousSlide, nextSlide ) {
	var pendingFunction = ( nextSlide > previousSlide )? slideLeft:slideRight;
	if( nextSlide-1 >= slidesNumeric.length || nextSlide-1 < 0 )
		return false;
	if( !document.getElementById('slide_'+slidesNumeric[nextSlide-1]).getElementsByTagName('img')[0].complete ) {
		setTimeout(displayLoadingBar, 200);
		loading = true;
		checkOnload(document.getElementById('slide_'+slidesNumeric[nextSlide-1]).getElementsByTagName('img')[0], pendingFunction );
		return false;
	}
	if( previousSlide == slidesNumeric.length ) {
		$('#slideRight').animate({opacity: '1'}, 100);
	}
	switch( previousSlide ) {
		case 1:
		break;
		case 2:
			if( nextSlide != 3 )
				$('#pageSeal').css('display','block');
		break;
		case 3:
			if( nextSlide != 2 )
				$('#pageSeal').attr('src','images/bottle.png');
			else
				$('#pageSeal').attr('src','images/bottle.png');
		break;
	}
	return true;
}
//View previous slide
function slideRight() {
	if( loading )
		return false;
	if( leavingSlide(currentSlide, currentSlide - 1) ) {
		var currentLeft = parseInt($('#slider').css('left').replace('px',''));
		if( currentLeft < 0 && slideable ) {
			currentSlide--;
			slideable = false;
			$('#slider').animate( {left: (currentLeft + initWidth)+'px'}, slideSpeed, function() { slideable = true; } );
		}
		viewingSlide(currentSlide);
	}
}
//View next Slide
function slideLeft() {
	if( loading )
		return false;
	if( leavingSlide( currentSlide, currentSlide + 1 ) ) {
		var currentLeft = parseInt($('#slider').css('left').replace('px',''));
		if( currentLeft > (width - initWidth)*-1 && slideable ) {
			currentSlide++;
			slideable = false;
			$('#slider').animate( {left: (currentLeft - initWidth)+'px'}, slideSpeed, function() { slideable = true; } );
		}
		viewingSlide(currentSlide);
	}
}
function displayLoadingBar() {
	$('#loadingBar').animate({left: '0px'}, 500 );
}
function hideLoadingBar() {
	setTimeout( function() {
		//landing page slide events
		$('#header1').fadeIn('slow', function() {
			setTimeout(function() {
				$('#header2').fadeIn('slow', function() {
					setTimeout(function() {
						$('#slide_index').fadeOut('slow', function() {
							$('#slide_index').replaceWith('<div class="slide" id="slide_index"><img src="images/washingNationalPark.png" style="margin: 100px 0 25px 0"><div class="slideContent">	<h2 style="text-align: center; width: 650px; *width: 725px; font-size: 20px; font-style: italic; line-height: 40px;">Through a partnership with Washington\'s National Park Fund, a portion of the proceeds from sales of Tahoma&reg; Water directly benefit programs and projects in Mount Rainier National Park.</h2><h2 style="text-align: center; width: 650px; *width: 725px; font-size: 20px; font-style: italic; line-height: 40px; margin-top: 25px;">Visit <a href="http://www.wnpf.org"><b>wnpf.org</b></a> to see your support in action and learn how you can become involved.</h2></div></div>');
							$('#slide_index').fadeIn('slow');
						});
					}, 1500);
				});
			}, 1000);
		});
	}, 400);
	$('#seal').css('display','block');
	$('#loadingBar').animate({left: '-460px'}, 500);
}
//When document is loaded into the browser
$(document).ready(function() {
	$('#slideRight').click(function() {slideLeft();});
	$('#slideLeft').click(function() {slideRight();});
	firstImage = document.getElementById('slide_'+slidesNumeric[0]).getElementsByTagName('img')[0];
	pageSeal = document.getElementById('pageSeal');
	if( !firstImage.complete ) {
		//$('#slider').animate({opacity: 0}, 1);
		//$('#seal').css('display','none');
		loading = true;
		setTimeout(displayLoadingBar, 200);
	}
	firstImage.onload = function() { checkOnload( firstImage, false ) };
	//get initial width for slider
	initWidth = $('.slide').width();
	width = $('.slide').size() * initWidth;
	$('#slider').css('width',width+'px');
	if( slideNames.in_array(search) ) {
		$('#slider').css('left',slideNames[search]+'px');
		currentSlide = (slideNames[search] / (initWidth*-1)) +1;
	}
	viewingSlide(currentSlide);
});
