priceVar = 0;
window.onload = initPage;

function initPage()
{
    collapseDisplay('weddingdiv');
    collapseDisplay('saladdiv');
    collapseDisplay('dessertdiv');
    collapseDisplay('veggiediv');
    collapseDisplay('funeraldiv');
    collapseDisplay('buffetsdiv');
    collapseDisplay('menuonediv');
    collapseDisplay('menutwodiv');
    collapseDisplay('menuthreediv');
    collapseDisplay('menufourdiv');
    collapseDisplay('menufivediv');
    collapseDisplay('menusixdiv');
    collapseDisplay('menusevendiv');
    collapseDisplay('menueightdiv');
    collapseDisplay('menuninediv');
    collapseDisplay('menutendiv');
}

function collapseDisplay(divId)
{
    var div = document.getElementById(divId);

    if (div != null)
    {
        div.style.display = "none";
    }
}

function toggleDisplay(divId)
{
    var div = document.getElementById(divId);
    var currentState = div.style.display;

    switch (currentState)
    {
        case "block":    div.style.display = "none"; break;
        case "none":     div.style.display = "block"; break;
    }
}

function toggleArrow(imageId)
{
    var image = document.getElementById(imageId);
    var currentState = image.src.substring(image.src.lastIndexOf('/') + 1);

    switch (currentState)
    {
        case "upArrow.jpg":    image.src = "images/downArrow.jpg"; break;
        case "downArrow.jpg":  image.src = "images/upArrow.jpg"; break;
    }
}

function toggleSection(divId, imageId)
{
    toggleDisplay(divId);
    toggleArrow(imageId);
}

function validateForm()
{
    var errorMessage = "Please enter the following mandatory value(s):\n\n";

    if (input.Name.value == "")
        errorMessage += "· Name\n";

    if (input.Email.value == "")
        errorMessage += "· Email Address\n";

    if (input.Phone.value == "")
        errorMessage += "· Phone Number\n";

    if (input.Date.value == "")
        errorMessage += "· Proposed Date\n";

    if (errorMessage.length > 48)
    {
        alert(errorMessage);
        return false;
    }

    return true;
}

function resetPrice()
{
	priceElements = document.getElementsByTagName("h3");

	for (var i = 0 ; i < priceElements.length ; ++i)
	{
		priceElements[i].innerHTML = "Total Price: £0.00";
	}
}

function updatePrice(updatedElement)
{
	var price;
	var priceElements;

	var newAmount = 0;
	var newPrice = 0;

	var totalAdded = 0;
	var totalPrice = 0;

	if (updatedElement != null)
	{
		newAmount = updatedElement.value;
		newPrice = updatedElement.id;
	}

	if (isNaN(newAmount))
	{
		alert(newAmount + " isn't a valid amount.");
		updatedElement.value = "";
		return;
	}

	if (document.forms[0] == null)
	{
		return;
	}

	for (var i = 0 ; i < (document.forms[0].elements.length) ; ++i)
	{
		if (document.forms[0].elements[i].value != "")
		{
			if (isNaN(document.forms[0].elements[i].value))
			{
				continue;
			}

			price = document.forms[0].elements[i].id * document.forms[0].elements[i].value;
			totalAdded += parseFloat(price);
		}
	}

	totalPrice = "£" + Math.round((totalAdded)*Math.pow(10,2))/Math.pow(10,2);

	decimalPlace = totalPrice.indexOf('.');

	if (decimalPlace > 0)
	{
		if (totalPrice.substr(decimalPlace).length < 3)
		{
			totalPrice += "0";
		}
	}
	else
	{
		totalPrice = totalPrice + ".00";
	}

	priceElements = document.getElementsByTagName("h3");

	for (var i = 0 ; i < priceElements.length ; ++i)
	{
		priceElements[i].innerHTML = "Total Price: " + totalPrice;
	}
}
