﻿// function isInt(Value)
// function isPositiveInteger(theString)
// function XCheck_Date(titleName,EID,Info,Must)
// function XCheck_IP(titleName,EID,Info,Must)
// function XCheck_int(titleName,EID,Info,Must)
// function XCheck_Int(titleName,EID,Info,Minima,Maxima,Must)
// function XCheck_Tel(titleName,EID,Info,Must)
// function XCheck_TEL(titleName,EID,Info,Must)
// function XCheck_Zip(titleName,EID,Info,Must)
// function XCheck_Number(titleName,EID,Info,Must)
// function XCheck_String(titleName,EID,Info,Minima,Maxima,Must)
// function XCheck_Email(titleName,EID,Info,Must)
// function XCheck_Pwd(titleName,EID,Info,Minima,Maxima,Must)
// function XCheck_Pwd2(titleName,EID,EID2,Info)
// function XCheck_FCK(titleName,EID,Info,Must)
// -----------------------------------------------
// function XCheck_Infos(titleName,EID,Info,Message)
// function XCheck_Info(Info,Message)
// function XCheck_Focus(titleName,EID,Message)
// var ErrColor="#FF0000";

//去除字串左邊的空白虛格
function ltrim(instr){
return instr.replace(/^[\s]*/gi,"");
}

//去除字串右邊的空白虛格
function rtrim(instr){
return instr.replace(/[\s]*$/gi,"");
}

//去除字串前後的空白虛格
function trim(instr){
instr = ltrim(instr);
instr = rtrim(instr);
return instr;
}

