﻿// JScript-Datei
   function ClientValidationEmpty(src, arg)
   {
    if (arg.Value == '')
    {
     document.getElementById(src.controltovalidate).style.backgroundColor = '#FFD9D9';
     arg.IsValid = false;
     MM_showHideLayers('search_box_error_example','','show'); 
     UnsetWait(document.getElementById('ctl00_ContentPlaceHolder1_bnbook'));
     return false;
    }
    else
    {
     document.getElementById(src.controltovalidate).style.backgroundColor = '';
     arg.IsValid = true;
     MM_showHideLayers(src.id,'','hide'); 
     HideErrorBox();
     return true;
    }
   }
   
    function ClientValidationPassword(src, arg)
   {
    if (arg.Value.length >=6)

    {
     document.getElementById(src.controltovalidate).style.backgroundColor = '';
     arg.IsValid = true;
     MM_showHideLayers(src.id,'','hide'); 
     HideErrorBox();
     return true;
    }
    else
    {
    document.getElementById(src.controltovalidate).style.backgroundColor = '#FFD9D9';
     arg.IsValid = false;
     MM_showHideLayers('search_box_error_example','','show'); 
     UnsetWait(document.getElementById('ctl00_ContentPlaceHolder1_bnbook'));
     return false; 
     }
   }
   
   function ClientValidationDate(src, arg)
   {
    if (isDate(arg.Value) != true)
    {
     document.getElementById(src.controltovalidate).style.backgroundColor = '#FFD9D9';
     arg.IsValid = false;
     MM_showHideLayers('search_box_error_example','','show'); 
     UnsetWait(document.getElementById('ctl00_ContentPlaceHolder1_bnbook'));
     return false;
    }
    else
    {
     document.getElementById(src.controltovalidate).style.backgroundColor = '';
     arg.IsValid = true;
     MM_showHideLayers(src.id,'','hide'); 
     HideErrorBox();
     return true;
    }
   }
   
   function ClientValidationInt(src, arg)
   {
    if (isInteger(arg.Value) != true)
    {
     document.getElementById(src.controltovalidate).style.backgroundColor = '#FFD9D9';
     arg.IsValid = false;
     MM_showHideLayers('search_box_error_example','','show'); 
     UnsetWait(document.getElementById('ctl00_ContentPlaceHolder1_bnbook'));
     return false;
    }
    else
    {
     document.getElementById(src.controltovalidate).style.backgroundColor = '';
     arg.IsValid = true;
     MM_showHideLayers(src.id,'','hide'); 
     HideErrorBox();
     return true;
    }
   }
   
   function ClientValidationEmail(src, arg)
   {
    if (isEMail(arg.Value) != true)
    {
     document.getElementById(src.controltovalidate).style.backgroundColor = '#FFD9D9';
     arg.IsValid = false;
     MM_showHideLayers('search_box_error_example','','show'); 
     UnsetWait(document.getElementById('ctl00_ContentPlaceHolder1_bnbook'));
     return false;
    }
    else
    {
     document.getElementById(src.controltovalidate).style.backgroundColor = '';
     arg.IsValid = true;
     MM_showHideLayers(src.id,'','hide'); 
     HideErrorBox();
     return true;
    }
   }

   function ClientValidationCity(src, arg)
   {
    if (document.getElementById('ctl00_ContentPlaceHolder1_tbCity').value == '')
    {
     document.getElementById('ctl00_ContentPlaceHolder1_tbCity').style.backgroundColor = '#FFD9D9';
     arg.IsValid = false;
     MM_showHideLayers('search_box_error_example','','show'); 
     UnsetWait(document.getElementById('ctl00_ContentPlaceHolder1_bnbook'));
     return false;
    }
    else
    {
     document.getElementById('ctl00_ContentPlaceHolder1_tbCity').style.backgroundColor = '';
     arg.IsValid = true;
     MM_showHideLayers('ctl00_ContentPlaceHolder1_rfvcity','','hide'); 
     HideErrorBox();
     return true;
    }
   }

    function ClientValidationSelVal0(src, arg)
   {
    if (arg.Value == 0)
    {
     document.getElementById(src.controltovalidate).style.backgroundColor = '#FFD9D9';
     arg.IsValid = false;
     MM_showHideLayers('search_box_error_example','','show');
     UnsetWait(document.getElementById('ctl00_ContentPlaceHolder1_bnbook'));
     return false;
    }
    else
    {
     document.getElementById(src.controltovalidate).style.backgroundColor = '';
     arg.IsValid = true;
     MM_showHideLayers(src.id,'','hide'); 
     HideErrorBox();
     return true;
    }
   }
   
   
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++){   
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function daysInFebruary (year){
	// February has 29 days in any year evenly divisible by four,
    // EXCEPT for centurial years which are not also divisible by 400.
    return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}

function DaysArray(n) {
	for (var i = 1; i <= n; i++) {
		this[i] = 31
		if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
		if (i==2) {this[i] = 29}
   } 
   return this
}

function getArrPos(Arr, Val) {
  for (var i = 0; i <= Arr.length - 1; i++) {
        if (Arr[i] == Val) {return i}
  }
  return -1;
}

function isDate(dtStr){
  dtStr = prepareDateString(dtStr)
 
  var daysInMonth = DaysArray(12)

  var arrDate=dtStr.split(dtSeparator);
  var arrDateFormat=prepareDateString(dtFormat).split(dtSeparator);
  
  if (arrDate.length != 3) {return false} //wrong date format
	
  /*
  var pos1=dtStr.indexOf(dtSeparator)
  var pos2=dtStr.indexOf(dtSeparator,pos1+1)
	
  var strMonth=dtStr.substring(pos1+1,pos2)
  var strDay=dtStr.substring(0,pos1)
  var strYear=dtStr.substring(pos2+1)
  strYr=strYear
  */
  
  var strDay=arrDate[getArrPos(arrDateFormat, '%d')];
  var strMonth=arrDate[getArrPos(arrDateFormat, '%m')];
  var strYear=arrDate[getArrPos(arrDateFormat, '%Y')];
    
  if (strYear.length == 2) {strYear= '20' + strYear;}

  if (strYear.length > 4) {return false;}
  
  month=parseInt(strMonth, 10)
  day=parseInt(strDay, 10)
  year=parseInt(strYear, 10)
  
  
  if (isNaN(month) || isNaN(day) || isNaN(year)) {return false;}

/*  if (pos1==-1 || pos2==-1){
		//alert("The date format should be : dd.mm.yyyy")
		return false
  }*/
  if (strMonth.length<1 || month<1 || month>12){
		//alert("Please enter a valid month")
		return false
  }
  if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
		//alert("Please enter a valid day")
		return false
  }
/*  if (dtStr.indexOf(dtSeparator,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false){
		//alert("Please enter a valid date")
		return false
  }*/
return true
}

