var bgImages = new Array(
	Array('img/bg/2012-02/PJWA-recording-01_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-02_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-03_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-04_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-05_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-06_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-07_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-08_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-09_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-10_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-11_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-12_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-13_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-14_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-15_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-16_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-17_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-18_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-19_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-20_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-21_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-22_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-23_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-24_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-25_JQuigley.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/2012-02/PJWA-recording-26_JQuigley.jpg', 'Photo by: Jason Quigley')

/*
	Array('img/bg/IMG_7244.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7245.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7255.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7265.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7276.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7285.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7297.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7302.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7304.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7313.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7315.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7318.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7323.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7327.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7330.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7333.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7339.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7342.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7356.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7359.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7361.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7362.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7365.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7368.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7386.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7388.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7389.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7391.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7395.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7408.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7424.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/IMG_7429.jpg', 'Photo by: Jason Quigley')

	Array('img/bg/Artistery_JQuigley03.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/Artistery_JQuigley01.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/Artistery_JQuigley04.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/Artistery_JQuigley05.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/Artistery_JQuigley06.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/Artistery_JQuigley07.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/Artistery_JQuigley08.jpg', 'Photo by: Jason Quigley'), 
	Array('img/bg/Artistery_JQuigley09.jpg', 'Photo by: Jason Quigley') */
	);	
	
var ssInterval = 0;	//interval object
var ssTime = 15000;	//time per slide
var ssReveal = 400;
var bgImageIndex = Math.floor(Math.random()*bgImages.length);

var headerHeight = 82;
var footerHeight = 16;
var bgImageId = "bg";
var bgImageCreditId = "bgCredit";
var bgImageWidth = 1200;
var bgImageHeight = 796;
var bgImageRatio = bgImageWidth/bgImageHeight;

var jqxhr_pageRequest = new Object();	// the jqXHR object that will pull page data
var playerExpanded = true;

