var MsgFieldError="参数输入错误，域名：";
var Message="本系统对字符=&|,;'\"\\! 敏感,请避免输入这些字符";

function Refocus(field)
{
	field.focus();
	if (field.type=="text")
	{
	field.select();
	}
}

function DspAlert(field,label)
{
	Refocus(field);
	alert('\n'+MsgFieldError+label+'\n');
}

function DspAlert1(field,label,msg)
{

	if(msg==null) 
	{
	msg="";
	}
	Refocus(field);;
	alert("\n"+MsgFieldError+label+"\n"+msg);
}

function trim(sData)
{
	while ((sData.length > 0) && (( sData.charAt(0)==' ') ||( sData.charAt(0)=='\t')))
	{
	sData=sData.substring(1,sData.length);
	}
	while ((sData.length > 0) && (( sData.charAt(sData.length-1)==' ') 
	|| sData.charAt(sData.length-1)=='\t'))
	{
	sData=sData.substring(0,sData.length-1);
	}
	return sData;
}


function GetCurrentDate()
{
	var Year=0;
	var Month=0;
	var Day=0;
	var CurrentDate=new Date();
	return ChangeDateToString(CurrentDate);
}

function GetDate(day)
{
	var ms=0;
	var CurrentDate=new Date();
	ms=CurrentDate.getTime();
	ms=ms + day*24*60*60*1000;
	var NewDate=new Date(ms);
	var sNewDate; 
	sNewDate=ChangeDateToString(NewDate);
	return sNewDate;
}

function ChangeDateToString(DateIn)
{
	var Year=0;
	var Month=0;
	var Day=0;
	var CurrentDate="";
	Year=DateIn.getYear();
	Month=DateIn.getMonth()+1;
	Day=DateIn.getDate();
	CurrentDate=Year + "-";
	if (Month >=10 )
	{
	CurrentDate=CurrentDate + Month + "-";
	}
	else
	{
	CurrentDate=CurrentDate + "0" + Month + "-";
	}
	if (Day >=10 )
	{
	CurrentDate=CurrentDate + Day ;
	}
	else
	{
	CurrentDate=CurrentDate + "0" + Day ;
	}
	return CurrentDate;
}

function ValidNull(field,AllowNull,label)
{
	if ((field.value.length==0 && AllowNull==true) || field.value.length!=0 )
	{
	return true;
	}
	else 
	{
	DspAlert1(field,label,"不能为空");
	return false;
	}
}

function BeNull(field,label) 
{
 if ((field.value !=null)&&(field.value !=""))
 {
	DspAlert1(Field,label,"此参数不能输入");
	return false;
 }
 return true;
}

function GeneralMatch(start,field,matchString) 
{
	var valid=matchString;
	var temp;
	for	(var i=start;i<field.value.length;i++) 
	{
	temp="" + field.value.substring(i, i+1);
	if (valid.indexOf(temp)=="-1") 
	{
	return false;
	break;
	}
	}
	return true;
}

function ValidKey(field,label) 
{
	var valid="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
	var start=0;
	if (GeneralMatch(start,field,valid))
	{
	return true;
	}
	else
	{
	DspAlert(field,label);
	return GeneralMatch(start,field,valid);
	}

}

function ValidId(field,label,msg)
{
	var firstvalid="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
	var valid="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; 
	var ok=true;
	var start=1;
	if (firstvalid.indexOf(field.value.substring(0,	1))=="-1") 
	{
	ok=false;
	}
	else
	{
	if(GeneralMatch(start,field,valid)==false) ok=false;
	}
	if (ok==false)
	{
	DspAlert1(field,label,msg);
	return false;
	}
	return true;
}

function ValidInvaKey(field,label) 
{
	var invalid=",'\"=|&;\\!";
	var find=false;
	var temp;
	for (var i=0;i<field.value.length;i++) 
	{
	temp="" + field.value.substring(i, i+1);
	if (invalid.indexOf(temp)!="-1") 
	{
	find=true;
	break;
	}
	}
	if (find)
	{
	Refocus(field);
	DspAlert1(field,label,Message);
	return false;
	}
	return true;
}

function ValidZero(field,label) 
{
	if (field.value==0) 
	{
	DspAlert1(field,label,"输入值不能为0");
	return false;
	}
	return true;
}

function ValidDigit(field,label) 
{
	var valid="0123456789";
	var ok=true;
	var temp;
	var start=0;
	if ( field.value.substring(start, start+1)=="-" )
	{
	start=1;
	}
	if(GeneralMatch(start,field,valid)==false) 
	{
	ok=false;
	}
	if (ok==false)
	{
	DspAlert1(field,label,"不是合法的数字");
	return false;
	}
	return true;
}

function ValidDigitNotLessZero(field,label) 
{
	var valid="0123456789";
	var ok=true;
	var temp;
	var start=0;
	if(GeneralMatch(start,field,valid)) 
	{
	DspAlert1(field,label,"不是大于0的数字");
	return false;
	}
	return true;
}

