﻿//**************************************
//		数字验证---8-20位数字
// add by dream.jia
// $Id$
//**************************************
	function isDigit(s) {  
		var patrn=/^[0-9]{8,20}$/;  
		if (!patrn.exec(s)) return false;  
		return true;  
	}
//**************************************
//		数字验证---0-10位数字
// add by dream.jia
// $Id$
//**************************************
	function isDigits(s) {  
		var patrn=/^[0-9]{0,10}$/;
		var pat=/^0*(\.0*)?$/;
		if(pat.exec(s)) return false; 
		if (!patrn.exec(s)) return false;  
		return true;  
	}
 //**************************************
//		数字验证
//    EMILY.LIU
//**************************************
 function isDigitcall(s) {  
		var patrn=/^[0-9]+(\.[0-9]*)?$/; 
		var pat=/^0*(\.0*)?$/; 
		if(pat.exec(s)) return false; 
		if (!patrn.exec(s)) return false;  
		return true;  
	}
	//**************************************
//		数字验证
//    EMILY.LIU
//**************************************
 function isDigitcdr(s) {  
		var patrn=/^[0-9]+(\.[0-9]*)?$/; 
		if (!patrn.exec(s)) return false;  
		return true;  
	}
//**************************************
//		英文数字验证
// add by dream.jia
//**************************************
	function isDigitEmpl(s) {  
		var patrn=/^[\w]{1,20}$/;  
		if (!patrn.exec(s)) return false;  
		return true;  
	}
	
//**************************************
//		数字验证
// add by dream.jia
//**************************************
	function isDigitAge(s) {  
		var patrn=/^[0-9]{1,3}$/;  
		if (!patrn.exec(s)) return false;  
		return true;  
	}	
//***************************************
//		Email验证
// add by dream.jia
//***************************************
	function isRightEmail(s) {  
		var patrn=/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;  
		if (!patrn.exec(s)) return false;  
		else return true; 		 
	}
	
//**************************************
//		密码验证
//校验密码：只能输入6-20个字母、数字、下划线
// add by dream.jia
//**************************************
	function isPasswds(s) {  
		var patrn=/^(\w){6,20}$/;  
		if (!patrn.exec(s)) return false;  
		return true;  
	} 
	
	
//**************************************
//		密码验证
//校验密码：只能输入6-20位
// add by dream.jia
//**************************************
	function isPasswd(s) {  
		if ( s == null || s.length == 0 ){
			return false;
		}
		if (!checkChinese(s)) {
			return false;
		}
		if (!Chk_SpecialChar(s)) {
			return false;
		}
		if (s.length > 15) {
			return false;
		}
		if (s.length < 6) {
			return false;
		}
		return true;
	} 	
	
	//**************************************
//		密码验证
//校验密码：只能输入6-15位
// add by dream.jia
//**************************************
	function isPasswod(s) {  
		if ( s == null || s.length == 0 ){
			return false;
		}
		if (!checkChinese(s)) {
			return false;
		}
		if (!Chk_SpecialChar(s)) {
			return false;
		}
		if (s.length >15) {
			return false;
		}
		if (s.length < 6) {
			return false;
		}
		return true;
	} 	
//**************************************
//		电话号码验证	
//校验普通电话、传真号码：可以“+”开头，除数字外，可含有“-”
// add by dream.jia
//**************************************
function isTel(s)  
{  
	var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/;  
	if (!patrn.exec(s)) return false;  
	return true;  
}  		

