function LogicalValue(ObjStr,ObjType)
{ 
  var str=''; 
  if ((ObjStr==null) || (ObjStr=='') || ObjType==null) 
  { 
   alert('函数LogicalValue缺少参数'); 
   return false; 
  } 
  var obj = document.all(ObjStr); 
  if (obj.value=='') return false; 
  for (var i=2;i<arguments.length;i++) 
  {  
   if (str!='') 
     str += ','; 
   str += 'arguments['+i+']'; 
  } 
  str=(str==''?'obj.value':'obj.value,'+str); 
  var temp=ObjType.toLowerCase(); 
  if (temp=='integer') 
  { 
    return eval('IsInteger('+str+')'); 
  } 
  else if (temp=='number') 
  { 
   return eval('IsNumber('+str+')'); 
  } 
  else if (temp=='string') 
  { 
   return eval('SpecialString('+str+')'); 
  } 
  else if (temp=='date') 
  { 
   return eval('IsDate('+str+')'); 
  } 
  else if (temp=='empty')
  {
   return eval('IsEmpty('+str+')');
  }
  else if(temp=='email')
  {
   return eval('IsEmail('+str+')');
  }
  else 
  { 
   alert('"'+temp+'"类型在现在版本中未提供'); 
   return false; 
  } 
} 
function IsEmail(string,sign)
{
   if((sign!='email') && (sign!=null))
   {
    alert('IsEmail(string,sign)的参数出错：nsign为null或"email"');
    return false;
   }else{
      if(string.indexOf("@")==-1 || string.indexOf(".")==-1){
      	    return false;
      	}else{
      	    return true;
      	}
			
   }
}
function IsEmpty(string,sign)
{
   if((sign!='empty') && (sign!=null))
   {
    alert('IsEmpty(string,sign)的参数出错：nsign为"empty"');
    return false;
   }
   else{
       if(string=="")
       {
       	    return false;
       	}else{
       	   return true;
       	}
   }
}
function IsInteger(string ,sign) 
{  
  var integer; 
  if ((sign!=null) && (sign!='-') && (sign!='+')) 
  { 
   alert('IsInter(string,sign)的参数出错：nsign为null或"-"或"+"'); 
   return false; 
  } 
  integer = parseInt(string); 
  if (isNaN(integer)) 
  { 
   return false; 
  } 
  else if (integer.toString().length==string.length) 
  {  
   if ((sign==null) || (sign=='-' && integer<0) || (sign=='+' && integer>0)) 
   { 
     return true; 
   } 
   else 
     return false;  
  } 
  else 
   return false; 
} 



function IsDate(DateString , Dilimeter) 
{ 
  if (DateString==null) return false; 
  if (Dilimeter=='' || Dilimeter==null) 
   Dilimeter = '-'; 
  var tempy=''; 
  var tempm=''; 
  var tempd=''; 
  var tempArray; 
  if (DateString.length<8 || DateString.length>10) 
    return false;    
  tempArray = DateString.split(Dilimeter); 
  if (tempArray.length!=3) 
   return false; 
 // if (tempArray[0].length==4) 
 // { 
 //  tempy = tempArray[0]; 
 //  tempd = tempArray[2]; 
 // } 
 // else 
 // { 
//  tempy = tempArray[2]; 
 //  tempd = tempArray[0]; 
//  } 
//  tempm = tempArray[1]; 
if(tempArray[0].length!=4 && tempArray[2].length!=4)
  {
      return false;
  }
  if (tempArray[0].length==4)
  {
       if((tempArray[1].length==2 || tempArray[1].length==1) && (tempArray[2].length==2 || tempArray[2].length==1)){
       }
       else{
             return false;
       }
       tempy = tempArray[0]; 
       tempd = tempArray[2];
  }else{
       if((tempArray[1].length==2 || tempArray[1].length==1) && (tempArray[0].length==2 || tempArray[0].length==1)){
       }
       else{
             return false;
       }
       tempy = tempArray[2]; 
       tempd = tempArray[0];
  }
  tempm = tempArray[1];
  var tDateString = tempy + '/'+tempm + '/'+tempd;
  var tempDate = new Date(tDateString); 
 
  if (isNaN(tempDate)) {
   return false; 
   
   }
//if(tempDate.getDate()<10){
// if ((tempDate.getYear()==tempy) && (tempDate.getMonth()==parseInt(tempm-1)) && (tempDate.getDate()==parseInt(tempd.substring(1,2)))) 
//  { 
	 //alert(tempDate.getYear());
  //alert(tempy);
  //alert(tempDate.getMonth());
  //alert(parseInt(tempm-1));
  //alert(tempd);
  // return true; 
//  } 
//  else 
//  {
//   return false; 
//  }
//}else{
//alert(tempDate.getYear());
//  alert(tempy);
//  alert(tempDate.getMonth());
//  alert(parseInt(tempm-1));
//  alert(tempDate.getDate()-1);
//  alert(parseInt(tempd-1));
//  alert(tempd)
  
 if ((tempDate.getFullYear()==tempy) && (tempDate.getMonth()==parseInt(tempm-1)) && (tempDate.getDate()-1==parseInt(tempd-1))) 
  {  
   return true; 
  } 
  else 
  {//alert(tempDate.getFullYear());
 //alert(tempy);
 //alert(tempDate.getMonth());
 //alert(parseInt(tempm-1));
 //alert(parseInt(tempd-1));
 //alert(tempDate.getDate()-1)
   return false; 
  }

//} 
} 



