
//common function,begin 
	///
	// Title: forbidRightClick <p>
	// Description: This function is used to forbid mouseright click.<p>
	// Copyright:  
	// Company: <p>
	// @author: sunsnow
	// @version 1.0
	// @date    2004/09/09
	// <param name=""></param>
	// <return value="true">allow</return>
	// <return value="false">forbid</return>
	///
	function forbidRightClick(){
		return false;
	}
	/////
	// Title: ChkSafe <p>
	// Description: This function is used to check if the user input is safe.<p>
	// Copyright:  
	// Company: <p>
	// @author: sunsnow
	// @version 1.0
	// @date    2004/09/09
	// <param name="str">check's string</param>
	// <return value="true">safe</return>
	// <return value="false">incertitude</return>
	///
	function ChkSafe(str)
	{	
		fibdn = new Array ("'");//lawless char
		i=fibdn.length;
		j=str.length;
		for (ii=0;ii<i;ii++)
		{	for (jj=0;jj<j;jj++)
			{	temp1=str.charAt(jj);
				temp2=fibdn[ii];
				if (temp1==temp2)
				{	return false; }
			}
		}
		return true;
		
	}

	/////
	// Title: IsNumber <p>
	// Description: This function is used to check if the user input is number.<p>
	// Copyright:  
	// Company: <p>
	// @author: sunsnow
	// @version 1.0
	// @date    2004/09/09
	// <param name="str">check's string</param>
	// <return value="true">number</return>
	// <return value="false">string</return>
	///
	function IsNumber(txtName)
	{
		var strTemp = "";
		if (isNaN(txtName))
		{
			return false ;
		}
		else
		{
			return true;
		}
	}
	/////
	// Title: IsNumber1 <p>
	// Description: <p>
	// Copyright:  
	// Company: <p>
	// @author: sunsnow
	// @version 1.0
	// @date    2004/09/09
	// <param name="objTextbox">check's string</param>
	// <param name="txtName">display message !</param>
	// <return value="true">number</return>
	// <return value="false">string</return>
	///
	function IsNumber1(objTextbox,txtName)
	{
		var txtValue=objTextbox.value;
		var strTemp = "";		
		if (isNaN(txtValue)){
			strTemp = "\"" + txtName + "\" must number!";
			window.alert(strTemp) ;
			objTextbox.value="";
			objTextbox.focus();
			objTextbox.select();
			return false ;
		}else{
			return true ;
		}
	}
	/////
	// Title: IsNumber2 <p>
	// Description: <p>
	// Copyright:  
	// Company: <p>
	// @author: sunsnow
	// @version 1.0
	// @date    2004/09/09
	// <param name="objTextbox">check's string</param>
	// <param name="txtName">display message !</param>
	// <return value="true">number</return>
	// <return value="false">string</return>
	///
	function IsNumber2(objTextbox,txtName)
	{
		var txtValue=objTextbox.value;
		var strTemp = "";
		if (txtValue == ""){
			objTextbox.value="0";
			return false;
		}
		else{
			if (isNaN(txtValue))
			{
				strTemp = "" + txtName + "";
				window.alert(strTemp) ;
				objTextbox.value="0";				
				objTextbox.select();
				return false ;
			}
			else
			{
				return true ;
			}
		}
	}
	/////
	// Title: IsNumberRange <p>
	// Description: <p>
	// Copyright:  
	// Company: <p>
	// @author: sunsnow
	// @version 1.0
	// @date    2004/09/09
	// <param name="objTextbox">check's string</param>
	// <param name="txtName">display message !</param>
	// <param name="Min">Min number Value !</param>
	// <param name="Max">Max number Value !</param>
	// <return value="true">number</return>
	// <return value="false">string</return>
	///
	function IsNumberRange(objTextbox,txtName,minNum,maxNum)
	{
		var txtValue=objTextbox.value;
		var strTemp = "";
		if (txtValue == ""){
			objTextbox.value="0";
			return false;
		}
		else{
			if (isNaN(txtValue))
			{
				strTemp = "" + txtName + "";
				window.alert(strTemp) ;
				objTextbox.value="0";				
				objTextbox.select();
				return false ;
			}
			else
			{
				if(txtValue > maxNum){
					alert("Input Number must <= "+maxNum);					
					objTextbox.value=maxNum;				
					objTextbox.select();
				}else{
					if(txtValue < minNum){
						alert("Input Number must >= "+minNum);					
						objTextbox.value= minNum;				
						objTextbox.select();
					}else
						return true ;
				}
				
			}
		}
	}
	/////
	// Title: IsNumberMin <p>
	// Description: <p>
	// Copyright:  
	// Company: <p>
	// @author: sunsnow
	// @version 1.0
	// @date    2004/09/09
	// <param name="objTextbox">check's string</param>
	// <param name="txtName">display message !</param>
	// <param name="MinNum">Min number Value !</param>
	// <return value="true">number</return>
	// <return value="false">string</return>
	///
	function IsNumberMin(objTextbox,txtName,MinNum)
	{
		var txtValue=objTextbox.value;
		var strTemp = "";
		if (txtValue == ""){
			objTextbox.value="0";
			return false;
		}
		else{
			if (isNaN(txtValue))
			{
				strTemp = "" + txtName + "";
				window.alert(strTemp) ;
				objTextbox.value="0";				
				objTextbox.select();
				return false ;
			}
			else
			{
				if(txtValue < MinNum){
					alert("Input Number must >= "+MinNum);					
					objTextbox.value="0";				
					objTextbox.select();
				}else
					return true ;
			}
		}
	}
	// Title: IsNumberMax <p>
	// Description: <p>
	// Copyright:  
	// Company: <p>
	// @author: sunsnow
	// @version 1.0
	// @date    2004/09/09
	// <param name="objTextbox">check's string</param>
	// <param name="txtName">display message !</param>
	// <param name="MaxNum">Max number Value !</param>
	// <return value="true">number</return>
	// <return value="false">string</return>
	///
	function IsNumberMax(objTextbox,txtName,MaxNum)
	{
		var txtValue=objTextbox.value;
		var strTemp = "";
		if (txtValue == ""){
			objTextbox.value="0";
			return false;
		}
		else{
			if (isNaN(txtValue))
			{
				strTemp = "" + txtName + "";
				window.alert(strTemp) ;
				objTextbox.value="0";				
				objTextbox.select();
				return false ;
			}
			else
			{
				if(txtValue > MaxNum){
					alert("Input Number must <= "+MaxNum);					
					objTextbox.value="0";				
					objTextbox.select();
				}else
					return true ;
			}
		}
	}
	function chkEmail(str)
	{	
		fibdn = new Array ("@",".");
		i=fibdn.length;
		j=str.length;
		var Rtn = true;
		for (ii=0;ii<i;ii++)
		{	
			if (str.indexOf(fibdn[ii])<0){
				Rtn = false;
			}
		}
		return Rtn;
		
	}
	/////
	// Title: chkDate <p>
	// Description: <p>
	// Copyright:  
	// Company: <p>
	// @author: sunsnow
	// @version 1.0
	// @date    2004/09/09
	// <param name="datestr">check's date value</param>
	// <return value="true">date string</return>
	// <return value="false">It isn't date string</return>
	///
	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 false;
		
		for (i=0;i<lthdatestr;i++){	
			if (datestr.charAt(i)== '-')
				status++;
			if (status>2)
				//alert("Invalid format of date!");
				return false;			
			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)

		if ((tmpy.length!=4) || (tmpm.length>2) || (tmpd.length>2))
			return false;
		if (!((1<=month)&&(12>=month)&&(31>=day)&&(1<=day)) )
			return false;
		if (!((year % 4)==0)&& (month==2)&&(day==29))
			return false;
		if ((month<=7)&& ((month % 2)==0)&&(day>=31))
			return false;
		if ((month>=8)&&((month % 2)==1) && (day>=31))
			return false;
		if ((month==2)&&(day==30))
			return false;		
		return true;
	}
	/////
	// Title: chkTime <p>
	// Description: <p>
	// Copyright:  
	// Company: <p>
	// @author: sunsnow
	// @version 1.0
	// @date    2004/09/09
	// <param name="datestr">check's Time value</param>
	// <return value="true">Time string</return>
	// <return value="false">It isn't Time string</return>
	///
	function chkTime(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 false;
		
		for (i=0;i<lthdatestr;i++){	
			if (datestr.charAt(i)== ':')
				status++;
			if (status>2)
				//alert("Invalid format of date!");
				return false;			
			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)

		}
		hour=new String (tmpy);
		minute=new String (tmpm);
		second=new String (tmpd)

		if ((tmpy.length!=2) || (tmpm.length!=2) || (tmpd.length!=2))
			return false;
		if (!((0<=hour)&&(23>=hour)&&(59>=minute)&&(1<=minute)&&(59>=second)&&(1<=second)) )
			return false;		
		return true;
	}
	/////
	// Title: chkDateTime <p>
	// Description: <p>
	// Copyright:  
	// Company: <p>
	// @author: sunsnow
	// @version 1.0
	// @date    2005/03/18
	// <param name="datestr">check's datetime value</param>
	// <return value="true">datetime string</return>
	// <return value="false">It isn't datetime string</return>
	///
	function chkDateTime(datestr)
	{
		var lthdatestr
		if (datestr != "")
			lthdatestr= datestr.length ;
		else
			lthdatestr=0;
			
		var tDate = "";
		var tTime = "";
		//var datestr;
		var status;
		status=0;
		if ( lthdatestr== 0)
			return false;
		
		if(lthdatestr < 19)
			return false;
		tDate = datestr.substring(0,10);
		if(! chkDate(tDate))
			return false;
		if(datestr.charAt(10)!=' ')
			return false;		
		tTime = datestr.substring(11,19);
		return chkTime(tTime);
	}
	function trim(str){
		str = str.toString()
		var index = str.indexOf(" ")
		if(index == -1 || str.length == 0)
			return str
		
		if(index == 0){
			while(index == 0){
				str = str.replace(" ","")
				index = str.indexOf(" ")
			}
		}
		index = str.indexOf(" ",str.length-1)
		
		if(index == str.length -1 && str.length != 0){
			while(index == str.length-1){
				str = str.substring(0,index)
				index = str.indexOf(" ",str.length-1)
			}
		}
		return str
	}
