function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function check_form(frm){
	var frmStatus = true;	
	
	if (frm.lname.value == ''){
		alert ("Your last name is an mendatory field, please enter !");
		frmStatus = false;
		return false;
	}
			
	if (frm.fname.value == ''){
		alert ("Your first name is an mendatory field, please enter !");
		frmStatus = false;
		return false;
	}
		
	if (frm.email.value == ''){
		alert ("Your email address is an mendatory field, please enter !");
		frmStatus = false;
		return false;		
	}
	else{
		if (!isValidEmail(frm.email.value)) {
			alert ("Please enter a valid email !");
			frmStatus = false;
			return false;		 
		}	
	}			
	
	switch(frm.name){
		case "form_reserve":
//			var ddob = "";
//			var mdob = "";
//			var ydob = "";
			var tele = "";
			var dob = "";		
			var ddot = "";
			var mdot = "";
			var ydot = "";
			var dot = "";	
			var sp = "";
			var pt = "";	
			var p1 = "";
			var p2 = "";
			var p3 = "";
			var p4 = "";
			var p5 = "";
			var p6 = "";
			var p7 = "";
			var p8 = "";
			var p9 = "";
			var p10 = "";
			var p11 = "";
			var p12 = "";
						
//			ddob = frm.ddob.options[frm.ddob.selectedIndex].value;
//			mdob = frm.mdob.options[frm.mdob.selectedIndex].value;
//			ydob = frm.ydob.value;

			dob = frm.dob.value;
			tele = frm.tele.value;			
			ddot = frm.ddot.options[frm.ddot.selectedIndex].value;
			mdot = frm.mdot.options[frm.mdot.selectedIndex].value;
			ydot = frm.ydot.value;
			dot = ddot + mdot + ydot;		
			
//			sp = frm.sp.options[frm.sp.selectedIndex].value;
			
			pt = frm.pt.options[frm.pt.selectedIndex].value;
			
			p1 = frm.p1.options[frm.p1.selectedIndex].value;
			p2 = frm.p2.options[frm.p2.selectedIndex].value;
			p3 = frm.p3.options[frm.p3.selectedIndex].value;
			p4 = frm.p4.options[frm.p4.selectedIndex].value;
			p5 = frm.p5.options[frm.p5.selectedIndex].value;
			p6 = frm.p6.options[frm.p6.selectedIndex].value;			
			p7 = frm.p7.options[frm.p7.selectedIndex].value;
			p8 = frm.p8.options[frm.p8.selectedIndex].value;
			p9 = frm.p9.options[frm.p9.selectedIndex].value;
			p10 = frm.p10.options[frm.p10.selectedIndex].value;
			p11 = frm.p11.options[frm.p11.selectedIndex].value;	
			p12 = frm.p12.options[frm.p12.selectedIndex].value;	

			if (frm.tele.value == ''){
				alert ("Your telephone is an mendatory field, please enter !");
				frmStatus = false;
				return false;
			}
			
			if (dob == ''){
				alert ("Your date of birth is an mendatory field, please enter !");
				frmStatus = false;
				return false;					
			}
			else{
				if (check_date(dob)){
					alert ("Please enter a valid date of birth !");
					frmStatus = false;
					return false;					
				}
			}

/*			if (check_date(dob)){
				alert ("Please enter a valid date of birth !");
				frmStatus = false;
				return false;
			}
*/			
			
			if (check_date(dot)){
				alert ("Please enter a valid date of treatment !");
				frmStatus = false;
				return false;					
			}
		
			if (frm.addr.value == ''){
				alert ("Your address is an mendatory field, please enter !");
				frmStatus = false;
				return false;	
			}		
			
			if (frm.country.options[frm.country.selectedIndex].value == '#'){
				alert ("Please select a valid country !");
				frmStatus = false;
				return false;				
			}			
		
			if (frm.pt.options[frm.pt.selectedIndex].value == '#'){
				alert ("Please select a valid Preferred Time !");
				frmStatus = false;
				return false;				
			}	

//			if (pack == '#' && mas == '#' && ft == '#' && lt == '#' && hy == '#' && hft == '#' && hbt == '#' && sp == '#'){
			if(p1 == '#' && p2 == '#' && p3 == '#' && p4 == '#' && p5 == '#' && p6 == '#' && p7 == '#' && p8 == '#' && p9 == '#' && p10 == '#' && p11 == '#' && p12 == '#'){
				alert ("Please select a treatment !");
				frmStatus = false;
				return false;
			}
			else{
				
			}	
			
			if (frm.nop.options[frm.nop.selectedIndex].value == '#'){
				alert ("Please select a valid number of person !");
				frmStatus = false;
				return false;				
			}		
			
			break;
		case "form_contact":
			if (frm.enquiry.value == ''){
				alert ("Your enquiry is an mendatory field, please enter !");
				frmStatus = false;
				return false;				
			}		
			break;
		case "form_gift":
			var sp = "";

			var p1 = "";
			var p2 = "";
			var p3 = "";
			var p4 = "";
			var p5 = "";
			var p6 = "";
			var p7 = "";
			var p8 = "";
			var p9 = "";
			var p10 = "";
			var p11 = "";
			var p12 = "";
			
			var cash = "";

			p1 = frm.p1.options[frm.p1.selectedIndex].value;
			p2 = frm.p2.options[frm.p2.selectedIndex].value;
			p3 = frm.p3.options[frm.p3.selectedIndex].value;
			p4 = frm.p4.options[frm.p4.selectedIndex].value;
			p5 = frm.p5.options[frm.p5.selectedIndex].value;
			p6 = frm.p6.options[frm.p6.selectedIndex].value;			
			p7 = frm.p7.options[frm.p7.selectedIndex].value;
			p8 = frm.p8.options[frm.p8.selectedIndex].value;
			p9 = frm.p9.options[frm.p9.selectedIndex].value;
			p10 = frm.p10.options[frm.p10.selectedIndex].value;
			p11 = frm.p11.options[frm.p11.selectedIndex].value;	
			p12 = frm.p12.options[frm.p12.selectedIndex].value;		
			
			cash = frm.cash.options[frm.cash.selectedIndex].value;		
		
			if (frm.choice[0].checked){
//			if (pack == '#' && mas == '#' && ft == '#' && lt == '#' && hy == '#' && hft == '#' && hbt == '#' && sp == '#'){
				if(p1 == '#' && p2 == '#' && p3 == '#' && p4 == '#' && p5 == '#' && p6 == '#' && p7 == '#' && p8 == '#' && p9 == '#' && p10 == '#' && p11 == '#' && p12 == '#'){
					alert ("Please select a treatment !");
					frmStatus = false;
					return false;						
				}
			}
			else{
				if (cash == "#"){
					alert ("Please select a cash value !");
					frmStatus = false;
					return false;	
				}
			}
			
			if (frm.noc.value == '#'){
				alert ("Number of cretificate is an mendatory field, please enter !");
				frmStatus = false;
				return false;				
			}						
			
			if (frm.cn.value == ''){
				alert ("Your credit card number is an mendatory field, please enter !");
				frmStatus = false;
				return false;				
			}	
			
			if (frm.noch.value == ''){
				alert ("Name of credit cardholder is an mendatory field, please enter !");
				frmStatus = false;
				return false;				
			}		
			
			if (frm.billaddr.value == ''){
				alert ("Your billing address is an mendatory field, please enter !");
				frmStatus = false;
				return false;				
			}				
			
			break;			
	}
	
	if (frmStatus){ 
		frm.submit(); 
		return true;
	}
}

