function isEmpty(s) 
{   
// Check whether string s is empty.
    return ((s == null) || (s.length == 0))
}

function validateEmailv2(email)
{
// a very simple email validation checking. 
// you can add more complex email checking if it helps 
    if((email == null) || (email.length == 0))
	{
	  return false;
	}
    var splitted = email.match("^(.+)@(.+)$");
    if(splitted == null) return false;
    if(splitted[1] != null )
    {
      var regexp_user=/^\"?[\w-_\.]*\"?$/;
      if(splitted[1].match(regexp_user) == null) return false;
    }
    if(splitted[2] != null)
    {
      var regexp_domain=/^[\w-\.]*\.[A-Za-z]{2,4}$/;
      if(splitted[2].match(regexp_domain) == null) 
      {
	    var regexp_ip =/^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;
	    if(splitted[2].match(regexp_ip) == null) return false;
      }// if
      return true;
    }
    return false;
}

function update_sums()
{
    var thisform = document.congform;
    var tmp = Math.abs(thisform.totalRegistration.value) + Math.abs(thisform.totalAccommodation.value) + Math.abs(thisform.totalTours.value);
    thisform.swiftamount.value = tmp;
    thisform.grandTotal.value = tmp;
    thisform.chequeamount.value = tmp;
}

function calc_regfee()
{
//*****************************/
//   C - REGISTRATION FEE      /
//*****************************/
    var thisform = document.congform;
    var regfee, splitString;
        
    for (i=0; i < thisform.regfee.length; i++)      
        if (thisform.regfee[i].checked == true) {
            splitString  = (thisform.regfee[i].value).split("€");
            regfee = parseInt(splitString[1]);
            // alert("string: " + splitString[1]);
            break;
        }
        else
            regfee = 0;

    dinner1 = thisform.dinner1.value;
    dinner2 = thisform.dinner2.value;
    dinner3 = thisform.dinner3.value;
    thisform.totalRegistration.value = Math.abs(regfee) + (dinner1*60) + (dinner2*50) + (dinner3*45);
    update_sums();
}


function calc_hotel()
{
//*****************************/
//   E - HOTEL ACCOMMODATION   /
//*****************************/
    var thisform = document.congform;
    var hotelfee, splitString;

    var arrivalDate   = parseInt(thisform.arrival.value);
    var departureDate = parseInt(thisform.departure.value);
    if (arrivalDate <  departureDate)
        thisform.nights.value = departureDate - arrivalDate;
    else
        thisform.nights.value = 0;
        
    for (i=0; i < thisform.hotel.length; i++)       
        if (thisform.hotel[i].checked == true) {
            splitString  = (thisform.hotel[i].value).split("€");
            hotelfee = parseInt(splitString[1]);
            break;
        }
        else
            hotelfee = 0;

    thisform.totalAccommodation.value = hotelfee * thisform.nights.value;
    update_sums();
}




//*****************************/
//  F - POST CONGRESS TOURS    /
//*****************************/
function calc_tours() 
{         
    var thisform = document.congform;
        
    tour1 = thisform.numbertour1.value;
    total_tour1 = (tour1 * 32);
        
    halftour1 = thisform.numberhalftour1.value;    
    total_halftour1 = (halftour1 * 32);
    
    tour2 = thisform.numbertour2.value;
    total_tour2 = (tour2 * 53);
    
    tour3 = thisform.numbertour3.value;
    total_tour3 = (tour3 * 83);
    
    tour4 = thisform.numbertour4.value;
    total_tour4 = (tour4 * 78);
        
    totalTours = (total_tour1 + total_halftour1 + total_tour2 + total_tour3 + total_tour4);
    thisform.totalTours.value = totalTours;
    
    update_sums();  
}
    
    
    // Function to validate the required fields for the form submition (English Form)
    function validate_form(){
        var thisform = document.congform;
            
            if (isEmpty(thisform.surname_required.value))
            {
                alert("Please write your Last Name.");
                thisform.surname_required.focus();
                return false;
            }
            else if((thisform.firstname_required.value == "")||(thisform.firstname_required.value == " "))
            {
                alert("Please write your First Name.");
                thisform.firstname_required.focus();
                return false;
            }
            else if((thisform.address_required.value == "")||(thisform.address_required.value == " "))
            {
                alert("Please write your Address.");
                thisform.address_required.focus();
                return false;
            }
            else if((thisform.city_required.value == "")||(thisform.city_required.value == " "))
            {
                alert("Please write your City.");
                thisform.city_required.focus();
                return false;
            }
            else if((thisform.country_required.value == "")||(thisform.country_required.value == " "))
            {
                alert("Please select your Country.");
                thisform.country_required.focus();
                return false;
            }
            else if((thisform.postalcode_required.value == "")||(thisform.postalcode_required.value == " "))
            {
                alert("Please write your Postal Code.");
                thisform.postalcode_required.focus();
                return false;
            }
            else if((thisform.phone_required.value == "")||(thisform.phone_required.value == " "))
            {
                alert("Please write your Phone.");
                thisform.phone_required.focus();
                return false;
            }
            else if(!validateEmailv2(thisform.email_required.value))
            {
                alert("Please enter a proper email address.");
                thisform.email_required.focus();
                return false;
            }
            else
                return true;
    }//function validate_form(){
    