function isInt(Value)
{
	for(i=0;i<Value.length;i++)
	{ 
		var c= Value.charAt(i);
		if(!(c>="0" && c<="9"))
		{
			return false;
		}
	}
	return true;
}
function isPositiveInteger(theString)
{
  var theData = new String(theString)
  var re5digit = /^\d+$/;
  for (var i = 1; i < theData.length; i++)
  {
    if (theData.search(re5digit)==-1) return false
    else return true
   }
}
function isDate(Value)
{
	var a1=Value.split("/");
	var a2=Value.split("-");
	var e=true;
	if ((a1.length!=3) && (a2.length!=3)) e=false;
	else
  {
		if (a1.length==3) var na=a1;
		if (a2.length==3) var na=a2;
		if (isPositiveInteger(na[0]) &&  isPositiveInteger(na[1]) && isPositiveInteger(na[2]))
		{
			var m=na[1],d=na[2];
			var y=na[0];
			if ((e) && (y<1000)) e=false
			if (e)
			{
				v=new Date(y+"/"+m+"/"+d);
   			if(v.getMonth()!=m-1) e=false;
			}
		}
		else e=false;
  }
	return e;
}
function XCheck_Date(titleName,EID,Info,Must)
{
	var Message="";
	var Value="";	if(document.getElementById(EID)!=null) Value=trim(document.getElementById(EID).value);
	if(Must==1 && Value.length==0) Message="必須輸入資料！";
	else if(!isDate(Value)) Message="必須是日期格式！";
	return XCheck_Infos(titleName,EID,Info,Message);
}
function XCheck_IP(titleName,EID,Info,Must)
{
	var Message="";
	var Value="";	if(document.getElementById(EID)!=null) Value=trim(document.getElementById(EID).value);
	if(Must==1 && Value.length==0) Message="必須輸入資料！";
	else
	{
		var reg=/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/
		if(arr=Value.match(reg))
		{
			for(i=1;i<arr.length;i++)
				if(parseInt(arr[i])>255)
				{
					Message="必須是 IP Address 格式！";
					break;
				}
		}
		else Message="必須是 IP Address 格式！";
	}
	return XCheck_Infos(titleName,EID,Info,Message);
}
function XCheck_int(titleName,EID,Info,Must)
{
	var Message="";
	var Value="";	if(document.getElementById(EID)!=null) Value=trim(document.getElementById(EID).value);
	if(Must==1 && Value.length==0) Message="必須輸入資料！";
	if(Message=="") for(i=0;i<Value.length;i++)
	{ 
		var c= Value.charAt(i);
		if(!(c>="0" && c<="9"))
		{
			Message="必須是數字！";
			break;
		}
	}
	return XCheck_Infos(titleName,EID,Info,Message);
}
function XCheck_Int(titleName,EID,Info,Minima,Maxima,Must)
{
	var Message="";
	var Value="";	if(document.getElementById(EID)!=null) Value=trim(document.getElementById(EID).value);
	if(Must==1 && Value.length==0) Message="必須輸入資料！";		
	if(Message=="") for(i=0;i<Value.length;i++)
	{ 
		var c= Value.charAt(i);		
		if(!(c>="0" && c<="9"))
		{
			Message="必須是數字！";
			break;
		}
	}
	if(Message=="" && (Number(Value) < Number(Minima) || Number(Value) > Number(Maxima)))
		Message="必須介於"+minima+"~"+maxima+"！";
	return XCheck_Infos(titleName,EID,Info,Message);
}
function XCheck_Tel(titleName,EID,Info,Must)
{
	var Message="";
	var Value="";	if(document.getElementById(EID)!=null) Value=trim(document.getElementById(EID).value);
	if(Must==1 && Value.length==0) Message="必須輸入資料！";	
	else if(Value.length >15) Message="長度最多15個字！";
	else
	{
		for(idx=0;idx<Value.length;idx++)
		{
			if(!((Value.charAt(idx)>='0' && Value.charAt(idx)<= '9') || (Value.charAt(idx)=='-') || (Value.charAt(idx)=='(') || (Value.charAt(idx)==')') || (Value.charAt(idx)=='#')))
			{
				Message="必須是數字 ( ) - # 等符號！";
				break;
			}
		}
	}
	return XCheck_Infos(titleName,EID,Info,Message);
}
function XCheck_TEL(titleName,EID,Info,Must)
{
	var Message="";
	var Value="";	if(document.getElementById(EID)!=null) Value=trim(document.getElementById(EID).value);
	if(Must==1 && Value.length==0) Message="必須輸入資料！";	
	else if(Value.length >20) Message="長度最多20個字！";
	else
	{
		for(idx=0;idx<Value.length;idx++)
		{
			if(!((Value.charAt(idx)>='0' && Value.charAt(idx)<= '9') || (Value.charAt(idx)=='-') || (Value.charAt(idx)=='(') || (Value.charAt(idx)==')') || (Value.charAt(idx)=='#')))
			{
				Message="必須是數字 ( ) - # 等符號！";
				break;
			}
		}
	}
	return XCheck_Infos(titleName,EID,Info,Message);
}
function XCheck_Zip(titleName,EID,Info,Must)
{
	var Message="";
	var Value="";	if(document.getElementById(EID)!=null) Value=trim(document.getElementById(EID).value);
	
	if(Must==0 && Value.length==0) { }
	else if(Must==1 && Value.length==0) Message="必須輸入資料！";	
	else if(Value.length >6 || Value.length <3)
		Message="輸入錯誤！";
	else if(XCheck_int(titleName,EID,Info,Must)!="")
		Message="必須是數字！";
	return XCheck_Infos(titleName,EID,Info,Message);
}
function XCheck_Number(titleName,EID,Info,Must)
{
	var Message="";
	var Value="";	if(document.getElementById(EID)!=null) Value=trim(document.getElementById(EID).value);
	if(Must==0 && Value.length==0) return "";	
	else if(Value.length!=8)
		Message="輸入錯誤！";
	else if(XCheck_int(titleName,EID,Info,Must)!="")
		Message="必須是數字！";
	return XCheck_Infos(titleName,EID,Info,Message);
}
function XCheck_String(titleName,EID,Info,Minima,Maxima,Must)
{
	var Message="";
	var Value="";	if(document.getElementById(EID)!=null) Value=trim(document.getElementById(EID).value);
	if(Must==1 && Value.length==0) Message="必須輸入資料！";	
	else if(Value.length >Maxima)
		Message="長度不可超過"+Maxima+"個字！";
	else if(Value.length <Minima)
		Message="長度不可少於"+Minima+"個字！";
	return XCheck_Infos(titleName,EID,Info,Message);
}
function XCheck_Email(titleName,EID,Info,Must)
{
	var Message="";
	var Value="";	if(document.getElementById(EID)!=null) Value=trim(document.getElementById(EID).value);
	if(Must==1 && Value.length==0) Message="必須輸入資料！";
	else if(Must==0 && Value.length==0) { Message=""; }
	else if(Value.length>64)
		Message="長度不可超過 64 個字！";
	else		
	{
		for(i=0;i<Value.length;i++)
		{ 
			var c= Value.charAt(i);
			if(!((c>="A"&&c<="Z")||(c>="a"&&c<="z")||(c>="0"&&c<="9")||(c=="-")||(c=="_")||(c==".")||(c=="@")))
				Message="電子郵件格只能是數字、英文字母及'@','-','_'等符號！";
		}
		if(Message=="")
		{
			if((Value.indexOf("@")==-1)||(Value.indexOf("@")==0)||(Value.indexOf("@")==(Value.length-1)))
				Message="電子郵件格式錯誤！";
			else if((Value.indexOf("@")!=-1)&&(Value.substring(Value.indexOf("@")+1,Value.length).indexOf("@")!=-1))
				Message="電子郵件格式錯誤！";			
			else if((Value.indexOf(".")==-1)||(Value.indexOf(".")==0)||(Value.lastIndexOf(".")==(Value.length-1)))
				Message="電子郵件格式錯誤！";
		}
	}
	return XCheck_Infos(titleName,EID,Info,Message);
}
function XCheck_Pwd(titleName,EID,Info,Minima,Maxima,Must)
{
	var Message="";
	var Value="";	if(document.getElementById(EID)!=null) Value=trim(document.getElementById(EID).value);
	if(Must==1 && Value.length==0) Message="必須輸入資料！";
	else if(Value.length > Maxima)
		Message="長度不可超過"+Maxima+"個字！";
	else if(Value.length < Minima)
		Message="長度不可少於"+Minima+"個字！";
	return XCheck_Infos(titleName,EID,Info,Message);
}
function XCheck_Pwd2(titleName,EID,EID2,Info)
{
	var Message="";
	var Value=""; if(document.getElementById(EID)!=null) Value=trim(document.getElementById(EID).value);
	var Value2=""; if(document.getElementById(EID)!=null) Value2=document.getElementById(EID2).value;
	if(Value!=Value2)
		Message="重複輸入錯誤！";
	return XCheck_Infos(titleName,EID,Info,Message);
}
function XCheck_FCK(titleName,EID,Info,Must)
{
	var Message="";
	var Value=FCKeditorAPI.GetInstance(EID).GetXHTML(true); // alert(Value.length);
	if(Must==1 && Value.length==0) Message="必須輸入資料！";	
	return XCheck_Infos(titleName,EID,Info,Message);
}
function XCheck_Infos(titleName,EID,Info,Message)
{
	XCheck_Info(Info,Message);
	return XCheck_Focus(titleName,EID,Message);
}
function XCheck_Info(Info,Message)
{
	if(document.getElementById(Info)!=null)
	{
		if(Message=="") document.getElementById(Info).innerHTML="";
		else document.getElementById(Info).innerHTML="&nbsp;<font color='#FF0000'>"+Message+"</font>";
	}
}
function XCheck_Focus(titleName,EID,Message)
{
	if(Message!="")
	{
		if(titleName!="") Message="【"+titleName+"】 "+Message;
		if(document.getElementById(EID)!=null && document.getElementById(EID).type!="hidden")
			document.getElementById(EID).focus();
		Message+="\n";
	}
	return Message;
}
