// ---------------------- 常用JavaScript验证函数及通用函数库 -------------------------- //
// 用法：<script language="javascript" src=/js/check.js></script>                       //
//
// testPassword      -  检查密码格式是否正确
// testIpAddress     -  检查IP地址格式是否正确（不完全）
// testEmail         -  检查Email地址格式是否正确
// testIDC           -  检查身份证件号码格式是否正确
// testY2KMMDD       -  检查日期格式是否正确(YYYY-MM-DD)
// testY2KMMDD2      -  检查日期格式是否正确(YYYYMMDD)
// test200YMMDD      -  检查日期格式是否正确
// testNumber        -  检查是否是数字字符串
// testCustID1       -  检查客户的ID[字母开头]
// testCustID2       -  检查客户的ID[全是数字]
// testAmount        -  检查金额的格式
// testTeleNo        -  检查电话号码格式
//
// getTodayDate      -  得到今天的日期
// setInputV         -  设置EDIT的内容
// getInputV         -  得到EDIT的内容
// setCheckboxV      -  设置当前选择
// getCheckboxV      -  得到选中的字符串
// testCheckboxItem  -  检查是否有选择  
// setSelectV        -  设置当前选择
// getSelectV        -  得到当前选择的值
// testSelect        -  检查是否有选择
// setRadioV         -  设置当前选择
// getRadioV         -  得到当前选择的值
// testRadioItem     -  检查是否有选择
// --------------------------------------- ---------------------------------------- //


// ---------------------------------- 数据验证类 ----------------------------------- //
function testPassword(varValue)
{
	if(varValue.length==0)  return true;
	
	var varPattern = /^([a-zA-Z0-9_-]){6,8}$/;
	if(!varPattern.test(varValue))
		alert("你所输入的密码格式或者位数不对，请检查！");
	return varPattern.test(varValue);
}

function testIpAddress(varValue)
{
	if(varValue.length==0)  return true;
	
	var varPattern = /^(\d){1,3}(\.(\d){1,3}){3}$/;
	
	return varPattern.test(varValue);
}

function testEmail(varValue)
{
	if(varValue.length==0)  return true;
	
	var varPattern = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;
	
	return varPattern.test(varValue);
}

function testIDC(varValue,varType)
{
	if(varValue.length==0)  return true;
	
	var varPattern="";
	var varTypeValue = varType[varType.options.selectedIndex].value;
	
	switch(varTypeValue)
	{
		case "0":	varPattern = /^(\d){15}((\d){3})?$/;   break;
		case "1":	varPattern = /^([a-zA-Z0-9]){6,}$/;   break;
		case "2":	varPattern = /^(\d){6,}$/;   break;
	}

	if(!varPattern.test(varValue))
		alert("你所输入的身份证件格式不对，请检查！");
	return varPattern.test(varValue);
}

function testYYYYMMDD(varValue)
{
	if(varValue.length==0)  return true;
	
	var varPattern = /^[1,2]{1}(\d){3}[-]{1}(([0]{1}(\d){1})|([1]{1}[0,1,2]{1}))[-]{1}(([0,1,2]{1}(\d){1})|([3]{1}[0,1]{1}))$/;
	
	return varPattern.test(varValue);
}

function testYYYYMMDD2(varValue)
{
	if(varValue.length==0)  return true;
	
	var varPattern = /^[1,2]{1}(\d){3}(([0]{1}(\d){1})|([1]{1}[0,1,2]{1}))(([0,1,2]{1}(\d){1})|([3]{1}[0,1]{1}))$/;
	if(!varPattern.test(varValue))
		alert("你所输入的日期格式不对，请检查！");
	return varPattern.test(varValue);
}

function testY2KMMDD(varValue)
{
	if(varValue.length==0)  return true;
	
	var varPattern  = /^200(\d){1}[-]{1}(([0]{1}(\d){1})|([1]{1}[0,1,2]{1}))[-]{1}(([0,1,2]{1}(\d){1})|([3]{1}[0,1]{1}))$/;
	//if(!varPattern.test(varValue))
		//alert("你所输入的日期格式不对，请检查！");
	return varPattern.test(varValue);
}

function testY2KMMDD2(varValue)
{
	if(varValue.length==0)  return true;
	
	var varPattern  = /^200(\d){1}(([0]{1}(\d){1})|([1]{1}[0,1,2]{1}))(([0,1,2]{1}(\d){1})|([3]{1}[0,1]{1}))$/;
	if(!varPattern.test(varValue))
		alert("你所输入的日期格式不对，请检查！");
	return varPattern.test(varValue);
}

function testNumber(varValue)
{
	if(varValue.length==0)  return true;
	
	var varPattern = /^(\d)+$/;
	
	return varPattern.test(varValue);
}

function testCustID1(varValue)
{
	if(varValue.length==0)  return true;
	
	var varPattern = /^([a-zA-Z]){1}([a-zA-Z0-9_-]){2,}$/;
	//if(!varPattern.test(varValue))
		//alert("你所输入的客户号码格式不对，请检查！");
	return varPattern.test(varValue);
}

function testCustID2(varValue)
{
	if(varValue.length==0)  return true;
	
	var varPattern = /^(\d){1,30}$/;
	if(!varPattern.test(varValue))
		alert("你所输入的客户号码格式不对，请检查！");
	return varPattern.test(varValue);
}