//common function,end 

///
// Title: forbidRightClick <p>
// Description: This function is used to check where are have the commodity.<p>
// Copyright:  
// Company: <p>
// @author: sunsnow
// @version 1.0
// @date    2004/09/09
// <param name=""></param>
// <return value="true">yes</return>
// <return value="false">no</return>
///
function checkIsHave(IsHave,Book_ID){
	if(IsHave=="False"){
		alert("There aren't the commodity for a while,can't order£¡");
		return false;
	}
	//var url;
	//url="/buy/addshopcart.asp?Book_ID="+Book_ID;
	//var status;
	//status="toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=780,height=540";
	//status="";
	//var Win=window.open(url,"shopcart",status);
	//Win.focus();
	return true;
}

function display_info(url,name){
	var newwin=window.open(url,name,"toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=640,height=480");
	newwin.focus();
	return true;

}
function openScript(url, width, height){
	var Win = window.open(url,"openScript",'width=' + width + ',height=' + height + ',resizable=yes,scrollbars=yes,menubar=no,status=yes' );
	Win.focus();
}

function openWin(url){
	var Win = window.open(url,"WinOpen",'' );
	Win.focus();
}
function showDialog_Detail(url){
	window.showModalDialog(url,"Dailog",'dialogWidth:800px;dialogHeight:600px;help:no;scroll:yes;status:no')	
}

//list turn page check
function chkCurrentPage(objSource,objArgs){			
	var chkValue = objArgs.Value;
	objArgs.IsValid = IsNumber(chkValue);
	return;
}