function IsNumber(string,sign,length,length2) 
{ 
  var number;
  if(sign=="") sign=null;
  if (string==null) return false; 
  if ((sign!=null) && (sign!='-') && (sign!='+')) 
  { 
       alert('IsNumber(string,sign)的参数出错：nsign为null或"-"或"+"'); 
       return false; 
  } 
  number = new Number(string); 
  if(length=="" || length==null)
  {
        if (isNaN(number)) 
        { 
             return false; 
        } 
        else if ((sign==null) || (sign=='-' && number<0) || (sign=='+' && number>0)) 
        { 
             return true; 
        } 
        else 
           return false; 
}else{
            if (isNaN(number)) 
            { 
             return false; 
            }else{
            var size = string.indexOf("."); 
            if(size<0)
            {
                size = string.length;
                if(parseInt(size)>length)
                {
                      return false;
                } else{
                   if ((sign==null) || (sign=='-' && number<0) || (sign=='+' && number>0)) 
                            return true;
                    else
                            return false;
                }
            }else
            {
               //var size1 = string.substring(0,size);         
               var size2 = string.substring(size,string.length-1);
               if(parseInt(size)>(length-length2) || parseInt(size2.length)>length2)
                {//alert(size);
                //alert(length-length2);
                //alert(size2.length);
                //alert(length2);
                      return false;
                } else{
                   if ((sign==null) || (sign=='-' && number<0) || (sign=='+' && number>0)) 
                            return true;
                    else
                            return false;
                }
            }
            
        }
 }
} 



function SpecialString(string,compare,BelongOrNot) 
{ 
  if ((string==null) || (compare==null) || ((BelongOrNot!=null) && (BelongOrNot!=true) && (BelongOrNot!=false))) 
  { 
   alert('function SpecialString(string,compare,BelongOrNot)参数错误'); 
   return false; 
  } 
  if (BelongOrNot==null || BelongOrNot==true) 
  { 
   for (var i=0;i<string.length;i++) 
   { 
     if (compare.indexOf(string.charAt(i))==-1) 
      return false 
   } 
   return true; 
  } 
  else 
  { 
   for (var i=0;i<string.length;i++) 
   { 
     if (compare.indexOf(string.charAt(i))!=-1) 
      return false 
   } 
   return true; 
  } 
} 
 


 


