//jquery is the worst idea ever!!!  it has the absolute worst syntax of any programming language ive ever seen with!!  inline functions are the worst idea ever!!  screw you jquery!!

var button, speed, temp, holder, len;
var currentTarget = "";
var current = '#print';
var counter = 0;

$(document).ready(function() {
	$('#dialog').jqm();
	$("a.fancybox-portfolio").fancybox();
	
	$("a.fancybox-portfolio").fancybox({
		'titlePosition' : 'inside',
		'onClosed': function() { $("#fancybox_inner").empty(); }
	});
	
	//$("#dialog").dialog({ autoOpen: false });
	handleOBEM();
	holder = document.getElementById(current.replace("#", ""));
	$('#nav-design').click(function() {
		/*if(currentTarget != "downloads" && currentTarget != "") {
			speed = 2500;
		} else {
			speed = 1500;
		}*/
		speed = 1500;
		//currentTarget = "work";
		$('html, body').animate({
			scrollTop: $("#work").offset().top
		}, speed);
	});
	$('#nav-portfolio').click(function() {
		/*if(currentTarget != "") {
			speed = 1500;
		} else {
			speed = 2500;
		}*/
		speed = 2000;
		//currentTarget = "downloads";
		$('html, body').animate({
			scrollTop: $("#downloads").offset().top
		}, speed);
	});
	$('#nav-connect').click(function() {
		/*if(currentTarget != "downloads" && currentTarget === "") {
			speed = 2500;
		} else {
			speed = 1500;
		}*/
		speed = 2500;
		//console.log(h, c, h-c, c-h);
		//currentTarget = "connect";
		var targetOffset = $("#connect").offset().top + $("#connect").height() + 50;
		$('html, body').animate({
			scrollTop: targetOffset - $(window).height()
		}, speed);
	});
	$('#right-button').click(function() {
			len = holder.getElementsByClassName("enclosure").length;
			if(counter != len-1)
			{
				$('#content-holder-inner').animate({marginLeft: "-=735px"}, 1000);
				counter++;
			}
	});
	$('#left-button').click(function() {
			if($('#content-holder-inner').css('marginLeft') != '0px')
			{
				$('#content-holder-inner').animate({marginLeft: "+=735px"}, 1000);
				if(counter != 0)
				{
					counter--;
				}
			}
	});
	button = document.getElementById("button");
	button.onclick = handleAjax;
	handleNavigation();
});

function handleNavigation() {
	var contentHolder = document.getElementById("content-holder-inner");
	var content = contentHolder.getElementsByTagName("div");
	var len = content.length;
	for(i = 0; i<len; i++) {
		$('#' + content[i].id + '-nav').click(function() {
			temp = current;
			current = "#" + $(this).attr('id').replace("-nav", "");
			$(temp).animate(
				{opacity:'hide'}, 500, 'linear', function() {
					$('#content-holder-inner').css('marginLeft', 0);
					counter = 0;
					holder = document.getElementById(current.replace("#", ""));
					$(current).animate(
						{opacity:'show'}, 500
					);
				}
			);
		});
	}
}

function handleOBEM() {
	var obem = document.getElementById("obem");
	var z = "zide";
	var c = "com";
	var m = "mailto";
	obem.href = m + ":" + z + "@" + z + "sign." + c;
}

function handleAjax() {
	var contactEmail = document.getElementById("email");
	var contactSubject = document.getElementById("subject");
	var contactMessage = document.getElementById("message");
	contactEmail.onfocus = contactSubject.onfocus = contactMessage.onfocus = onFocus;
	if(contactEmail.value.toLowerCase().search(/[a-z0-9!#$%&'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+\/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/gi) === -1) {
		contactEmail.style.backgroundColor = "#660033";
		contactEmail.style.color = "#FFFFFF";
		$('#dialog').jqmShow().html('<div id=\"modular-box-content\"><p id="modular-box-text">You call that an email address?<br />More like keyboard smashing.</p><p id="modular-box-button"><img src="http://zidesign.com/images/return-button.png" id="alertCloser" /></p></div>');
		$('#alertCloser').click(function(){
			$('#dialog').jqmHide();
		});
		return false;
	}
	if(contactSubject.value.toLowerCase().search(/[a-z0-9]/) === -1) {
		contactSubject.style.backgroundColor = "#660033";
		contactSubject.style.color = "#FFFFFF";
		$('#dialog').jqmShow().html('<div id=\"modular-box-content\"><p id="modular-box-text">You\'ve got to give this masterpiece a name.<br />C\'mon now.</p><p id="modular-box-button"><img src="http://zidesign.com/images/return-button.png" id="alertCloser" /></p></div>');
		$('#alertCloser').click(function(){
			$('#dialog').jqmHide();
		});
		return false;
	}
	if(contactMessage.value.toLowerCase().search(/[a-z0-9]/) === -1) {
		contactMessage.style.backgroundColor = "#660033";
		contactMessage.style.color = "#FFFFFF";
		$('#dialog').jqmShow().html('<div id=\"modular-box-content\"><p id="modular-box-text">What are you trying to spam me?<br />Ah-ah-ah. Try again.</p><p id="modular-box-button"><img src="http://zidesign.com/images/return-button.png" id="alertCloser" /></p></div>');
		$('#alertCloser').click(function(){
			$('#dialog').jqmHide();
		});
		return false;
	}
	var data = {email: contactEmail.value, subject: contactSubject.value, message: contactMessage.value};
	$.ajax({
		url: "http://zidesign.com/php/mail.php",
		type: "post",
		data: "email=" + contactEmail.value + "&subject=" + contactSubject.value + "&message=" + contactMessage.value,
		async: false,
		success: function(message) {
			$('#dialog').jqmShow().html('<div id=\"modular-box-content\"><p id="modular-box-text">Success!<br />Your message has been sent. Much thanks.</p><p id="modular-box-button"><img src="http://zidesign.com/images/return-button.png" id="alertCloser" /></p></div>');
			$('#alertCloser').click(function(){
				$('#dialog').jqmHide();
			});
			contactEmail.value = contactSubject.value = contactMessage.value = "";
		},
		error: function() {
			$('#dialog').jqmShow().html('<div id=\"modular-box-content\"><p id="modular-box-text">Whoops!<br />something has gone terribly awry. Apologies.</p><p id="modular-box-button"><img src="http://zidesign.com/images/return-button.png" id="alertCloser" /></p></div>');
			$('#alertCloser').click(function(){
				$('#dialog').jqmHide();
			});
		}
	});
}

function onFocus(event) {
	event.target.style.backgroundColor = "#FFFFFF";
	event.target.style.color = "#000000";
}