//*************************************
//		URL验证
// add by dream.jia
//*************************************
function isUrl(s)  
{  
	var patrn=/[a-zA-z]+:\/\/[^s]*/;  
	if (!patrn.exec(s)) return false;  
	return true;  
} 
//*************************************
//  特殊字符的验证
// add by dream.jia
//*************************************
function Chk_SpecialChar(ptxtBuff){
	var s = ptxtBuff;
	for (var i=0; i<s.length; i++) {
		c=s.charAt(i);
		switch(c){
		  case "\'": 
		    return false;
		  case "\"": 
		    return false;
		  case "|": 
		    return false;
		  case "<": 
		    return false;
		  case ">": 
		    return false;
		  case "&": 
		    return false;
		  case ",":
		  	return false;
		  case "，":
		  	return false;
		  case "\\":
		  	return false;
		}
	}
	
	return true;
}
//*************************************
//  特殊字符的验证
// add by dream.jia
//*************************************
function Chk_SpecialChar2(ptxtBuff){
	var s = ptxtBuff;
	for (var i=0; i<s.length; i++) {
		c=s.charAt(i);
		switch(c){
		  case "\'": 
		    return false;
		  case "\"": 
		    return false;
		  case "|": 
		    return false;
		  case "<": 
		    return false;
		  case ">": 
		    return false;
		  case "&": 
		    return false;
		  case "\\":
		  	return false;
		}
	}
	
	return true;
}
function Chk_SpecialCharOther(ptxtBuff){
	var s = ptxtBuff;
	for (var i=0; i<s.length; i++) {
		c=s.charAt(i);
		switch(c){
		  case "\\":
		  	return false;
		}
	}
	
	return true;
}
function Chk_SpecialCharHe(ptxtBuff){
	var s = ptxtBuff;
	for (var i=0; i<s.length; i++) {
		c=s.charAt(i);
		switch(c){
		  case "'":
		  	return false;
		}
	}
	
	return true;
}
//*************************************
//		内容为空的验证
// add by dream.jia
//*************************************
function isNull( obj ){
	if ( obj.value == null || obj.value.length == 0 ){
		return true;
	}
	if(obj.value.match(/.*[\t].*/)) {
		return false;
	}
	chkstr=obj.value.replace(/^\s+|\s+$/g,"");
	if ( chkstr == null || chkstr.length == 0  ){
		return true;
	}
	return false;
}

//*************************************
//	首尾空格trim
// add by dream.jia
//*************************************
function trimStr( obj ) {
	var s;
	if (obj.value == null || obj.value.length == 0) {
		s = "";
	}
	else {
		s = obj.value.replace(/^\s+|\s+$/g,"");
	}
	
	return s;
}

//*************************************
//   获得length
// add by dream.jia
//*************************************
function getLength(str)
{
	if (str == null)
	{
		return (0);
	}
	var len = 0;

	for( var i=0 ; i<str.length ; i++ )
	{
		len += getCharSize(str.charCodeAt(i));
	}
	return(len);
}

//************************************
//		length验证
// add by dream.jia
//************************************
function checklength(str,maxlength)
{
	len = getLength(str);
	if ( len > maxlength )	{ return false ;}
	else{ return true ;}
}
//*************************************
//     mac 地址验证
// 校验合法的mac地址
//*************************************
function isMac(s)
{
	var patrn =/^\w{2}(-\w{2}){5}$/;
	if(!patrn.exec(s)) return false;
	return true;
}
//*************************************
//键盘keydown事件
//*************************************
function keydown13(){
	if(event.keyCode==13){
		event.returnValue=false;
	}
}
//**********************************
//读取字符串字节数
//**********************************
function getLengthInput(str)
{
	if (str == null)
	{
		return (0);
	}
	var len = 0;
	for( var i=0 ; i<str.length ; i++ )
	{
		len += getCharSize(str.charCodeAt(i));
        var c=str.charAt(i);
        if(c=="(" || c==")" || c=="<" || c==">" || c=="&" || c=="\"" ||c=="\'"
		|| c=="%" ||c ==";" || c=="+"){
		    len++;
		}
	}
	return(len);
}
//*********************************
//字符集
// add by dream.jia
//*********************************
function getCharSize(c)
{
	return ( (c < 128) || (c > 65376 && c < 65440) ) ? 1 : 2 ;
}