//回车显示下拉选择框
var maxLen=13;
var input_name;
function my_onkeypress(t,div_id,select_name){	
	if(window.event.keyCode!=13)	return false;
	showLst(t,div_id,select_name);
	input_name=t;
}
function showLst(t,div_id,select_name){	
		var nTop;
 		var nLeft;
 		var nBottom;
 		var nRight;
 		objOld=t;
  	var objText=t;
  	var nparaWidth = 7 * maxLen+25;
 		eval("window."+div_id+".style").posWidth = nparaWidth;
  	if("TD" == objText.parentElement.tagName){    //在表格中
    	nTop  =   objText.parentElement.parentElement.parentElement.parentElement.offsetTop + objText.parentElement.parentElement.offsetTop + objText.offsetHeight+2;
    	nLeft =   objText.parentElement.offsetLeft+15+140;
    	nBottom = nTop + eval("window."+div_id+".style").posHeight ;
    	nRight =  nLeft + nparaWidth;    	
    	if( nBottom> document.body.offsetHeight-22)
    	nTop = Math.max(0, nTop -eval("window."+div_id+".style").style.posHeight - objText.offsetHeight+10);    	

	  	if( nRight> document.body.offsetWidth-22)
      	nLeft = Math.min(document.body.offsetWidth-22,nLeft + objText.offsetWidth) -  nparaWidth;	
  	}   
 	 	else{  			
      nTop = objText.offsetTop + objText.offsetHeight;
      nBottom = nTop + eval("window."+div_id+".style").posHeight;
    	if( nBottom> document.body.offsetHeight-22) 	
    		nTop = Math.max(5,objText.offsetTop  - eval("window."+div_id+".style").posHeight);
    	nRight = objText.offsetLeft+ nparaWidth;
    	if( nRight> document.body.offsetWidth-22)     
    		nLeft = Math.min(document.body.offsetWidth-22,objText.offsetLeft + objText.offsetWidth) -  nparaWidth;
    	else
    	  nLeft = objText.offsetLeft;
 		} 
		eval("window."+div_id+".style").pixelTop = nTop;
  		eval("window."+div_id+".style").pixelTop = nTop;
  		eval("window."+div_id+".style").posLeft = nLeft;
  		eval("window."+div_id+".style").display="";
		eval("window.form1."+select_name).selectedIndex=0;
		eval("window.form1."+select_name).focus();
}
//function hideMe(input_name,div_id,select_name){
	//if(window.event.keyCode!=13)	return false;
	//eval("window.form1."+input_name).value=eval("window.form1."+select_name).options[eval("window.form1."+select_name).selectedIndex].value;
	//eval("window."+div_id+".style").display="none";
//}
function hideMe(div_id,select_name){
	input_name.value=eval("window.form1."+select_name).options[eval("window.form1."+select_name).selectedIndex].value;
	eval("window."+div_id+".style").display="none";
}



  //屏蔽鼠标右键、Ctrl+N、Shift+F10、F11、F5刷新、退格键
  //Author: meizz(梅花雨) 2002-6-18

//function document.oncontextmenu(){event.returnValue=false;}//屏蔽鼠标右键
function window.onhelp(){return false} //屏蔽F1帮助

/*
function document.onkeydown()
{
  if ((window.event.altKey)&&
      ((window.event.keyCode==37)||   //屏蔽 Alt+ 方向键 ←
       (window.event.keyCode==39)))   //屏蔽 Alt+ 方向键 →
  {
     alert("不准你使用ALT+方向键前进或后退网页！");
     event.returnValue=false;
  }
     // 注：这还不是真正地屏蔽 Alt+ 方向键，
    // 因为 Alt+ 方向键弹出警告框时，按住 Alt 键不放，
     //用鼠标点掉警告框，这种屏蔽方法就失效了。以后若
    // 有哪位高手有真正屏蔽 Alt 键的方法，请告知。

  if ((event.keyCode==8 && document.activeElement.type!='text' && document.activeElement.type!='textarea')  ||                 //屏蔽退格删除键
      (event.keyCode==116)||                 //屏蔽 F5 刷新键
      (event.ctrlKey && event.keyCode==82)){ //Ctrl + R
     event.keyCode=0;
     event.returnValue=false;
     }
  if (event.keyCode==122){event.keyCode=0;event.returnValue=false;}  //屏蔽F11
  if (event.ctrlKey && event.keyCode==78) event.returnValue=false;   //屏蔽 Ctrl+n
  if (event.shiftKey && event.keyCode==121)event.returnValue=false;  //屏蔽 shift+F10
  if (window.event.srcElement.tagName == "A" && window.event.shiftKey) 
      window.event.returnValue = false;             //屏蔽 shift 加鼠标左键新开一网页
  if ((window.event.altKey)&&(window.event.keyCode==115))             //屏蔽Alt+F4
  {
      window.showModelessDialog("about:blank","","dialogWidth:1px;dialogheight:1px");
      return false;
  }
}
*/
function getDouble(val)
{
		var returnVa;
		returnVa=Math.round(val*100.0)/100.0;
		returnVa = returnVa+"";
		if(returnVa.indexOf(".")<0){
			returnVa+=".00";
		}
		else 
		{
			returnVa += "000";
			returnVa = returnVa.substr(0,returnVa.indexOf(".")+3);
		}
		return returnVa;
}

