// JavaScript Document

function put_in_temp(id)
{
	document.getElementById('temp').value=document.getElementById(id).value;
	
}

function count_nr(id)
{
document.getElementById('szumma').value = 1*(document.getElementById('szumma').value)+1*(document.getElementById(id).value-document.getElementById('temp').value);
}

function count_s_nr(s_id,id,limit,count_id)
{
szum = 	(document.getElementById(id).value)*1 + (document.getElementById(s_id).value)*1;
if (szum > limit) 
	{
		this.selectedIndex = 0;
		alert('You have selected too many rooms from  this roomtype!')
		res = false;
	}
else 
	{
		document.getElementById('szumma').value = 1*(document.getElementById('szumma').value)+1*(document.getElementById(count_id).value-document.getElementById('temp').value);
		res = true;
	}
	
return res;
}

function clear_temp()
{
		document.getElementById('temp').value=0;
}

function check_room_nr()
{
	if (document.getElementById('szumma').value != 0) document.BookForm.submit();
		else alert('Choose room number, please!')
	}
	

function check_bookform2()
{	
	
	error = '';
	if (document.getElementById('firstname').value == '') error += 'Missing field: Firstname'+"\n";
	if (document.getElementById('lastname').value == '') error += 'Missing field: Lastname'+"\n";
	if (document.getElementById('email').value == '') error += 'Missing field: E-mail'+"\n";
	if (document.getElementById('c_email').value == '') error += 'Missing field: Comfirm Email'+"\n";
	if (document.getElementById('creditcard').value == 0) error += 'Missing field: Creditcard type'+"\n";
	if (document.getElementById('cc_nr').value == '') error += 'Missing field: Creditcard number'+"\n";
	if (document.getElementById('cc_holders_name').value == '') error += 'Missing field: Creditcard holder\'s name'+"\n";
	email_check_result = email_check(document.getElementById('email').value);
 	if (email_check_result != 'ok') error += email_check_result + ":email address\n";

	email_check_result = email_check(document.getElementById('c_email').value);
 	if (email_check_result != 'ok') error += email_check_result + ": comfirm email address\n";
	
	if (error == "") document.BookForm.submit();
		else alert(error);
	}
	

function check_bookform3()
{	
	
	error = '';
	if (document.getElementById('city').value == '') error += 'Missing field: City'+"\n";
	if (document.getElementById('zip').value == '') error += 'Missing field: Zip'+"\n";
	if (document.getElementById('country').value == 0) error += 'Missing field: Country'+"\n";
	if (!ValidateTelnumber()) error += 'Invalid Telephone number'+"\n";
	if (document.getElementById('agree').checked == false) error += 'To finalize your reservation please accept the Terms & Conditions'+"\n";


	if (error == "") document.BookForm.submit();
		else alert(error);
	}	


	
function email_check(text)
{
	error_message = 'Wrong e-mail format';
	if (text.indexOf('@') == -1) return error_message;
    	else  if (text.indexOf('.') == -1) return error_message;
              else if ((text.length-text.lastIndexOf('.'))>4 || (text.length-text.lastIndexOf('.'))<2)  return error_message;
      				else  if (text.indexOf('.')==text.indexOf('@')+1)  return error_message;
						else return 'ok';	
	
}	


/**
 * DHTML phone number validation script. Courtesy of SmartWebby.com (http://www.smartwebby.com/dhtml/)
 */

// Declaring required variables
var digits = "0123456789";
// non-digit characters which are allowed in phone numbers
var phoneNumberDelimiters = "()-/ ";
// characters which are allowed in international phone numbers
// (a leading + is OK)
var validWorldPhoneChars = phoneNumberDelimiters + "+";
// Minimum no of digits in an international phone no.
var minDigitsInIPhoneNumber = 10;

function isInteger(s)
{   var i;
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag)
{   var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function checkInternationalPhone(strPhone){
s=stripCharsInBag(strPhone,validWorldPhoneChars);
return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}

function ValidateTelnumber(phone_number){
	var Phone=document.BookForm.phone
	
	if ((Phone.value==null)||(Phone.value=="")){
		
		return false
	}
	if (checkInternationalPhone(Phone.value)==false){
		
		return false
	}
	return true
 }
	
	
	
	
	