//Global variables
var blurbNum = 1; //Starting blurb number
var swapNum = 0;
var blurbTimer = 12000; //Timer for blurb cycler in milliseconds
var slideNum = 0; //Starting slide number
var slideTimer = 5000; //Slideshow cycle timer
var slideTarget = ""; //Used for window sliding
var popHTML = ""; //Container variable for pop-up html

//Set cyclers
var blurbCycle = setInterval('swap()', blurbTimer);
var slideshow = setInterval('slide()', slideTimer);
var popOpenBoo = false;
var blurbNavOK = true;
var popTimeout;

var showimage;
var photoLargeArr;

function swap() {
	$('div[blurb="' + blurbNum + '"]').slideUp(300, function() {
	$('#blurbs-nav .active').removeClass('active').attr('src','images/blurbs-nav-off.gif');
		if(swapNum == 0) {
			blurbNum++;
			if(blurbNum > $('#blurbs>div').length) {
				blurbNum = 1;
			}
			$('div[blurb="' + blurbNum + '"]').slideDown(300);
			$('#blurbnav' + blurbNum).addClass('active').attr('src','images/blurbs-nav-on.gif');
		} else {
			blurbNum = swapNum;
			$('#blurbnav' + swapNum).addClass('active').attr('src','images/blurbs-nav-on.gif');
			$('div[blurb="' + swapNum + '"]').slideDown(300, function() {
				blurbNavOK = true;
			});
			swapNum = 0;
		}
	});
}
function stopCycles() {
	clearInterval(blurbCycle);
	clearInterval(slideshow);
	blurbCycle = slideshow = undefined;
}
function startCycles() {
	if(popOpenBoo==false && blurbCycle==undefined) {
		blurbCycle = setInterval('swap()', blurbTimer);
		slideshow = setInterval('slide()', slideTimer);
	}
}
function popOpenClick() {
	$('#popup-content').html(popHTML);
	$('#popup,#popup-mask,.popup-close').fadeIn(350, function() {
		popPos();
		stopCycles();
	});
	popOpenBoo=true;
}
function popOpenHover() {
	$('#popup-content').html(popHTML);
	$('#popup').fadeIn(350, function() {
		popPos()
	});
//	popOpenBoo=true;
}
function popClose() {
	$('#popup,#popup-mask,.popup-close').fadeOut(350).css({'opacity':1});
	$('#popup-content').html();
	popOpenBoo=false;
}
function popPos() {
	var hOffset = $(window).scrollTop();
	var height = $('#popup').height() / -2;
		height = height + hOffset;
	$('#popup').css({'margin-top': height + 'px'});
	$('#popup-mask').css({'margin-top':hOffset + 'px'});
}
function imgLoad() {
	var hLoad = $('#popup-content img').height();
	//alert(hLoad);
	if(hLoad > 0) {
		popPos();
		clearInterval(imgLoader);
	}
}
function slide() {
	$('#slideNav' + slideNum).removeClass('active').children('img').attr('src','images/middle-nav-button-off.gif');
	changeSlide();
	$('#slideNav' + slideNum).addClass('active').children('img').attr('src', 'images/middle-nav-button-on.gif');
}
function changeSlide() {
	if(slideNum>2) {
		$('#slide0, .playbutton').fadeIn("fast",function() {
			$('.slideshow').show();
		});
		slideNum = 0;
	} else {
		$('#slide' + slideNum + ', #playbutton' + slideNum).fadeOut();
		slideNum++;
	}
}
function slideBack(id) {
	$('#slide' + id).fadeIn(function() {
		for(i=id + 1;i<slideNum;i++) {
			$('#slide' + i + ', #playbutton' + i).show();
		}
		slideNum = id;
	});
}
function slideFwd(id) {
	for(i=slideNum + 1;i<id;i++) {
		$('#slide' + i).hide();
	}
	$('#slide' + slideNum).fadeOut();
	slideNum = id;
}
function validateForm(form) {
	var errors = 0;
	var errMessage = "Error: ";
	$(form + ' .required').each(function() {
		var val = $(this).attr('value');
		if(val == "") {
			if(errMessage.indexOf('Required fields were left blank.') == -1) {
				errMessage += "Required fields were left blank.";
			}
			errors++;
		} else if($(this).hasClass('email')) {
			if(val == "") {
				errMessage += "You did not enter an email address";
				errors++;
			//	$(this).css({"background-color" : "#fcc;"});
			} else {
				var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
				if(!reg.test(val)) {
					errMessage += "Email is invalid";
					errors++;
				}
			}
		}
	});
	if(errors == 0) {
		return true;
	} else {
		$('#errorMessage').html(errMessage);
		return false;
	}
}
function sifrReplace() {
	sIFR.replace(motter, {
	  selector: 'h1',
	  css: '.sIFR-root { font-size:14px;background-color:#0f0b0c;color:#FFFFFF;display:block;margin:0px;margin-top:3px;padding:0px;padding-bottom:0px;height:20px;line-height:0px; }'
	});
}
$(document).ready(function() {
	//Navigation position handlers

	$("form").submit(function() {
		var form = '#' + $(this).attr('id');
		var address = $('input[name="address1"]').attr('value') + ' ' + $('input[name="address2"]').attr('value');
		$('input[name="YMP4"]').attr('value', address);
		return validateForm(form);
	});
	
	
	$('#blurbs-nav img').click(function() {
		if(blurbNavOK) {
			blurbNavOK = false;
			swapNum = $(this).attr('id').split('blurbnav')[1];
			swap();
		}
	});
	
	//Window sliding
	$('.block').click(function() {
		if(!$(this).hasClass('active')) {
			var div = $(this).parents('div')[0].id;
			var slide = '#' + $(this).attr('id');
			$('#' + div + ' .active .hideme').slideUp(400);
			$('#' + div +' .active').removeClass('active');
			$('.hideme',this).slideDown(400,function() {
				if(slide!="#") {
					$.scrollTo(slide,500);
				}
				sifrReplace();
			});
			$(this).addClass('active');
		}
	});
	$(window).scroll(function() {
		if(popOpenBoo) {
			popPos();
		}
	});
	//Slideshow navigation
	$('.slideshow,#blurbs,#blurbs-nav,#middle-nav').mouseenter(function() { stopCycles(); });
	$('.slideshow,#middle-nav,#blurbs-nav').mouseleave(function() { startCycles(); });
	$('.central').click(function() {
		$('#middle-nav .active').removeClass('active').children('img').attr('src','images/middle-nav-button-off.gif');
		$(this).addClass('active').children('img').attr('src','images/middle-nav-button-on.gif');
		var id = parseFloat($(this).attr('id').split('slideNav')[1]);
		if(id>slideNum) {
			slideFwd(id);
		} else if (id<slideNum) {
			slideBack(id);
		}
	});
	
	//Popup functionality
	//  Blurbs on hover
	$('#blurbs li').mouseenter(function() {
		clearTimeout(popTimeout);
		popClose();
		stopCycles();
		popHTML = $('.popme',this).html();
		popTimeout = setTimeout('popOpenHover()',500);
	});
	$('#blurbs').mouseleave(function() {
		clearTimeout(popTimeout);
		startCycles();
		popClose();
	});
	//  Media on click
	$('.clickpop').click(function() {
		popHTML = $('.popme',this).html();
		popOpenClick();
		var myID = $(this).attr('myID');
		if(photoLargeArr != undefined) {
			galleryLoadImage(myID);
		}
	});
	
	function galleryLoadImage(num,flickrID) {
		photoSelCur = num;
		prevImg = num - 1;
		nextImg = Number(num) + 1;
		str = '';
		if(prevImg > -1) {
			str += '<a class="galleryNav" flickrID="' + photoIDArr[prevImg] + '"  myID="' + prevImg + '">Previous</a>';
		}
		if(prevImg > -1 && nextImg < photoCount) {
			str += ' : ';
		}
		if(nextImg < photoCount) {
			str += '<a class="galleryNav" flickrID="' + photoIDArr[nextImg] + '" myID="' + nextImg + '">Next</a>';
		}
		str += "<br /><a class='galleryNav' flickrID='" + photoIDArr[nextImg] + "' myID='" + nextImg + "'><img src='" + photoLargeArr[num] + "'></a><br />";
		str += "<a href='http://flickr.com/photos/47652774@N04/" + photoIDArr[nextImg] +"' target='_blank'>View on Flickr</a>";
			
		$('#popup-content').prepend(str);
	
		$('.galleryNav').click(function() {
			$('#popup-content').html('');
			var myID = $(this).attr('myID');
			var flickrID = $(this).attr('flickrID');
			if(photoLargeArr[myID] != undefined) {
				galleryLoadImage(myID,flickrID);
			}
		});
		//popPos();
		imgLoader = setInterval('imgLoad()',100);
	}
		
	
	$('#popup-mask,.popup-close').click(function() {
		popClose();
		startCycles();
		return false;
	});
});