function getDoubleRound(val,iType,roundNumber)
{
		var returnVa;
		var lastvalue="1";
		var lastv="";
		for (var i=1;i<=iType;i++){
			lastvalue=lastvalue+"0";	
		}
		for (var i=1;i<=iType;i++){
			lastv=lastv+"0";	
		}
		var ld=parseFloat(lastvalue+".0");
		returnVa=Math.round(val*ld)/ld;
		returnVa = returnVa+"";
		if(returnVa.indexOf(".")<0){
			returnVa+="."+lastv;
		}
		else 
		{
			if (roundNumber>0){
				if (parseFloat("0"+returnVa.substr(returnVa.indexOf(".")))>roundNumber){
					returnVa=parseFloat(returnVa.substr(0,returnVa.indexOf(".")))+1;
				}else{
					//returnVa=parseFloat(returnVa.substr(0,returnVa.indexOf(".")));
					returnVa=parseFloat(returnVa.substr(0,returnVa.indexOf(".")))+roundNumber;
				}
				returnVa = returnVa+"";
			}
			if(returnVa.indexOf(".")<0){
				returnVa+="."+lastv;
			}else{
				returnVa += lastv;
				returnVa = returnVa.substr(0,returnVa.indexOf(".")+iType+1);
			}
		}
		return returnVa;
}
/*
*去掉空格
*/
function cTrim(sInputString,iType)
　　 {
　　 	var sTmpStr = ' ';
　　	 var i = -1;
　　 	if(iType == 0 || iType == 1)
　　	 {
　　		 while(sTmpStr == ' ')
　　		 {
　　			 ++i;
　　			 sTmpStr = sInputString.substr(i,1);
　　 		 }
　　		 sInputString = sInputString.substring(i);
　　 	}
　　 	if(iType == 0 || iType == 2)
　　 	{
　　 		sTmpStr = ' ';
　　 		i = sInputString.length;
　　 		while(sTmpStr == ' ')
　　		 {
　　			 --i;
　　 			sTmpStr = sInputString.substr(i,1);
　　 		 }
　　 		sInputString = sInputString.substring(0,i+1);
　　 	}
　　  return sInputString;
　}

function strDateTime(t) 
{ 
	var str=t.value;
        var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;  
        var r = str.match(reg);  
        if(r==null)   	return false;
        var d= new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]);  
        return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]&&d.getSeconds()==r[7]);
} 
function strDateTimeNoSecond(t) 
{ 
	var str=t.value;
        var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2})$/;  
        var r = str.match(reg);  
        if(r==null)   	return false;
        var d= new Date(r[1], r[3]-1,r[4],r[5],r[6]);  
        return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]);
} 

function validateCommDate(t) 
{ 
	var str=t.value;
        var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/;  
        var r = str.match(reg);  
        if(r==null)   	return false;
        var d= new Date(r[1], r[3]-1,r[4]);  
        return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]);
}
function validDateTime(t){
	if (cTrim(t.value,0)=="") return true;
	var ok=validateCommDate(t);
	if (ok){
		 return true;
	}
	else{
		alert("时间格式应为yyyy-MM-dd");
		t.focus();
		return false;
	}
}