function ValidDate(field,label) 
{
	var datePat=/^(\d{2}|\d{4})(\-)(\d{1,2})(\-)(\d{1,2})$/;
	var dateStr=field.value;
	var matchArray=dateStr.match(datePat);
	if (matchArray==null)
	{
	DspAlert1(field,label,"不是合法的日期格式yyyy-mm-dd");
	return false;
	}
	year=matchArray[1];
	month=matchArray[3];
	day=matchArray[5];
	if (year.length!=4 || month.length!=2 || day.length!=2)
	{
	DspAlert1(field,label,"不是合法的日期格式yyyy-mm-dd");
	return false;
	}
	if (month < 1 || month > 12) 
	{ 
	DspAlert1(field,label,"月份错误");
	return false;
	}
	if (day	< 1 || day > 31) 
	{
	DspAlert1(field,label,"日期错误");
	return false;
	}
	if ((month==4 || month==6 || month==9 || month==11) && day==31)
	{
	DspAlert1(field,label,"大小月份错误");
	return false;
	}
	if (month==2)
	{ 
	var isleap=(year % 4==0	&& (year % 100 !=0 || year % 400==0));
	if (day>29 || ((day==29) && (!isleap)))
	{
	DspAlert1(field,label,"闰年错误");
	return false;
	}
	}
	return true;

}

function ValidYearMonth(field,label) 
{
	var dateStr=field.value;
	if (dateStr==null || dateStr=="" || isNaN(dateStr)
	|| dateStr.length!=6)
	{
	DspAlert(field,label);
	return false;
	}
	year=dateStr.substring(0,4);
	month=dateStr.substring(4,6);
	if (month < 1 || month	> 12)
	{
	DspAlert(field,label);
	return false;
	}
	return true;
}

function ValidTime(field,label) 
{
	var timePat=/^(\d{1,2}):(\d{2})(:(\d{2}))$/;
	var timeStr=field.value;
	var matchArray=timeStr.match(timePat);
	if (matchArray==null)
	{
	DspAlert1(field,casenum,"不是合法的时间格式:hh:mi:ss");
	return false;
	}

	hour=matchArray[1];
	minute=matchArray[2];
	second=matchArray[4];
	if (second=="")
	{ 
	second=null;
	}
	if (hour.length!=2 || minute.length!=2 || (second!=null	&& second.length!=2)) 
	{
	DspAlert(field,label);
	return false;
	}
	if (hour < 0 || hour >	23)
	{
	DspAlert1(field,label,"小时数值错误");
	return false;
	}
	if (minute < 0 || minute > 59) 
	{
	DspAlert1(field,label,"分钟数值错误");
	return false;
	}
	if (second !=null && (second <	0 || second > 59)) 
	{
	DspAlert1(field,label,"秒钟数值错误");
	return false;
	}
	return true;
}

function ValidRange(field,label,Lower,Higher)
{
	if (field.value.length == 0 )
	  return true ;
	if (field.value >=Lower && field.value <=Higher)
	{
	return true;
	}
	else 
	{
	DspAlert1(field,label,"取值范围超出");
	return false;
	}
}

function ValidMsisdn(field,label,AllowNull)
{
	if (field.value.length==0 && AllowNull)
	{
		return true;
	}

	if (!ValidNull(field,casenum,AllowNull))
	{
		return false;
	}

	if (!ValidDigitNotLessZero(field,label))
	{
		return false;
	}

	if (!ValidLength(field,label,11,11))
	{
		return false;
	}
	return field.value.substring(0,2)==13;
}

function ValidLength(field,casenum,Lower,Higher) 
{

	var len=GetStrLen(field.value);
	if (len>=Lower && len <=Higher)
	{
	return true;
	}
	else 
	{
	DspAlert1(field,label,"输入长度错误");
	return false; 
	}
}