function testAmount(varValue)
{
	if(varValue.length==0)  return true;
	
	var varPattern = /^(\d)+\.{0,1}(\d)+$/;
	if(!varPattern.test(varValue))
		alert("你所输入的金额格式不对，请检查！");
	return varPattern.test(varValue);
}

function testTeleNo(varValue)
{
	if(varValue.length==0)  return true;
	
	var varValue2 = varValue + ";";
	var varPattern = /^((\d)+[-]{0,1}(\d)+\;)+$/;
	if(!varPattern.test(varValue2))
		alert("你所输入的电话号码格式不对，请检查！");
	return varPattern.test(varValue2);
}

// -------------------------------- 其他功能函数 ------------------------------------ //
function getTodayDate(varType)
{
	var varDate = new Date();
	var varDay = eval(varDate.getDate());
	var varMonth = eval(varDate.getMonth())+1;
	
	var varRet = "" + varDate.getFullYear();
	if(varType==0)
		varRet += "-" + ((varMonth<10)?"0":"") + varMonth;
	else
		varRet += ((varMonth<10)?"0":"") + varMonth;
		
	if(varType==0)
		varRet += "-" + ((varDay<10)?"0":"") + varDay;
	else
		varRet += ((varDay<10)?"0":"") + varDay;

	return varRet;
}

function setInputV(varInput, varCurStr)
{
	varInput.value = varCurStr;
}

function getInputV(varInput)
{
	return varInput.value;
}

function setCheckboxV(varArray, varCurStr)
{
	if(varCurStr=="")
	{
		for(var count=0; count<varArray.length; count++)
			varArray[count].checked = false;
	}
	else
	{
		varMatch = /((\d)+\,)/ig;
		varOrgStr = varCurStr + ",";
		
		while(varOrgStr!="")
		{
			varFlag = varMatch.exec(varOrgStr)
			varTmpStr = varFlag[0].substring(0,varFlag[0].length-1);
			varOrgStr = varOrgStr.substring(varTmpStr.length+1,varOrgStr.length);

			for(var count=0; count<varArray.length; count++)
			{
				if(varArray[count].value==varTmpStr)
				{
					varArray[count].checked=true;
					break;
				}
			}
		}
	}
}

function getCheckboxV(varArray)
{
	var varRet = "";
	for(var count=0; count<varArray.length; count++)
	{
		if(varArray[count].checked)
			varRet += varArray[count].value +",";
	}
	
	return varRet;
}

function testCheckboxItem(varArray, varCurStr)
{
	var varRet = false;
	for(var count=0; count<varArray.length; count++)
	{
		if(varArray[count].value==varCurStr&&varArray[count].checked)
		{
			varRet = true;
			break;
		}
	}
	
	return varRet;
}

function testCheckbox(varArray)
{
	if(getCheckboxV(varArray)=="")
		return false;
	else
		return true;
}

function setSelectV(varArray, varCurStr)
{
	for(var count=0; count<varArray.length; count++)
	{
		if(varArray[count].value == varCurStr)
		{
			varArray[count].selected=true;
			break;
		}
	}
}

function getSelectV(varArray)
{
	var varIndex = varArray.options.selectedIndex;
	return varArray[varIndex].value;
}

function testSelectItem(varArray, varCurStr)
{
	var varRet =false;
	for(var count=0; count<varArray.length; count++)
	{
		if(varArray[count].value==varCurStr&&varArray[count].selected)
		{
			varRet = true;
			break;
		}
	}
	
	return varRet;
}

function testSelect(varArray)
{
	var varIndex = varArray.options.selectedIndex;
	if(varArray[varIndex].value!="")
		return true;
	else
		return false;
}

function setRadioV(varArray, varCurStr)
{
	if(varCurStr=="")
	{
		for(var count=0; count<varArray.length; count++)
			varArray[count].checked=false;
	}
	else
	{
		for(var count=0; count<varArray.length; count++)
		{
			if(varArray[count].value == varCurStr)
			{
				varArray[count].checked=true;
				break;
			}
		}
	}
}
	
function getRadioV(varRadio)
{
	var varRet = "";
	var num = varRadio.length;

	for(var count=0; count<num; count++) 
	{
		if(varRadio[count].checked==true)
		{
			varRet = varRadio[count].value;
			break;
		}
	}
	
	return varRet;
}

function testRadioItem(varRadio, varCurStr)
{
	var varRet = false;
	var num = varRadio.length;
	
	for(var count=0; count<num; count++) 
	{
		if(varRadio[count].value==varCurStr&&varRadio[count].checked)
		{
			varRet = true;	
			break;
		}
	}
	
	return  varRet;
}

function  testRadio(varRadio)
{
	var varRet = false;
	var num = varRadio.length;
	
	for(var count=0; count<num; count++)
	{
		if(varRadio[count].checked)
		{
			varRet = true;
			break;
		}
	}
	
	return varRet;
}

function testMailPassword(varValue)
{
	if(varValue.length==0)  return true;
	
	var varPattern = /^([a-zA-Z0-9_-]){6,16}$/;
	//if(!varPattern.test(varValue))
		//alert("你所输入的密码格式或者位数不对，请检查！");
	return varPattern.test(varValue);
}

