document.onclick=hideCalendar;
function checkDateLogical(date1,date2)
	{
		
		var newdate1=date1.replace("-","");
		newdate1=newdate1.replace("-","");
		var newdate2=date2.replace("-","");
		newdate2=newdate2.replace("-","");
		
		if(newdate1<newdate2)
			return true;
		else
			return false;
	}

function showCalendar(sImg,bOpenBound,sFld1,sNextP,sNextD,sStartD,sEndD,sVD,sOE,sVDE,sOT,s3F,sFld2,sCallback)
{
	//1.sImg日历弹出位置的控件的名称,
	//2.bOpenBound,
	//3.sFld1取得日期的控件名称,
	
	
	//4.sNextP选取日期后新日历弹出的位置的控件名称,可不输入,
	//5.sNextD选取日期后新日历弹出从中取值的控件名称,可不输入,
	
	//6.sStartD开始有效时间,
	//7.sEndD截至有效时间,
	
	//8.sVD周几有效,例如：'1,3,5',注意星期日应输入'0'
	//9.sOE,单双日有效,'0'表示双日,'1'表示单日
	//10.sVDE特殊日期,例如'2004-10-11,2004-11-20,',最后一定要输入','
	//11.sOT如果是直接在文本框中点击'text',
	//12.s3F下一个日历弹出并选择后点取日期后定位到新的控件
	
	//sFld2,弹出日历默认日期
	//sCallback
	var fld1,fld2;
	var cf=document.getElementById("CalFrame");
	var wcf=window.frames.CalFrame;
	var oImg=document.getElementById(sImg);
	if(!oImg){alert("控制对象不存在！");return;}
	if(!sFld1){alert("输入控件未指定！");return;}
	fld1=document.getElementById(sFld1);
	if(!fld1){alert("输入控件不存在！");return;}
	if(fld1.tagName!="INPUT"||fld1.type!="text"){alert("输入控件类型错误！");return;}
	if(sFld2)
	{
		fld2=document.getElementById(sFld2);
		if(!fld2){alert("参考控件不存在！");return;}
		if(fld2.tagName!="INPUT"||fld2.type!="text"){alert("参考控件类型错误！");return;}
	}
	if(!wcf.bCalLoaded){alert("日历未成功装载！请刷新页面！");return;}
	wcf.n_position=sNextP;
	wcf.n_textdate=sNextD;
	wcf.startdate=sStartD;
	wcf.enddate=sEndD;
	wcf.vailidday=sVD;
	wcf.oddeven=sOE;
	wcf.vailiddate=sVDE;
	wcf.objecttype=sOT;
	wcf.thirdfocus=s3F;
	if(cf.style.display=="block"){cf.style.display="none";return;}
	
	var eT=0,eL=0,p=oImg;
	var sT=document.body.scrollTop,sL=document.body.scrollLeft;
	var eH=oImg.height,eW=oImg.width;
	while(p&&p.tagName!="BODY"){eT+=p.offsetTop;eL+=p.offsetLeft;p=p.offsetParent;}
	if(sOT=="text")
	{
		cf.style.top=+(document.body.clientHeight-(eT-sT)-eH>=cf.height)?eT+eH+20:eT-cf.height;		
	}
	else
	{
		cf.style.top=(document.body.clientHeight-(eT-sT)-eH>=cf.height)?eT+eH:eT-cf.height;		
	}
	cf.style.left=(document.body.clientWidth-(eL-sL)>=cf.width)?eL:eL+eW-cf.width;
	cf.style.display="block";
	
	wcf.openbound=bOpenBound;
	wcf.fld1=fld1;
	wcf.fld2=fld2;
	wcf.callback=sCallback;
	wcf.initCalendar();
}
function hideCalendar()
{
	var cf=document.getElementById("CalFrame");
	cf.style.display="none";
}


