var facebookOverlay = null;
var emailOverlay = null;
var termsOverlay = null;
var privacyOverlay = null;
var modal = null;
var flash = $('#flashid');

$(document).ready(function()
{
	facebookOverlay = $('#facebook-like');
	emailOverlay = $('#email-overlay');
	termsOverlay = $('#terms-overlay');
	privacyOverlay = $('#privacy-overlay');
	modal = $('#modal');
	
	$(window).resize(positionElements);
	positionElements();
	
	modal.hide();
	modal.css('opacity', 0);
	facebookOverlay.hide();
	facebookOverlay.css('opacity', 0);
	emailOverlay.hide();
	emailOverlay.css('opacity', 0);
	termsOverlay.hide();
	termsOverlay.css('opacity', 0);
	privacyOverlay.hide();
	privacyOverlay.css('opacity', 0);
	
	modal.bind('click', hideAllOverlays);
	$('#email-form').find('input[type="submit"]').bind('click', sendEmails);

	initFlash();
});

function initFlash()
{
	var minimumFlashVersion = 9;
	function getFlashVersion(){
	  // ie
	  try {
	    try {
	      // avoid fp6 minor version lookup issues
	      // see: http://blog.deconcept.com/2006/01/11/getvariable-setvariable-crash-internet-explorer-flash-6/
	      var axo = new ActiveXObject('ShockwaveFlash.ShockwaveFlash.6');
	      try { axo.AllowScriptAccess = 'always'; }
	      catch(e) { return '6,0,0'; }
	    } catch(e) {}
	    return new ActiveXObject('ShockwaveFlash.ShockwaveFlash').GetVariable('$version').replace(/\D+/g, ',').match(/^,?(.+),?$/)[1];
	  // other browsers
	  } catch(e) {
	    try {
	      if(navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin){
	        return (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]).description.replace(/\D+/g, ",").match(/^,?(.+),?$/)[1];
	      }
	    } catch(e) {}
	  }
	  return '0,0,0';
	}

	var version = getFlashVersion().split(',').shift();
	if(version >= minimumFlashVersion)
	{
		// Embed flash and display site as normal.
		embedFlash();
	}
}

function positionElements()
{
	var leftNum = ($(window).width() / 2) - (facebookOverlay.width() / 2);
	facebookOverlay.css('left', leftNum);
	emailOverlay.css('left', leftNum);
	termsOverlay.css('left', ($(window).width() / 2) - (termsOverlay.width() / 2));
	privacyOverlay.css('left', ($(window).width() / 2) - (privacyOverlay.width() / 2));
	modal.height($('object').height());
	if($(window).height() > $('#flashid').height())
	{
		$('#flashid').height($(window).height());
	}
}

function showFacebookOverlay()
{
	modal.show();
	modal.animate({
		opacity: .4
	}, 200);
	facebookOverlay.show();
	facebookOverlay.animate({
		opacity: 1
	}, 200);
}

function hideAllOverlays()
{
	modal.animate({
		opacity: 0
	}, 200);
	emailOverlay.animate({
		opacity: 0
	}, 200);
	termsOverlay.animate({
		opacity: 0
	}, 200);
	privacyOverlay.animate({
		opacity: 0
	}, 200);
	facebookOverlay.animate({
		opacity: 0
	}, 200, 'swing', function(){
		facebookOverlay.hide();
		emailOverlay.hide();
		termsOverlay.hide();
		privacyOverlay.hide();
		modal.hide();
	});
}

function shareOnFacebook(url)
{
	var url = window.location.href;
	var title = 'Whittakers Chocolate';
	window.open('http://www.facebook.com/sharer.php?u='+encodeURIComponent(url)+'&t='+encodeURIComponent(title),'sharer','toolbar=0,status=0,width=540,height=300');
}

function shareOnTwitter()
{
	var url = 'http://twitter.com/share?text=' + encodeURIComponent('I know you love chocolate, so check out Whittaker\'s new website.\nIt\'s the world\'s first website made from chocolate.') + '&url='+ window.location.href;
	window.open(url, 'twitterWindow', 'status=0,toolbar=0,width=540,height=300');
}

function showEmailOverlay()
{
	modal.show();
	modal.animate({
		opacity: .4
	}, 200);
	emailOverlay.show();
	emailOverlay.animate({
		opacity: 1
	}, 200);
}

function showTermsOverlay()
{
	modal.show();
	modal.animate({
		opacity: .4
	}, 200);
	termsOverlay.show();
	termsOverlay.animate({
		opacity: 1
	}, 200);
}

function showPrivacyOverlay()
{
	modal.show();
	modal.animate({
		opacity: .4
	}, 200);
	privacyOverlay.show();
	privacyOverlay.animate({
		opacity: 1
	}, 200);
}

function addFormInput()
{
	
	var emailForm = $('#email-form');
	var numInputs = emailForm.find('.email-input').length + 1;
	if(numInputs < 10)
	{
		emailForm.find('input[type="text"]:last').after('<input type="text" class="email-input" value=""></input>');
		var newInput = 	emailForm.find('input[type="text"]:last');
		newInput.hide();
		newInput.slideDown(100);
	}
	
	if(numInputs >= 9)
	{
		$('#add-more-button').hide();
	}
}

function sendEmails()
{
	hideAllOverlays();
	var emails = [];
	var userEmail = $('#email-user-email').val();
	$('.email-input').each(function(){
		var curEmail = $(this).val();
		if(curEmail != '')
		{
			emails.push(curEmail);
			$(this).val('');
		}
	});
	
	$.post("/send-emails", {
			userEmail: userEmail,
			emails: '' + emails
	    },
	    function(data) {}
	);
}

function submitListEmail(formData)
{
	$.post("/submit-list-email", {
			firstName: formData.firstName,
			lastName: formData.lastName,
			email: formData.email
	    },
	    function(data) {}
	);
}

function submitContactForm(formData)
{
	$.post("/submit-contact-form", {
			firstName: formData.firstName,
			lastName: formData.lastName,
			email: formData.email,
			subject: formData.subject,
			message: formData.message
	    },
	    function(data) {}
	);
}

function scrollToVideo()
{
	$(window).scrollTo(300, 1000);
}

