$(document).ready(function(){

//Functions
changeaddress = function()
{
	var addresstext = $("#address").text();
	var newaddresstext = addresstext.replace(" (remove all the z)","").replace(" (togli tutte le z)","").replace(/z/g,"");
	$("#address").html(newaddresstext);
}

createaccordion = function()
{
	if (document.title == "Teaching" || document.title == "Didattica" || document.title == "Web")
	{
		headers = $("h2");
		$.each(headers, function(){
			var content = $(this).text();
			content = "\u25B8 " + content; //corresponds to the HTML entity &#9656;
			$(this).html(content);
		});
		headers.css('cursor', 'pointer');
		headers.next().hide();
		headers.click(function(event){
			$(event.target).next().toggle("slow");
			var content = $(event.target).text();
			if (content.charAt(0) == "\u25B8") {
				content = content.replace("\u25B8","\u25BE");
			}
			else {
				content = content.replace("\u25BE", "\u25B8");
			}
			$(event.target).text(content);
		});
	}
}

validate = function()
{
	//Let's gather the required form data
	var language = $("#pass-language").text();
	var email = $("#email").val();
	var subject = $("#subject").val();
	//Now we check that the required fields are correctly filled
	var valid_email = /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/.test(email);
	var error = "";
	if (!(valid_email))
	{
		if (language == "ita")
		{
			error = "Il tuo indirizzo email non sembra valido - per favore controllalo.";
		}
		else
		{
			error = "Your email address does not seem to be valid - please doublecheck it.";
		}
	}
	else if ( subject == "" )
	{
		if (language == "ita")
		{
			error = "Non hai riempito il campo Oggetto. Per favore riempi tutti i campi necessari.";
		}
		else
		{
			error = "Sorry, but you do not seem to have filled out the field Subject. Please go back and fill out all the required fields!";
		}
	}
	return error;
}

assignsubmit = function()
{
	$("form").submit(function() {
		var error = validate();
		if (error != "")
		{
			$("#error").remove();
			var errornode = $('<p id="error"></p>'); 
			$(errornode).insertAfter($("#message"));
			$(errornode).hide();
			$(errornode).html(error);
			$(errornode).slideDown();
			return false;
		}
	});
}

loadmail = function()
{
	var theme = $("#pass-theme").text();
	var mailnode = $('<div id="mailstuff"></div>');
	if (theme == "pastel")
	{
		var insertion_point = $("#compose").parent();
	}
	else
	{
		var insertion_point = $("#header");
	}
	$(mailnode).insertAfter(insertion_point);
	$(mailnode).hide();
	$(mailnode).load("ajaxmail");
	$(mailnode).show(1200);
}

//This load the mail divs

$("#compose").click(function(event){
	event.preventDefault();
	loadmail();
});

//We need this to assign the submit function after the form has been loaded
$(document).click(function(event){
	if ($(event.target).is('button'))
	{
		assignsubmit();
		if ($(event.target).attr("id") == "cancel")
		{
			$("#mailstuff").remove();
		}
	}
});

//We set the right address and create the accordion in the Teaching page
changeaddress();
createaccordion();

})