//---------------------------------------------------------
// 日期格式验证   YYYY-MM-DD格式
//---------------------------------------------------------
var YEARMIN     = 1;           // 
var YEARMAX     = Infinity;    // 
var MONTHMIN    = 1;           // 
var MONTHMAX    = 12;          // 
var DAYMIN      = 1;           // 
var DAYMAX      = 31;          // 

// add by dream.jia
/**
 * 日期格式验证:YYYY-MM-DD)
 * @params 	obj		object name
 * @return 	true	(YYYY-MM-DD)
 *			false	
 */
function isDate( obj ){
	if ( obj.value == null || obj.value.length == 0 ){
		return true;
	}
	var date = obj.value;

	var year = "";
	var month = "";
	var day = "";
	if(date.length == 10){
		if(!date.match(/([0-9]{4})-([0-9]{2})-([0-9]{2})$/)){
			return false;
		}
		year = RegExp.$1;
		month = RegExp.$2;
		day = RegExp.$3;
	}else if(date.length == 8){
		if(!date.match(/([0-9]{4})([0-9]{2})([0-9]{2})$/)){
			return false;
		}
		year = RegExp.$1;
		month = RegExp.$2;
		day = RegExp.$3;
//	}else if(date.length == 6){
//		if(!date.match(/([0-9]{2})([0-9]{2})([0-9]{2})$/)){
//			return false;
//		}
//		year = "20" + RegExp.$1;
//		month = RegExp.$2;
//		day = RegExp.$3;
	}else{
		return false;
	}

	var Monthdays = new Array(31,28,31,30,31,30,31,31,30,31,30,31);
	// 年
	if(((year%4 == 0) && (year%100 != 0)) || (year%400 == 0)) {
		Monthdays[1] = 29;
	}
	//  年
	if(isNaN(year) || year < YEARMIN || year > YEARMAX) {
		return false;
	}
	// 月
	if(isNaN(month) || month < MONTHMIN || month > MONTHMAX) {
		return false;
	}
	// 日期计算
	DAYMAX = Monthdays[month-1];
	if(isNaN(day) || day < DAYMIN || day > DAYMAX) {
		return false;
	}
	obj.value = year + "-" + month + "-" + day;

	return true;
}

