/*** Aufklappmenues ein- und ausblenden ***/

var closeTimer = 0;
var currentItem = null;

function handleSubmenue(action, target)
{
	//Parameter zur Positionierung des Untermenues
	var offset = $("#" + target).offset();
	var height = $("#" + target).height() + 4;
	
	//Untermenue anzeigen
	if(action == "show")
	{
		//Wenn Timer zum Schließen eines anderen Menues noch läuft, diesen auf "null" setzen 
		if(closeTimer)
		{
			window.clearTimeout(closeTimer);
			closeTimer = null;
			
			//Wenn zuletzt geöffnetes Menue nicht das aktuelle ist, dieses ohne Verzögerung schließen
			if(currentItem != target)
			{
				hideSubmenue(currentItem);
			}
		}
		
		//Wenn zu öffnendes Menue existiert, dieses positionieren und anzeigen
		if(document.getElementById("sub_dev_" + target) != null)
		{
			$("#sub_dev_" + target).css("top", offset.top + height);
			$("#sub_dev_" + target).css("left", offset.left);
			$("#sub_dev_" + target).slideDown('fast');
		}
		
		//geöffnetes Menue in globaler Variable speichern
		currentItem = target;
	}
	
	//Untermenue mit Verzögerung ausblenden
	else if(action == "hide")
	{
		closeTimer = setTimeout("hideSubmenue('" + target + "')", 250);
	}
}

function hideSubmenue(target)
{	
	$("#sub_dev_" + target).slideUp('fast');
}


/*** Details ein- und ausblenden, sowie Details-Pfeil ändern ***/

var currentState = "closed";
toggle_closed = new Image();
toggle_closed.src="img/arrow_right_small.png";
toggle_opened = new Image();
toggle_opened.src="img/arrow_down_small.png";

function toggleDetails()
{	
	if(currentState == "closed")
	{
		currentState = "opened";
		$("#details").slideDown();
		$("#details_arrow").attr("src", toggle_opened.src);
		$("#details_arrow").attr("alt", "Zuklappen");
		$("#details_arrow").attr("title", "Zuklappen");
		$("#text_details").html("Details ausblenden");
	}
	else
	{
		currentState = "closed";
		$("#details").slideUp();
		$("#details_arrow").attr("src", toggle_closed.src);
		$("#details_arrow").attr("alt", "Aufklappen");
		$("#details_arrow").attr("title", "Aufklappen");
		$("#text_details").html("Details einblenden");
	}
}

function changePortfolioCont(offset, idPortfolio)
{	
	$.post
	(
		"portfolio.php",
		{offset:offset, idPortfolio:idPortfolio},
		function(data)
		{
			showResponse(data);
		}
	);
}

function showResponse(data)
{
	$("#content").html(data);
	Shadowbox.setup(".zoom");
}

function changeArrowStyle(id, event)
{
	if(event == "over")
		$("#" + id).css("background-image", "url(img/" + id + "_hover.png)");
	else if(event == "out")
		$("#" + id).css("background-image", "url(img/" + id + ".png)");
}

function validateContactForm()
{
	var errorMsg = "";
	$("#errormessage").hide();
	
	if($("#name").attr("value") == "")
	{
		errorMsg = "Bitte geben Sie einen Nachnamen an.";
		showErrormessage("#name", errorMsg);
		return false;
	}
	else if($("#firstName").attr("value") == "")
	{
		errorMsg = "Bitte geben Sie einen Vornamen an.";
		showErrormessage("#name", errorMsg);
		return false;
	}
	else if($("#email").attr("value") == "")
	{
		errorMsg = "Bitte geben Sie eine Emailadresse an.";
		showErrormessage("#name", errorMsg);
		return false;
	}
	else if($("#message").attr("value") == "")
	{
		errorMsg = "Bitte geben Sie eine Nachricht ein.";
		showErrormessage("#name", errorMsg);
		return false;
	}
	else
	{
		document.contact.submit();
		return true;
	}
}

function showErrormessage(idField, msg)
{
	$("#errormessage").slideDown();
	$("#errormessage").html(msg);
	$(idField).focus();
}