function isEMail(s)
{
 var a = false;
 var res = false;
 if(typeof(RegExp) == 'function')
 {
  var b = new RegExp('abc');
  if(b.test('abc') == true){a = true;}
  }

 if(a == true)
 {
  reg = new RegExp('^([a-zA-Z0-9\\-\\.\\_]+)'+
                   '(\\@)([a-zA-Z0-9\\-\\.]+)'+
                   '(\\.)([a-zA-Z]{2,4})$');
  res = (reg.test(s));
 }
 else
 {
  res = (s.search('@') >= 1 &&
         s.lastIndexOf('.') > s.search('@') &&
         s.lastIndexOf('.') >= s.length-5)
 }
 return(res);
}




function disableValidationCreditCard()
{
  if (document.getElementById('ctl00_ContentPlaceHolder1_cbNoGuarantee').checked==true) 
  {
    document.getElementById('ctl00_ContentPlaceHolder1_rfvCCOrg').enabled=false;
    document.getElementById('ctl00_ContentPlaceHolder1_rfvCCNumber').enabled=false;
    document.getElementById('ctl00_ContentPlaceHolder1_rfvexpDate').enabled=false;
    document.getElementById('ctl00_ContentPlaceHolder1_rfvCCHolder').enabled=false;
  }
  
  if (document.getElementById('ctl00_ContentPlaceHolder1_cbNoGuarantee').checked==false) 
  {
    document.getElementById('ctl00_ContentPlaceHolder1_rfvCCOrg').enabled=true;
    document.getElementById('ctl00_ContentPlaceHolder1_rfvCCNumber').enabled=true;
    document.getElementById('ctl00_ContentPlaceHolder1_rfvexpDate').enabled=true;
    document.getElementById('ctl00_ContentPlaceHolder1_rfvCCHolder').enabled=true;
  }
}

function disableValidationControlsNew()
{
  document.getElementById('ctl00_ContentPlaceHolder1_rfvTitle').enabled=false;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvFirstname').enabled=false;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvLastname').enabled=false;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvAddress1').enabled=false;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvZip').enabled=false;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvCity').enabled=false;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvCountry').enabled=false;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvPhone').enabled=false;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvDate').enabled=false;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvEmailNew').enabled=false;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvEmailNewConf').enabled=false;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvPasswordNew').enabled=false;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvPasswordConf').enabled=false;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvEmail').enabled=true;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvPassword').enabled=true;
}

function disableValidationControlsExist()
{
  document.getElementById('ctl00_ContentPlaceHolder1_rfvTitle').enabled=true;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvLastname').enabled=true;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvTitle').enabled=true;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvFirstname').enabled=true;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvLastname').enabled=true;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvAddress1').enabled=true;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvZip').enabled=true;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvCity').enabled=true;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvCountry').enabled=true;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvPhone').enabled=true;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvDate').enabled=true;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvEmailNew').enabled=true;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvEmailNewConf').enabled=true;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvPasswordNew').enabled=true;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvPasswordConf').enabled=true;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvEmail').enabled=false;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvPassword').enabled=false;
}