function isValidEmail(str) {
   return (str.indexOf(".") > 2) && (str.indexOf("@") > 0); 
}

function isDate(dateStr) {
		var datePat = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/;
		var matchArray = dateStr.match(datePat); // is the format ok?
		
		if (matchArray == null) {
			alert("Please enter your birth date as dd/mm/yyyy. Your current selection reads: " + dateStr);
			return false;
		}
		
		day = matchArray[1]; // p@rse date into variables
		month = matchArray[3];
		year = matchArray[5];
		
		if (month < 1 || month > 12) { // check month range
			alert("Month must be between 1 and 12.");
			return false;
		}
		
		if (day < 1 || day > 31) {
			alert("Day must be between 1 and 31.");
			return false;
		}
		
		if ((month==4 || month==6 || month==9 || month==11) && day==31) {
			alert("Month "+month+" doesn`t have 31 days!");
			return false;
		}
		
		if (month == 2) { // check for february 29th
			var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
			if (day > 29 || (day==29 && !isleap)) {
				alert("February " + year + " doesn`t have " + day + " days!");
				return false;
			}
		}
		
		return true; // date is valid
}

function check_date(field){
	var checkstr = "0123456789";
	var DateField = field;
	var DateValue = "";
	var DateTemp = "";
	var seperator = ".";
	var day;
	var month;
	var year;
	var leap = 0;
	var err = 0;
	var i;
	
   err = 0;
   DateValue = DateField;
   /* Delete all chars except 0..9 */
   for (i = 0; i < DateValue.length; i++) {
	  if (checkstr.indexOf(DateValue.substr(i,1)) >= 0) {
	     DateTemp = DateTemp + DateValue.substr(i,1);
	  }
   }
   DateValue = DateTemp;
   /* Always change date to 8 digits - string*/
   /* if year is entered as 2-digit / always assume 20xx */
   if (DateValue.length == 6) {
      DateValue = DateValue.substr(0,4) + '20' + DateValue.substr(4,2); }
   if (DateValue.length != 8) {
      err = 19;}
   /* year is wrong if year = 0000 */
   year = DateValue.substr(4,4);
   if (year == 0) {
      err = 20;
   }
   /* Validation of month*/
   month = DateValue.substr(2,2);
   if ((month < 1) || (month > 12)) {
      err = 21;
   }
   /* Validation of day*/
   day = DateValue.substr(0,2);
   if (day < 1) {
     err = 22;
   }
   /* Validation leap-year / february / day */
   if ((year % 4 == 0) || (year % 100 == 0) || (year % 400 == 0)) {
      leap = 1;
   }
   if ((month == 2) && (leap == 1) && (day > 29)) {
      err = 23;
   }
   if ((month == 2) && (leap != 1) && (day > 28)) {
      err = 24;
   }
   /* Validation of other months */
   if ((day > 31) && ((month == "01") || (month == "03") || (month == "05") || (month == "07") || (month == "08") || (month == "10") || (month == "12"))) {
      err = 25;
   }
   if ((day > 30) && ((month == "04") || (month == "06") || (month == "09") || (month == "11"))) {
      err = 26;
   }
   /* if 00 ist entered, no error, deleting the entry */
   if ((day == 0) && (month == 0) && (year == 00)) {
      err = 0; day = ""; month = ""; year = ""; seperator = "";
   }

	return err;
}

function popWin(path, w, h){
	day = new Date();
	id = day.getTime();
	
	eval("page" + id + " = window.open(path, '" + id + "', 'toolbar=0,scrollbars=0,location=0,statusbar=1,menubar=0,resizable=1,width="+w+",height="+h+"');");
}	