function validHMTime(t){
	if (cTrim(t.value,0)=="") return true;
	var ok=strDateTimeNoSecond(t);
	if (ok){
		 return true;
	}
	else{
		alert("时间格式应为yyyy-MM-dd HH:mm(24小时制)");
		t.focus();
		return false;
	}
}
function copyvalue(srco,desto){
	var srcobject=document.all(srco);
	var destobject=document.all(desto);
	destobject.value=srcobject.value;
}

function hasSelect(Fn,selectitem){
	var checks;
	checks=document.all(selectitem);
	var l=0;
	if (checks==undefined){
		alert("没有选择项");
		return false;
	}
	for (var i=0;i<checks.length;i++){
		if (checks[i].checked) l=l+1;
	}
	if (checks.length==undefined&&!checks.checked) {
		alert("尚未做选择");
		return false;
	}else if (checks.length!=undefined&&l<=0){
		alert("尚未选择");
		return false;
	}
	return true;
}

function getSelectString(Fn,selectitem){
	var checks;
	checks=document.all(selectitem);
	var l=0;
	if (checks==undefined){
		alert("没有选择项");
		return "";
	}
	for (var i=0;i<checks.length;i++){
		if (checks[i].checked) l=l+1;
	}
	if (checks.length==undefined&&checks.checked) {
		return checks.value;
	}else if (checks.length!=undefined){
		var myids = "" ;
		for (var i =0 ;i<checks.length;i++){
			if (checks[i].checked){
				if (myids==""){
					myids = checks[i].value;
				}else{
					myids +=","+checks[i].value;
				}	
			}	
		}
		return myids;
	}
}

function getSingleSelect(t){
	var ids = "";
	var counter=0;
	var idList = t;
	var size=idList.length;
	if(size==null&&idList.checked==true){
		return idList.value;
	}
	for (var i = 0; i < size; i++) {
		if(idList[i].checked == true) {
			ids+=(idList[i].value);
				if(counter>0){
				alert('请不要选择多个！');
				return "";
				}
			counter++;
		 }
	} 
	if(counter==0){
		alert('请至少选择一个！');
		return "";
	}
	return ids;	
}

function isRemoved(iLine,selectButton) {
	   /**
	   if(iLine == 2)   
	       return false;
	   var bCheck = true;
	   for (var i=0;i<=tblItems.rows.length-2;i++) {
	       var theObj = eval(selectButton+i);
	       if (theObj!=undefined&&theObj.checked!=undefined) {
	           if (theObj.style.display=="none") {
	     
	           }else{
	                alert(theObj.name);
	           	alert(theObj.style.display);
	           	if (theObj.checked)
	           	 	theObj.checked=false;
	           }

	       }
	   }
	   return bCheck; 
	   */  
}

//MOUSE MOVE
var beginMoving=false;
function MouseDownToMove(obj){
 obj.style.zIndex=1;
 obj.mouseDownY=event.clientY;
 obj.mouseDownX=event.clientX;
 beginMoving=true;
 obj.setCapture();
}

function MouseMoveToMove(obj){
    if(!beginMoving) return false;
 obj.style.top = (event.clientY-obj.mouseDownY);
 obj.style.left = (event.clientX-obj.mouseDownX);
}
function MouseUpToMove(obj){
 if(!beginMoving) return false;
 obj.releaseCapture();
 obj.style.top=0;
 obj.style.left=0;
 obj.style.zIndex=0;
 beginMoving=false;
 var tempTop=event.clientY-obj.mouseDownY;
 var tempRowIndex=(tempTop-tempTop%25)/25;
 if(tempRowIndex+obj.rowIndex <0 )tempRowIndex=-1;
 else tempRowIndex=tempRowIndex+obj.rowIndex;
 if(tempRowIndex >= obj.parentElement.rows.length-1) tempRowIndex = obj.parentElement.rows.length-1;
 obj.parentElement.moveRow(obj.rowIndex,tempRowIndex);
}