function ValidationControlsTraveller(boolEnabled)
{
  document.getElementById('ctl00_ContentPlaceHolder1_rfvTravellerTitle').enabled=boolEnabled;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvTravellerFirstname').enabled=boolEnabled;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvTravellerLastname').enabled=boolEnabled;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvTravellerAddress1').enabled=boolEnabled;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvTravellerZip').enabled=boolEnabled;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvTravellerCity').enabled=boolEnabled;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvTravellerCountry').enabled=boolEnabled;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvTravellerPhone').enabled=boolEnabled;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvTravellerDate').enabled=boolEnabled;
  document.getElementById('ctl00_ContentPlaceHolder1_rfvTravellerEmailNew').enabled=boolEnabled;
}

function CheckLoginSelection()
{
  if (document.getElementById('ctl00_ContentPlaceHolder1_rlregistered_0').checked == true)
  {
   MM_showHideLayers('Continue','','show');
   MM_showHideLayers('exist_customer','','show');
   MM_showHideLayers('noexist_customer','','hide');
   MM_showHideLayers('for_other_traveller','','show');
   MM_showHideLayers('booking_information','','show');
   disableValidationControlsNew();
  }
  
  if (document.getElementById('ctl00_ContentPlaceHolder1_rlregistered_1').checked == true)
  {
   MM_showHideLayers('Continue','','show');
   MM_showHideLayers('exist_customer','','hide');
   MM_showHideLayers('noexist_customer','','show');
   MM_showHideLayers('for_other_traveller','','show');
   MM_showHideLayers('booking_information','','show');
   disableValidationControlsExist();
  }
 
  if (document.getElementById('ctl00_ContentPlaceHolder1_rlTraveller_0').checked == true)
  {
  ValidationControlsTraveller(false);
  MM_showHideLayers('other_traveller','','hide');
  }
  
   if (document.getElementById('ctl00_ContentPlaceHolder1_rlTraveller_1').checked == true)
  {
  ValidationControlsTraveller(true);
  MM_showHideLayers('other_traveller','','show');
  }
  
  if (document.getElementById('ctl00_ContentPlaceHolder1_cbNoGuarantee') != null)
  {
  if (document.getElementById('ctl00_ContentPlaceHolder1_cbNoGuarantee').checked==true) 
  {
    document.getElementById('ctl00_ContentPlaceHolder1_rfvCCOrg').enabled=false;
    document.getElementById('ctl00_ContentPlaceHolder1_rfvCCNumber').enabled=false;
    document.getElementById('ctl00_ContentPlaceHolder1_rfvexpDate').enabled=false;
    document.getElementById('ctl00_ContentPlaceHolder1_rfvCCHolder').enabled=false;
  }
  
  if (document.getElementById('ctl00_ContentPlaceHolder1_cbNoGuarantee').checked==false) 
  {
    document.getElementById('ctl00_ContentPlaceHolder1_rfvCCOrg').enabled=true;
    document.getElementById('ctl00_ContentPlaceHolder1_rfvCCNumber').enabled=true;
    document.getElementById('ctl00_ContentPlaceHolder1_rfvexpDate').enabled=true;
    document.getElementById('ctl00_ContentPlaceHolder1_rfvCCHolder').enabled=true;
  }
  } 
}

function SetWait(obj, text)
{
 //obj.disabled=true;
 var btnText = obj.innerHTML;
 obj.setAttribute('bntxt_bak', btnText);

 var href = obj.getAttribute("href");
 obj.setAttribute('href_bak', href);
 obj.removeAttribute('href');

 //obj.onclick=new Function('return false;');
 obj.innerHTML = text; 
 self.location.href = href;
} 
  
function UnsetWait(obj)
{
 if (obj != null)
 {
  //obj.disabled=false;
  if (obj.getAttribute("href_bak")!= null)
  {
   obj.setAttribute('href', obj.getAttribute("href_bak"));
  }
  //obj.onclick=new Function('return true;');
  if (obj.getAttribute("bntxt_bak") != null)
  {
   obj.innerHTML = obj.getAttribute("bntxt_bak"); 
  }
 }
} 

function HideErrorBox()
{
 if (document.getElementById('search_box_error_example').innerHTML.indexOf('DISPLAY: inline') == -1)
 {
  MM_showHideLayers('search_box_error_example','','hide'); 
 }
}

function Left(str, n){
	if (n <= 0)
	    return "";
	else if (n > String(str).length)
	    return str;
	else
	    return String(str).substring(0,n);
}
function Right(str, n){
    if (n <= 0)
       return "";
    else if (n > String(str).length)
       return str;
    else {
       var iLen = String(str).length;
       return String(str).substring(iLen, iLen - n);
    }
}