﻿function calculatePVP() {
    var amount = $get(amountClientID);
    if (amount)
    {
        var raceTicket = $get(raceTicketClientID).value;
        var numTickets = $get(numTicketsClientID).value;
        amount.innerHTML = '';
        if (PRICES && (raceTicket !== '') && (numTickets !== '')) {
            amount.innerHTML = new Number(PRICES['TICKET_'+raceTicket] * parseInt(numTickets,10)).format('N2') + ' &euro;';
        }
    }
}

function onCheckInDateChange(checkInDateID)
{
    calcCheckOutDate();
}

function calcCheckOutDate()
{
    var checkInDate = WebApp_GetDatePickerValue(WebApp_Fields.CheckInDate);
    var numNights = document.getElementById(numNightsClientID);

    if (checkInDate && (numNights.selectedIndex >= 0))
    {
        var checkOutDate = new Date(checkInDate.getFullYear(),checkInDate.getMonth(),checkInDate.getDate() + parseInt(numNights.value,10));
        document.getElementById(checkOutDateClientID).innerHTML = String.localeFormat("{0:"+CURRENT_DATE_FORMAT+"}", checkOutDate);
    }
}

function numRooms_changed()
{
    if ($get(numRoomsClientID)) {
        var numRooms = parseInt(document.getElementById(numRoomsClientID).value,10);
        var roomsTable = document.getElementById(roomsTableClientID);
        
        for (i=1; i<roomsTable.tBodies[0].rows.length; i++)
        {
            roomsTable.tBodies[0].rows[i].style.display = (i <= numRooms ? "" : "none");
            showHideChildren(document.getElementById(eval("PeopleRoom" + i + "[1]")),i);
         }
     }
}

function validateForm(src,args)
{
    args.IsValid = true;

    var raceType = document.getElementById(raceTypeClientID);
    var race = document.getElementById(raceClientID);
    var raceTicket = $get(raceTicketClientID);
    var numTickets = $get(numTicketsClientID);
    var numRooms = document.getElementById(numRoomsClientID);
    var destination = document.getElementById(destinationClientID);

    if ((raceType.selectedIndex < 0) || (raceType.value == ""))
    {
        args.IsValid = false;
        raceType.focus();
    }
    else if ((race.selectedIndex < 0) || (race.value == ""))
    {
        args.IsValid = false;
        race.focus();
    }
    else if ((raceTicket.selectedIndex < 0) || (raceTicket.value == ""))
    {
        args.IsValid = false;
        raceTicket.focus();
    }
    else if (numTickets && ((numTickets.selectedIndex < 0) || (numTickets.value == "")))
    {
        args.IsValid = false;
        numTickets.focus();
    }
    else if (numRooms)
    {
        if ((numRooms.selectedIndex < 0) || (numRooms.value == ""))
        {
            args.IsValid = false;
            numRooms.focus();
        }
        else if (!WebApp_GetDatePickerValue(WebApp_Fields.CheckInDate))
        {
            args.IsValid = false;
            WebApp_SetDatePickerFocus(WebApp_Fields.CheckInDate);
        }
        else if ((destination.selectedIndex < 0) || (destination.value == ""))
        {
            args.IsValid = false;
            destination.focus();
        }
        else
        {
            var numRooms = document.getElementById(numRoomsClientID).value;

            for (i=1; i<=numRooms; i++)
            {
                var people = 0
                var peopleRoomIDs = eval("PeopleRoom" + i);
                var childrenAgesIDs = eval("ChildrenAges" + i);
                for (k=0; k<1 /*peopleRoomIDs.length*/; k++)
                {
                    var people = people + parseInt(document.getElementById(peopleRoomIDs[k]).value,10);
                }
                if (people == 0)
                {
                    alert(RESOURCES.RC_Error_AdultRequired);
                    args.IsValid = false;
                    document.getElementById(peopleRoomIDs[0]).focus();
                    return;
                }
                var numChildren = parseInt(document.getElementById(peopleRoomIDs[1]).value,10);
                for (k=0; k<numChildren; k++)
                {
                    var age = document.getElementById(childrenAgesIDs[k]).value;
                    if (age == "")
                    {
                        alert(RESOURCES.RC_Error_ChildAgeRequired);
                        args.IsValid = false;
                        document.getElementById(childrenAgesIDs[k]).focus();
                        return;
                    }
                }
            }
        }
    }
}

function showHideChildren(numChildrenCombo, roomNumber)
{
    var numChildren = parseInt(numChildrenCombo.value,10);
    var childrenIDs = eval("ChildrenAges"+roomNumber);
    for (var i=0; i<childrenIDs.length; i++)
    {
        var childrenCombo = document.getElementById(childrenIDs[i]);
        childrenCombo.style.visibility = (i < numChildren ? "visible" : "hidden");
    }
}
function homepageInit() {
	
	initMdxLightBox();
	mdxLb.show('../horaires_grandprix.html');
}
	
function reportError(request) {
 alert ("error");
}

function addEvent( obj, type, fn ) {
	if ( obj.attachEvent ) {
		obj['e'+type+fn] = fn;
		obj[type+fn] = function(){obj['e'+type+fn]( window.event );}
		obj.attachEvent( 'on'+type, obj[type+fn] );
	} else
		obj.addEventListener( type, fn, false );
	}
	
function removeEvent( obj, type, fn ) {
	if ( obj.detachEvent ) {
		obj.detachEvent( 'on'+type, obj[type+fn] );
		obj[type+fn] = null;
	} else
		obj.removeEventListener( type, fn, false );
	}