//*********************************
//email地址
// add by dream.jia
//*********************************
function isMailAddress( obj ) {
	if ( obj.value == null || obj.value.length == 0 ){
		return true;
	}
	var str = obj.value;
	if(!str.match(/^[^()\[\]<>@\\:;\,"\b\s]+@(.+)$/)) {
		return false;
	}
	var domain = RegExp.$1;
	if(!chkDomain(domain)) {
		return false;
	}
	return true;
}

//*********************************
//email地址
// add by dream.jia
//*********************************
function checkemail( el ){   
    var regu="^(([0-9a-zA-Z]+)|([0-9a-zA-Z]+[_.0-9a-zA-Z-]*[0-9a-zA-Z]+))@([a-zA-Z0-9-]+[.])+([a-zA-Z]{2}|net|NET|com|COM|gov|GOV|mil|MIL|org|ORG|edu|EDU|int|INT)$";       
    var re= new RegExp(regu);       
    if (el.search(re)==-1) {     
    	return   true;   //非法   
    }   
        return   false;//正确   
  }
  
//*********************************
//字符串的验证
// add by dream.jia
//*********************************
function chkDomain(str) {
	if(!str.match(/^[A-Za-z0-9\-_]+(\.[A-Za-z0-9\-_]+)*(\.[A-Za-z0-9]+)$/)) {
		return false;
	}
	return true;
}
// add by dream.jia
//*********************************
//时间日期的比较
// @params 	string	 DateOne
// @params 	string	 DateTwo
// @return 	true	
//*********************************
function compareDate(DateOne,DateTwo) {
    if (DateOne.length == 10 && DateTwo.length == 10) {
    	var OneMonth = DateOne.substring(5,DateOne.lastIndexOf ("-"));
    	var OneDay = DateOne.substring(DateOne.length,DateOne.lastIndexOf ("-")+1);
    	var OneYear = DateOne.substring(0,DateOne.indexOf ("-"));
        
    	var TwoMonth = DateTwo.substring(5,DateTwo.lastIndexOf ("-"));
    	var TwoDay = DateTwo.substring(DateTwo.length,DateTwo.lastIndexOf ("-")+1);
    	var TwoYear = DateTwo.substring(0,DateTwo.indexOf ("-"));
        
    	if (Date.parse(OneMonth+"/"+OneDay+"/"+OneYear) >
        	Date.parse(TwoMonth+"/"+TwoDay+"/"+TwoYear)) {
        	return true;
		}
   else 
   	  {
        return false;
    	}    
    }
   else {
    	return false;
    }
}


function checkChinese(s) {   
  if   (/[^\x00-\xff]/g.test(s))   {
	return false;
  }
  else {
  	return true;
  }
}
 //*********************************
// 会议室密码验证，正确输入为6-8位数字
// alan.yuwen
//*********************************
function checkConfPassword(s)
{  
		var patrn=/^[0-9]{6,8}$/;  
		if (!patrn.exec(s)) 
		{
			return false;
		}  
		return true;  
}

//*********************************
// 会议室号码输入为以1901开头的8位数
// alan.ywuen
//********************************* 
function checkRoomNo(number)
{
		var patrn=/^1901[0-9]{4}$/;
		if(!patrn.exec(number)) 
		{
			return false;
		}  
		return true;  
}
//**************add by panlin.he***************
 //*************************************
 /*检查字符串是否合法的ip字符串*/
 //*************************************
 function isIp(ip)
 { 
		ip_ip = '(25[0-5]|2[0-4]\\d|1\\d\\d|\\d\\d|\\d)';
		ip_ipdot = ip_ip + '\\.';    
		isIPaddress = new RegExp('^'+ip_ipdot+ip_ipdot+ip_ipdot+ip_ip+'$');        
		if(ip.match(isIPaddress)==null)
		{
			return false;         
		}   
		return true;
}
//*************************************
//规则名验证
//*************************************
function isRulename(s)
{
	var patrn=/^(rule_)[0-9]{0,4}$/;
	if (!patrn.exec(s)) return false;
	return true;
}
//*************************************
//端口号2-4位数字验证
//*************************************
function isPort(s)
{
	var patrn=/^[1-9]{1}[0-9]{1,4}$/;
	if(!patrn.exec(s)) return false;
		return true;

}
//*******************************************
//ID数字验证   二位数字后可跟数字，*，？，N
//*******************************************
function isId(s)
{	
	var patrn=/^(_)[1-9]{2}[0-9]{0,6}(([.]?(){1})|([*]?(){1})|([?]?(){1})|([N]{1,6}))$/;
	if (!patrn.exec(s)) return false;
	return true;
}
//*************************************
//	判断字符串是否存在
//*************************************
 function   IsInclude(str1,str2)
 {   
  	var   s = str1.indexOf(str2);   
    if(s==-1) return false
    return true; 
  } 
 
 //*************************************
//	判断是否为特殊字符
//**************************************
 function corpsStr( str )
 {   
  	//判断是否为通配符，如果是替换为.
	var s = "";
	if (IsInclude(str,"*"))
	{
		s = str.replace("*",".");
	}
	else if(IsInclude(str,"?"))
	{
		s = str.replace("?",".");
	}
	else if(IsInclude(str,"N"))
	{
		s = str + ".";
	}
	else
	{
		s = str;
	}
	return s;
  } 
  
// add by dream.jia
//*********************************
//多语言的日期时间显示设置
// @params 	string	 flag
// @return 	string s	
//*********************************
	function getClock(flag){ 
		var d, s; 
		s=""; 
		d = new Date(); 
		hr = d.getHours();
		min = d.getMinutes();
		sec = d.getSeconds();
		if (hr <= 9) {
			hr = "0" + hr;		
		}
		if (min <= 9) {
			min = "0" + min;
		}
		if (sec <= 9) {
			sec = "0" + sec;
		}
		if (flag == "en") { // english
			var x = new Array("Sunday", "Monday", "Tuesday", "Wednesday","Thursday", "Friday", "Saturday");
			var m = new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");
			s += x[d.getDay()] + ", "; 
			s += m[d.getMonth()] + " "; 
			s += d.getDate() + " "; 
			s += d.getYear() + " ";
			//s += hr + ":";
			//s += min + ":";
			//s += sec; 
		}
		else if (flag == "cn") { // chinese simple
			var x = new Array("星期日", "星期一", "星期二", "星期三","星期四", "星期五", "星期六");
			var m = new Array("1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月");
			s += d.getYear() + "年";
			s += m[d.getMonth()]; 
			s += d.getDate() + "日 "; 
			s += x[d.getDay()] + " ";
			//	s += hr + ":";
			//	s += min + ":";
			//	s += sec; 			
		}
		else if (flag == "ft") { // chinese tradtional
			var x = new Array("星期日", "星期一", "星期二", "星期三","星期四", "星期五", "星期六");
			var m = new Array("1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月");
			s += d.getYear() + "年";
			s += m[d.getMonth()]; 
			s += d.getDate() + "日 "; 
			s += x[d.getDay()] + " ";
			//	s += hr + ":";
			//	s += min + ":";
			//	s += sec; 			
		}
		else if (flag == "ja") { // japanese
			var x = new Array("日曜日", "月曜日", "火曜日星", "水曜日","木曜日", "金曜日", "土曜日");
			var m = new Array("一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月");
			s += d.getYear() + "年";
			s += m[d.getMonth()]; 
			s += d.getDate() + "日 "; 
			s += x[d.getDay()] + " ";
			//	s += hr + ":";
			//	s += min + ":";
			//	s += sec; 			
		}					
		return s;
	}
// add by dream.jia
//****************************
//当前时间日期
//****************************
function setClock() {
	var date = new Date();
	document.getElementById("clock").innerHTML = date.toLocaleString();
}

//add by Seven.He
//**************************
//验证企业号 必须输入6位随机数

function isRecord(s)
{
	if ( s == null || s.length == 0 ){
			return false;
		}
	var patrn =/^[0-9]{6}$/;
	if(!patrn.exec(s))  return false;
     return true;
		
}

//add by Seven.He
//**************************
//验证企业号 必须输入6位随机数

function isQuery(s)
{
	if ( s == null || s.length == 0 ){
			return false;
		}
	var patrn =/^[A-Fa-f0-9]{0,6}$/;
	if(!patrn.exec(s))  return false;
     return true;
		
}


function xmlHttpInit()
{
	/* Create a new XMLHttpRequest object to talk to the Web server */	
   /*@cc_on @*/
	/*@if (@_jscript_version >= 5)@end @*/
	var xmlHttp;

	try 
	{
  		xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
	} 
	catch (e)
	{
  		try 
		{
    		xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
  		} 
		catch (e2) 
		{
   	 		xmlHttp = false;
  		}
	}
	if (!xmlHttp && typeof XMLHttpRequest != 'undefined') 
	{
  		xmlHttp = new XMLHttpRequest();
	}
	
  return xmlHttp;
}
//删除空白文本结点
function cleanWhitespace(element) {
    //遍历element的子结点
    for (var i = 0; i < element.childNodes.length; i++) {
     var node = element.childNodes[i];
     //判断是否是空白文本结点，如果是，则删除该结点
     if (node.nodeType == 3 && !/\S/.test(node.nodeValue))
     node.parentNode.removeChild(node);
    }
}
//获得表格对象
var _table=document.getElementById("table1");
//cleanWhitespace(_table);
//使表格行上移，接收参数为链接对象
function moveUp(_a){
$('orderflag').value='1';
    //通过链接对象获取表格行的引用
    var _row=_a.parentNode.parentNode;
    changeItem(_row.rowIndex);
    if (_row.rowIndex==1) return;
    //如果不是第一行，则与上一行交换顺序
    if(_row.previousSibling)swapNode(_row,_row.previousSibling);

}
//使表格行下移，接收参数为链接对象
function moveDown(_a){

$('orderflag').value='1';
    //通过链接对象获取表格行的引用
    var _row=_a.parentNode.parentNode;
    	changeItem(_row.rowIndex);

    //如果不是最后一行，则与下一行交换顺序
    if(_row.nextSibling)swapNode(_row,_row.nextSibling);

}
//定义通用的函数交换两个结点的位置
function swapNode(node1,node2){
    //获取父结点
    var _parent=node1.parentNode;
    //获取两个结点的相对位置
    var _t1=node1.nextSibling;
    var _t2=node2.nextSibling;
    //将node2插入到原来node1的位置
    if(_t1)_parent.insertBefore(node2,_t1);
    else _parent.appendChild(node2);
    //将node1插入到原来node2的位置
    if(_t2)_parent.insertBefore(node1,_t2);
    else _parent.appendChild(node1);
}
//改变选择项目 
function   changeItem(currentLine) 
{  
    if(   document.all   ) 
        var   it   =   $('table1').children[0]; 
    else 
        var   it   =   $('table1'); 

    for   (i=0;i<it.rows.length;i++)    
    { 
        it.rows[i].style.background   =   '#FFFFFF'; 
    } 
    it.rows[currentLine].style.background='#33CCFF'; 
}
//去左空格; 
function ltrim(s){ 
return s.replace( /^\s*/, ""); 
} 

function moveUpCustom(_a){
$('orderflag').value='1';
    //通过链接对象获取表格行的引用
    var _row=_a.parentNode.parentNode;
    changeItem(_row.rowIndex);
    if (_row.rowIndex==2) return;
    //如果不是第一行，则与上一行交换顺序
    if(_row.previousSibling)swapNode(_row,_row.previousSibling);

}
//----------
//*********************************
//限制录入长度
// @params 	object	 value
// @return 	
//*********************************
  function isMaxLen(o){ 
  	 var nMaxLen=o.getAttribute? parseInt(o.getAttribute("maxlength")):"";  
         var NumArray=checkLength(o.value);
	  if(o.getAttribute && NumArray[0] >nMaxLen){  
            var mMax=NumArray[1];
	  	  var strtext=o.value.substring(0,nMaxLen + mMax)  ;
               o.value=strtext;
           }  
           
	  } 
 function checkLength(value){
	   var str,Num = 0,iNum=0;
	 for (var i=0;i<value.length;i++){
	  str = value.substring(i,i+1);
		  if (str >"~")  //判断是否双字节
		  {Num+=3;iNum-=2;
		 }
		  else {
		  Num++;
		}
	 }
	 return new Array(Num,iNum);
 }
  	/*function isMaxLen(o){ 
  	 var nMaxLen=o.getAttribute? parseInt(o.getAttribute("maxlength")):"";  
 	 if(check2byte(o.value)){  
	 nMaxLen=nMaxLen/3 ; 
	 }  else{
	 nMaxLen=nMaxLen/1 ; 
	 } 
	  if(o.getAttribute && o.value.length>nMaxLen){  
	  	  var strtext=o.value.substring(0,nMaxLen)  ;
       o.value=strtext;
       }  
	  } 
//*********************************
//判断是否是双字节
// @params 	string	 value
// @return 	false,	true
//*********************************
 function check2byte(value){
  var str,Num = 0;
 for (var i=0;i<value.length;i++){
  str = value.substring(i,i+1);
  if (str >"~")  //判断是否双字节
  return true;
 }
 return false;
 }
 */