$(function(){
	headerHeight = $('header').height();
	footerHeight = $('footer').height();
	
	//setup resizable background	
	$(window).bind('resize',resizeBackground); 
	resizeBackground();

	//set background image
	advanceSlideShow();

	//setup interval/slideshow	
	ssInterval = startSlideShow();

	//menu hover animation
	$('#menu a').hover(
		function() { $(this).stop().animate({color:'#333'},150); },
		function() { 
			if (!$(this).hasClass('active')) {
				$(this).stop().animate({color:'#777'},150); 
			}
		}
	);
	

	//hash change (button navigation)
	$(window).hashchange( function(){
		menuChange();
	});
		
	//check for current hash
	menuChange();
	
	
	new jPlayerPlaylist({
		jPlayer: "#jquery_jplayer_1",
		cssSelectorAncestor: ".jp-video"
	}, [
		{
			title:"Violin Case - Handsome Orders",
			mp3:"media/audio/mp3/pointjuncturewa-violincase.mp3",
			//oga:"media/audio/ogg/pointjuncturewa-violincase.ogg",
			poster: "media/audio/art/handsomeOrders.jpg"
		},
		{
			title:"When You Wake Up It's Today - Handsome Orders",
			mp3:"media/audio/mp3/pointjuncturewa-whenyouwakeupitstoday.mp3",
			//oga:"media/audio/ogg/pointjuncturewa-whenyouwakeupitstoday.ogg",
			poster: "media/audio/art/handsomeOrders2.jpg"
		},
		{
			title:"Sick on Sugar - Heart To Elk",
			mp3:"media/audio/mp3/pointjuncturewa-sickonsugar.mp3",
			//oga:"media/audio/ogg/pointjuncturewa-sickonsugar.ogg",
			poster: "media/audio/art/heartToElk.jpg"
		},
		{
			title:"Sioux Arrow - Heart To Elk",
			mp3:"media/audio/mp3/pointjuncturewa-siouxarrow.mp3",
			//oga:"media/audio/ogg/pointjuncturewa-siouxarrow.ogg",
			poster: "media/audio/art/heartToElk2.jpg"
		},
		{
			title:"Cardboard Box - Mama Auto Boss",
			mp3:"media/audio/mp3/pointjuncturewa-cardboardbox.mp3",
			//oga:"media/audio/ogg/pointjuncturewa-cardboardbox.ogg",
			poster: "media/audio/art/mamaAutoBoss.jpg"
		},
		{
			title:"Cello - Mama Auto Boss",
			mp3:"media/audio/mp3/pointjuncturewa-cello.mp3",
			//oga:"media/audio/ogg/pointjuncturewa-cello.ogg",
			poster: "media/audio/art/mamaAutoBoss2.jpg"
		},
		{
			title:"The Siesta Movement - Juxtapony",
			mp3:"media/audio/mp3/pointjuncturewa-thesiestamovement.mp3",
			//oga:"media/audio/ogg/pointjuncturewa-thesiestamovement.ogg",
			poster: "media/audio/art/juxtapony.jpg"
		}
	], {
/*		ready: function() {
			mediaPlaylist.displayPlaylist();
			mediaPlaylist.playlistInit(false); // Parameter is a boolean for autoplay.
		},
		ended: function() {
			mediaPlaylist.playlistNext();
		},*/
		swfPath: "js/libs/",
		supplied: "ogv, m4v, oga, mp3"
	});
	
	$("#newsletterSignup_trigger").click(function(e) {
		e.preventDefault();
		showNLSignup();
	});
	$("#newsletterSignup_btn").click(function(e) {
		e.preventDefault();

		//send email info		
		$.get('inc/sendAddressMailChimp.php',{'email':$('#newsletterSignup_emailAddress').val()}, 
			function(data){
				if (data != 'success') {
					$('#newsletterSignup_resultMessage a').html(data);
					$('#newsletterSignup_resultMessage a').unbind().click(function(e) {
						e.preventDefault();
						showNLSignup();
					});
				} else {
					$('#newsletterSignup_resultMessage a').html("Thanks!");
					$('#newsletterSignup_resultMessage a').unbind().click(function(e) {
						e.preventDefault();
						hideNLSignup();
					});
					$('#newsletterSignup_emailAddress').val('');
				}
				showNLSignupResult();
			}
		);
	});
	
	// Handle placeholder text in footer email signup 
	if (! Modernizr.inputtypes.email) {
	    var signup_text = "Enter your email address";
		$('#newsletterSignup_emailAddress').val(signup_text);
		
		$('#newsletterSignup_emailAddress').focus(
			function(){
				if ($(this).val() == signup_text) {
					$(this).val("");
				}
			}
		);

		$('#newsletterSignup_emailAddress').blur(
			function(){
				if ($(this).val() == "") {
					$(this).val(signup_text);
				}
			}
		);
	}
	
	
	//show/hide the player
	$('#player_toggle').click(function() {
		if ($(this).html() == 'maximize player') { $(this).html('minimize player'); }
		else { $(this).html('maximize player'); }
		$('#jp_playlist_1').slideToggle(400,'easeInOutSine');
		if (playerExpanded) {
			$('#jquery_jplayer_1').slideUp(400,'easeInOutSine', function(){ $('#jp_interface_1').removeClass('expanded'); });
			$('#jp_progress_1').slideUp(400,'easeInOutSine', function(){ $('#player_toggle').removeClass('expanded'); });
			$('#jp_interface_1').removeClass('over');
			$('#player_toggle').removeClass('over');
		} else {
			$('#jquery_jplayer_1').slideDown(400,'easeInOutSine');
			$('#jp_progress_1').slideDown(400,'easeInOutSine');
			$('#jp_interface_1').addClass('expanded');
			$('#player_toggle').addClass('expanded');
		}
		playerExpanded = !playerExpanded;
	});
	
	//hide the player, initially showing it helps IE
	$('#player_toggle').click();
	
	$('#player_toggle').hover(function() {
		$(this).toggleClass('hover');
	});

	$('#mediaPlayer').mouseenter(function() {
		if(!playerExpanded){
//			$('#player_toggle').slideDown();
			$('#player_toggle').css('display','block');
		}
		$('#jp_interface_1').addClass('over');
		$('#player_toggle').addClass('over');
	});
	$('#mediaPlayer').mouseleave(function() {
		if(!playerExpanded){
//			$('#player_toggle').slideUp();
			$('#player_toggle').css('display','none');
		}
		$('#jp_interface_1').removeClass('over');
		$('#player_toggle').removeClass('over');
	});
	
	
	//hidden slideshow
	$('#showbg').click(
		function() {
			if ($('#main').css('display')=='block') { hideItAll(); }
			else { bringItBack(); }			
		}
	);
	
});