function GetStrLen(AStr)
{
 var nCount=0;
 var nLenByte=AStr.length;
 for(nPos=0;nPos<nLenByte;nPos ++)
 {
	if(AStr.charCodeAt(nPos)>256) 
	nCount=nCount + 2;
	else
	nCount=nCount + 1;
 }
	return nCount;
 
}
function ValidDateTime(field,label) 
{
	var datePat=/^(\d{2}|\d{4})(\-)(\d{1,2})(\-)(\d{1,2})$/;
	var dateStr=field.value;
	if (dateStr.length!=19){
		DspAlert1(field,label,"不是合法的日期格式yyyy-mm-dd hh:MM:ss");
		return false;
	}
	else{
		dateStr = dateStr.substring(0,10);
	}
	var matchArray=dateStr.match(datePat);
	if (matchArray==null)
	{
	DspAlert1(field,label,"不是合法的日期格式yyyy-mm-dd");
	return false;
	}
	year=matchArray[1];
	month=matchArray[3];
	day=matchArray[5];
	if (year.length!=4 || month.length!=2 || day.length!=2)
	{
	DspAlert1(field,label,"不是合法的日期格式yyyy-mm-dd");
	return false;
	}
	if (month < 1 || month > 12) 
	{ 
	DspAlert1(field,label,"月份错误");
	return false;
	}
	if (day	< 1 || day > 31) 
	{
	DspAlert1(field,label,"日期错误");
	return false;
	}
	if ((month==4 || month==6 || month==9 || month==11) && day==31)
	{
	DspAlert1(field,label,"大小月份错误");
	return false;
	}
	if (month==2)
	{ 
	var isleap=(year % 4==0	&& (year % 100 !=0 || year % 400==0));
	if (day>29 || ((day==29) && (!isleap)))
	{
	DspAlert1(field,label,"闰年错误");
	return false;
	}
	}

	var timePat=/^(\d{1,2}):(\d{2})(:(\d{2}))$/;
	//var timeStr=field.value;
	timeStr = field.value.substring(11,19);
	//alert(timeStr);
	matchArray=timeStr.match(timePat);
	if (matchArray==null)
	{
	DspAlert1(field,label,"不是合法的时间格式:hh:mi:ss");
	return false;
	}

	hour=matchArray[1];
	minute=matchArray[2];
	second=matchArray[4];
	if (second=="")
	{ 
	second=null;
	}
	if (hour.length!=2 || minute.length!=2 || (second!=null	&& second.length!=2)) 
	{
	DspAlert(field,label);
	return false;
	}
	if (hour < 0 || hour >	23)
	{
	DspAlert1(field,label,"小时数值错误");
	return false;
	}
	if (minute < 0 || minute > 59) 
	{
	DspAlert1(field,label,"分钟数值错误");
	return false;
	}
	if (second !=null && (second <	0 || second > 59)) 
	{
	DspAlert1(field,label,"秒钟数值错误");
	return false;
	}
	return true;
	

}
function ValidNumRng(field,label,Lower,Higher,AllowNull) 
{
	if (!ValidNull(field,label,AllowNull)){
		return false;
	}

	if (!ValidDigitNotLessZero(field,label)){
		return false;
	}

	if (!ValidRange(field,label,Lower,Higher)){
		return false;
	}
	return true;
}

function ValidNumLen(field,label,Lower,Higher,AllowNull) 
{
	if (!ValidNull(field,label,AllowNull))
	{
	return false;
	}
	if (field.value.length==0 && AllowNull) 
	{
	return	true;
	} 
	if (!ValidDigitNotLessZero(field,label))
	{
	return false;
	}
	if (!ValidLength(field,label,Lower,Higher))
	{
	return false;
	}
	return true;
}

function ValidNotStartZero(field,label)
{
	if(field.value!=""&&field.value.charAt(0)=="0")
	{
	DspAlert1(field,label,"数字不能以0开头");
	return false;
	}
	return true;
}


function ValidSame(field1,label1,field2,label2) 
{
	if (field1.value !=field2.value) 
	{
	var temp3="输入不一致！";
	alert('\n'+MsgFieldError+label1+"、"+label2+temp3+'\n');
	return false;
	}
	return true;
}


function showSecondList(firstList, secondList,codes) {
    secondList.options.length=0; //clear the second select box 

    var mainKey = firstList.value;
    if ( mainKey == "null" || mainKey == ""){
        return;
    }

    var listValue = codes.split('&');
    for(i = 0; i<listValue.length; i++){
        listValue[i] = listValue[i].split('|');
    }
    //if not exist default value write a blank first 
 	var option=new Option("","" );
 	secondList.options[iIndex]=option;

    for(i = 0; i < listValue.length; i ++ ){
        if(underControl(listValue[i][1], mainKey)){
            var option = new Option(listValue[i][0], listValue[i][1]);
            secondList.options[secondList.options.length] = option;
        }
    }       
}

function underControl(area,root)
{
	var sData = root;
	while ((sData.length > 0) && ( sData.charAt(sData.length-1)=='0'))
	{
		sData=sData.substring(0,sData.length-1);
	}

	return area.substring(0,sData.length)==sData;
}
function lTrim(str) 
{ 
	if (str.charAt(0)==" ") 
	{ 
		//如果字串左边第一个字符为空格 
		str = str.slice(1);//将空格从字串中去掉 
		//这一句也可改成 str = str.substring(1, str.length); 
		str = lTrim(str); //递归调用 
	} 
	return str; 
} 

//去掉字串右边的空格 
function rTrim(str) 
{ 
	var iLength; 

	iLength = str.length; 
	if (str.charAt(iLength - 1)==" ") 
	{ 
		//如果字串右边第一个字符为空格 
		str = str.slice(0, iLength - 1);//将空格从字串中去掉 
		//这一句也可改成 str = str.substring(0, iLength - 1); 
		str = rTrim(str); //递归调用 
	} 
	return str; 
} 

//去掉字串两边的空格 
function allTrim(str) 
{ 
	return lTrim(rTrim(str)); 
} 

function isDigtal(str)

{                        /*  检查输入字符串是否是数字*/

    var len=str.length;

    var i=0;

    if(len<1) return false;

    for(i=0;i<len;i++){

      var code=str.charAt(i);

      if((code<'0')||(code>'9')){

        return false;

      }

    }

    return true;

}