function ValidateForm()
{
	//alert("aaa");
	var checkin;
	var checkout;
	var js_lang;
	checkin=document.MiniSearch.arrivaldate.value;
	checkout=document.MiniSearch.leavedate.value;
	//alert(checkin);
		var city_alert="请选择城市";
		var err_msg1="请输入正确的入住日期";
		var err_msg2="请输入正确的离店日期";
		var err_msg3="入住日期必须早于离店日期";
	if (document.MiniSearch.cityid.value=="-") 
	{
		alert(city_alert);
		document.MiniSearch.cityid.focus();
		return false;
	}
	if (chkdate(checkin)==0&&document.MiniSearch.keywords.value==""&&document.MiniSearch.hostelid.value=="-")
	{
		alert(err_msg1);
		document.MiniSearch.arrivaldate.focus();
		return false;
	}
	if (chkdate(checkout)==0&&document.MiniSearch.keywords.value==""&&document.MiniSearch.hostelid.value=="-")
	{
		alert(err_msg2);
		document.MiniSearch.leavedate.focus();
		return false;
	}
	if (!checkDateLogical(checkin,checkout)&&document.MiniSearch.keywords.value==""&&document.MiniSearch.hostelid.value=="-")
	{
		alert(err_msg3);
		document.MiniSearch.arrivaldate.focus();
		return false;		
	}
	return true;
}
function ValidateForm_book()
{
	
	var checkin;
	var checkout;
	var js_lang;
	js_lang=document.book_date_form.js_lang.value;//传递语言种类
	checkin=document.book_date_form.arrivaldate.value;
	checkout=document.book_date_form.leavedate.value;
	//alert(checkin);
	switch(js_lang){
		case "cn":
		var city_alert="请选择城市";
		var err_msg1="请输入正确的入住日期";
		var err_msg2="请输入正确的离店日期";
		var err_msg3="入住日期必须早于离店日期";
		break;
		case "en":
		var city_alert="PLEASE CHOOSE CITY";
		var err_msg1="PLEASE INPUT CHECK-IN DATE";
		var err_msg2="PLEASE INPUT CHECK-OUT DATE";
		var err_msg3="CHECK-IN should be earlier than CHECK-OUT";
		break;
		case "jp":
		var city_alert="都市を選択してください";
		var err_msg1="チェックイン期日を正しく入力してください";
		var err_msg2="チェックアウト期日を正しく入力してください";
		var err_msg3="チェックインの期日が必ずチェックアウトの期日より先にします";
		break;
		case "kr":
		var city_alert="다시 제출하기";
		var err_msg1="정확한 체크인 날짜를 입력하십시오";
		var err_msg2="정확한 체크아웃 날짜를 입력하십시오";
		var err_msg3="체크인 날짜는 반드시 체크아웃 날짜보다 일러야 합니다";
		break;
		}

	if (chkdate(checkin)==0)
	{
		alert(err_msg1);
		document.book_date_form.arrivaldate.focus();
		return false;
	}
	if (chkdate(checkout)==0)
	{
		alert(err_msg2);
		document.book_date_form.leavedate.focus();
		return false;
	}
	if (!checkDateLogical(checkin,checkout))
	{
		alert(err_msg3);
		document.book_date_form.arrivaldate.focus();
		return false;		
	}
	return true;	
}
//函数名：chkdate
//功能介绍：检查是否为日期
//参数说明：要检查的字符串
//返回值：0：不是日期  1：是日期
function chkdate(datestr)
{
 var lthdatestr
 if (datestr != "")
  lthdatestr= datestr.length ;
 else
  lthdatestr=0;
  
 var tmpy="";
 var tmpm="";
 var tmpd="";
 //var datestr;
 var status;
 status=0;
 if ( lthdatestr== 0)
  return 0


 for (i=0;i<lthdatestr;i++)
 { if (datestr.charAt(i)== '-')
  {
   status++;
  }
  if (status>2)
  {
   //alert("Invalid format of date!");
   return 0;
  }
  if ((status==0) && (datestr.charAt(i)!='-'))
  {
   tmpy=tmpy+datestr.charAt(i)
  }
  if ((status==1) && (datestr.charAt(i)!='-'))
  {
   tmpm=tmpm+datestr.charAt(i)
  }
  if ((status==2) && (datestr.charAt(i)!='-'))
  {
   tmpd=tmpd+datestr.charAt(i)
  }

 }
 year=new String (tmpy);
 month=new String (tmpm);
 day=new String (tmpd)
 //tempdate= new String (year+month+day);
 //alert(tempdate);
 if ((tmpy.length!=4) || (tmpm.length>2) || (tmpd.length>2))
 {
  //alert("Invalid format of date!");
  return 0;
 }
 if (!((1<=month) && (12>=month) && (31>=day) && (1<=day)) )
 {
  //alert ("Invalid month or day!");
  return 0;
 }
 if (!((year % 4)==0) && (month==2) && (day==29))
 {
  //alert ("This is not a leap year!");
  return 0;
 }
 if ((month<=7) && ((month % 2)==0) && (day>=31))
 {
  //alert ("This month is a small month!");
  return 0;
 
 }
 if ((month>=8) && ((month % 2)==1) && (day>=31))
 {
  //alert ("This month is a small month!");
  return 0;
 }
 if ((month==2) && (day==30))
 {
  //alert("The Febryary never has this day!");
  return 0;
 }
 
 return 1;
}