function showNLSignup() {
	$('#newsletterSignup_form').animate({top:'-22px'}, 250, 'easeInOutSine');
}
function showNLSignupResult() {
	$('#newsletterSignup_form').animate({top:'-44px'}, 250, 'easeInOutSine');
}
function hideNLSignup() {
	$('#newsletterSignup_form').animate({top:'0px'}, 250, 'easeInOutSine');
}

function menuChange() {
	bringItBack();
	var hash = location.hash;	
	hash = hash.substring(2,hash.length); //get the hash without the '#!'
	var newMenuItem = $('#nav-'+hash);

	//menu animations
	$('#menu a.active').stop().animate({color:'#777', fontSize:'28px', lineHeight:'65px'},150 ,function(){$(this).removeClass('active');}); 
	newMenuItem.addClass('active');
	newMenuItem.stop().animate({color:'#333', fontSize:'50px', lineHeight:'51px'},150); 
	
	$('#page_content').html('Loading...');

	//get new content
	jqxhr_pageRequest = $.ajax({url: "data/fetchPage.php?id="+hash+"&amp;r="+Math.random(), dataType: "xml"})
		.error(function(){ showErrorContent(); })
		.success(function(data){ showNewContent(data); });
}

function showNewContent(xmlData) {
	var pageHash = $(xmlData).find('hash').text();
	var pageTitle = $(xmlData).find('title').text();
	var pageContent = $(xmlData).find('content').text();
	
	//slide up, slide down
	$('#page_content').slideUp(25,'easeInOutSine',function(){
		$(this).html(pageContent).slideDown(750,'easeInOutSine');
	});
}

function showErrorContent(xmlData) {
	var errorContent = "Sorry, we can't find that page.  Please <a href='/#!news'>click here</a> or on the menu above to view the site.";

	//slide up, slide down
	$('#page_content').slideUp(25,'easeInOutSine',function(){
		$(this).html(errorContent).slideDown(750,'easeInOutSine');
	});
}

function startSlideShow() {
	return setInterval(advanceSlideShow,ssTime);
}

function advanceSlideShow() {
	var firstWidth = $("#"+bgImageId+" img:first").width();
	var leftPos = $("#"+bgImageId+" img:first").css('left');
	var topPos = $("#"+bgImageId+" img:first").css('top');

	bgImageIndex++;
	if (bgImageIndex>=bgImages.length) { bgImageIndex=0; }

	//place the new image to the left, reduce opacity, center and fade in
	$("#"+bgImageId+" img").addClass('removeMe');
	$("#"+bgImageId).append("<img src='"+bgImages[bgImageIndex][0]+"' class='hideMe' style='left:"+leftPos+"px; top:"+topPos+"; '>");
	$("#"+bgImageCreditId).html(bgImages[bgImageIndex][1]);
	$("#"+bgImageId+" img:not(.removeMe)").delay(1000).fadeIn(ssReveal,'linear', function() {$("#"+bgImageId+" img.removeMe").remove();});
}

function resizeBackground() {
	var browserWidth = window.innerWidth ? window.innerWidth : $(window).width();
	var browserHeight = (window.innerHeight ? window.innerHeight : $(window).height()) - headerHeight;
	var browserRatio = browserWidth/browserHeight;
	
	if (browserRatio < bgImageRatio) {
		$("#"+bgImageId).width(bgImageRatio*browserHeight);
		$("#"+bgImageId).height(browserHeight);
	} else {
		$("#"+bgImageId).width(browserWidth);
		$("#"+bgImageId).height(browserWidth/bgImageRatio);
	}
	
	$("#"+bgImageId).css('left',(browserWidth-$("#"+bgImageId).width())/2);
	$("#"+bgImageId).css('top',headerHeight+(browserHeight-$("#"+bgImageId).height())/2);

	// prevent the footer from 'riding up' on mobile
	if ((browserHeight-footerHeight) > $('#main .inner_container').height()) {
		$('#main .inner_container').css('min-height',(browserHeight-footerHeight)+'px');
	}
}


function expandPlayer() {
	$('#jp_playlist_1').slidedown();
	$('#jquery_jplayer_1').slidedown();
}

function hideItAll() {
	$('#main').css('display','none');
	$('#bg_gradient').css('display','none');
	$('#bg_raster').css('display','none');
}
function bringItBack() {
	$('#main').css('display','block');
	$('#bg_gradient').css('display','block');
	$('#bg_raster').css('display','block');
}