function lockCol(tblID) {
 
	 var table = document.getElementById(tblID);
	 var button = document.getElementById('toggle');
	 var cTR = table.getElementsByTagName('TR');  //collection of rows
	 if (table.rows[2].cells[1].className == '') {
	  for (i = 0; i < cTR.length; i++)
	   {
	   var tr = cTR.item(i);
	   tr.cells[1].className = 'locked'
	   tr.cells[0].className = 'locked'
	   }
	  button.innerText = "解锁费用列";
	  }
	  else {
	  for (i = 0; i < cTR.length; i++)
	   {
	   var tr = cTR.item(i);
	   tr.cells[1].className = ''
	   tr.cells[0].className = ''
	   }
	  button.innerText = "锁定费用列";
	  }
}

function lockColAr(tblID) {
 
	 var table = document.getElementById(tblID);
	 var button = document.getElementById('togglear');
	 var cTR = table.getElementsByTagName('TR');  //collection of rows
	 if (table.rows[2].cells[1].className == '') {
	  for (i = 0; i < cTR.length; i++)
	   {
	   var tr = cTR.item(i);
	   tr.cells[1].className = 'lockedar'
	   tr.cells[0].className = 'lockedar'
	   }
	  button.innerText = "解锁费用列";
	  }
	  else {
	  for (i = 0; i < cTR.length; i++)
	   {
	   var tr = cTR.item(i);
	   tr.cells[1].className = ''
	   tr.cells[0].className = ''
	   }
	  button.innerText = "锁定费用列";
	  }
}

function lockColJsAp(tblID) {
 
	 var table = document.getElementById(tblID);
	 var button = document.getElementById('togglejsap');
	 var cTR = table.getElementsByTagName('TR');  //collection of rows
	 if (table.rows[2].cells[1].className == '') {
	  for (i = 0; i < cTR.length; i++)
	   {
	   var tr = cTR.item(i);
	   tr.cells[1].className = 'lockedjsap'
	   tr.cells[0].className = 'lockedjsap'
	   }
	  button.innerText = "解锁费用列";
	  }
	  else {
	  for (i = 0; i < cTR.length; i++)
	   {
	   var tr = cTR.item(i);
	   tr.cells[1].className = ''
	   tr.cells[0].className = ''
	   }
	  button.innerText = "锁定费用列";
	  }
}


function isDouble(t) {
	    var inputstr = t.name;
	    if (t.name!=""){
		    if(LogicalValue(inputstr,'empty')&&!LogicalValue(inputstr,'number'))
		    {
		    	alert('请输入数字');
			t.focus();
		    	return false;
		    }
	   }
	   return true;
}

function to_Enter(){
        if(window.event.keyCode==13 || window.event.keyCode==40) window.event.keyCode=9;
}

function verifyConCode(t){  
   if (t.value!=""){
	   var letter_array=new Array("A","B","C","D","E","F","G","H","I","J","K","L","M","N",
	                           "O","P","Q","R","S","T","U","V","W","X","Y","Z");
	   var number_array=new Array(10,12,13,14,15,16,17,18,19,20,21,23,24,25,26,27,28,29,30,
	                            31,32,34,35,36,37,38);                           
	   var strConCode=t.value;
	   var code_sum=0;
	   var i,j;
	   var k=0;
	   var mul_base=1;
	   var code_array=new Array(11);
	   if(strConCode.charAt(3)!="U"){
	   	alert("请输入标准的11位集装箱号!");
		//t.select();
		return false;
	   }
	   
	   for(i=0;i<3;i++){
	       for(j=0;j<26;j++){
	           if(strConCode.charAt(i)==letter_array[j]){
	               code_array[k]=number_array[j]
	                k++;
	                break;
	           }
	        
	       }
	       if(j==26){
	       	alert("请输入标准的11位集装箱号!");
		//t.select();
		return false;
	       }
	   }
	   code_array[3]=32;
	   for(i=4;i<11;i++){
	      code_array[i]=parseInt(strConCode.charAt(i));
	   }
	   for(i=0;i<10;i++){
	      code_sum=code_sum+code_array[i]*mul_base;
	      mul_base=mul_base*2;
	   }
	   code_sum=code_sum%11;
	   if(code_sum%10==parseInt(code_array[10])) 
	   {
	   	getContainerType();
	   	return true;
	   }
	   else{
	   	alert("请输入标准的11位集装箱号!");
		//t.select();
		return false;
	   } 
   }
}
