﻿
//我自定义过程和函数————Javascript

//变量表________________________________________________________


//过程__________________________________________________________


//函数__________________________________________________________
function SetImgSize(t,w,h){
   var objTmp=new Image();
   var oW,oH;
   var _self=this;
   var runed=false;
   if(t){
	  if(!w){w=0}
	  if(!h){h=0}
      objTmp.src=t.src;
	  _self.Set=function(){
		  oW=objTmp.width;
	      oH=objTmp.height;
           if(w!=0 && h!=0){
		      if(w<oW && h<oH){
				 if(w/oW<h/oH){
		            t.width=w;
			        t.height=(w/oW)*oH;
 		         }
		         else{
		            t.width=(h/oH)*oW;
			        t.height=h;
 		         }
			  }
			  else if(w>oW && h>oH){
				  t.width=oW;
				  t.height=oH;
			  }
			  else if(w<oW){
				  t.width=w;
			      t.height=(w/oW)*oH;
			  }
			  else if(h<oH){
				  t.width=(h/oH)*oW;
			      t.height=h;
			  }
			  else{
				  t.width=oW
			      t.height=oH 
			  }
          }
		  else if(w==0 && h==0){
		      t.width=oW
			  t.height=oH
		  }
		  else if(w==0 && h<oH){
			     t.width=(h/oH)*oW;
			     t.height=h;
		  }
		  else if(h==0 && w<oW){
		         t.width=w;
			     t.height=(w/oW)*oH;
		  }
		  else{
			  t.width=oW;
			  t.height=oH;
		  }
		  runed=true;
	  }
	  if(objTmp.readyState){
	      objTmp.onreadystatechange=function(){
		      if(this.readyState=='complete'){
				  _self.Set();
		      }
	      }
	  }
	  else{
		  _self.Set(); 
	  }
	  if(!runed){
		  _self.Set(); 
	  }
   }
}

function openImgWindow(ImgUrl,w,h){
	var objTemp=new Image();
	var l,t;
	var win;
	var htmlcode=""
	var _self=this;
	var loadobj=document.getElementById("loadtxt");
	if(!loadobj){
		loadobj=document.createElement("div");
		loadobj.setAttribute('id','loadtxt');
		loadobj.style.display="";
		loadobj.style.position="absolute";
		loadobj.style.border="#ccc solid 1px";
		loadobj.style.width="200px";
		loadobj.style.height="30px";
		loadobj.style.textAlign="center";
		loadobj.style.lineHeight="30px";
		loadobj.style.left=(document.body.scrollLeft+(document.documentElement.clientWidth-200)/2)+"px";
		loadobj.style.top=(document.body.scrollTop+(document.documentElement.clientHeight-30)/2)+"px";
		loadobj.setAttribute('innerHTML','正在载入图片数据,请稍等...');
		document.body.appendChild(loadobj)
	}
	else{
		loadobj.style.display=""
	}
	objTemp.src=ImgUrl
	_self.openwin=function(){
		w=w!=null?w:objTemp.width;
	    h=h!=null?h:objTemp.height;
		w=w>screen.width?screen.width:w;
		h=h>screen.height?screen.height:h;
	    l=(screen.width-w)/2;
	    t=(screen.height-h)/2;
	    win=window.open("","_blank","width="+w+",height="+h+",left="+l+",top="+t);
	    htmlcode="<html><title>文件预览</title><body style='margin:0px;' align='center'><img src='" + ImgUrl + "'></body></html>";
		if(win){
	        win.document.write(htmlcode);
		}
		else{
			alert('请关闭弹出窗口拦截程序');
		}
		if(loadobj){loadobj.style.display='none'}
	}
	if(objTemp.readyState){
		  if(objTemp.readyState!='complete'){
	          objTemp.onreadystatechange=function(){
		          if(objTemp.readyState=='complete'){
				      _self.openwin();
		          }
	          }
		  }
		  else{
		       _self.openwin(); 
		  }
	 }
	 else{
		  _self.openwin(); 
	 }
}

function FilePreview(ImgAddId,ImgTitleId){
	var ImgInfo=new Array();
	var arrImgAdd=new Array();
	var arrImgTitle=new Array();
	var strImgAdd="";
	var strImgTitle="";
	var objImgAdd=document.getElementById(ImgAddId);
	var objImgTitle=document.getElementById(ImgTitleId);
	var i;
	if(objImgAdd){
	   strImgAdd=objImgAdd.value.replace(/[\r\n]/gi,"");
	}
	else{
	   strImgAdd=""
	}
	if(Trim(strImgAdd)!=""){
		arrImgAdd=strImgAdd.split(";")
		if(objImgTitle){
		    strImgTitle=objImgTitle.value
		}
		else{
			strImgTitle=""
		}
		if(Trim(strImgTitle)!=""){
			arrImgTitle=strImgTitle.split(";\r\n")
	    }
		for(i=0;i<arrImgAdd.length;i++){
			ImgInfo[i]=new Array();
			ImgInfo[i][0]=arrImgAdd[i];
			if(i<arrImgTitle.length){
			   ImgInfo[i][1]=arrImgTitle[i];
			}
			else{
			   ImgInfo[i][1]="";
			}
		}
	    ImgInfo=showModalDialog("Look_It.html",ImgInfo,"dialogWidth:710px;dialogHeight:560px;resizable:yes;")
		if(objImgAdd && typeof(ImgInfo)!="undefined"){
			objImgAdd.value=""
			for(i=0;i<ImgInfo.length;i++){
			    if(i==0){
					objImgAdd.value=ImgInfo[i][0]
				}
				else{
					objImgAdd.value+=";\r\n" + ImgInfo[i][0]
				}
			}
		}
		if(objImgTitle && typeof(ImgInfo)!="undefined"){
			objImgTitle.value=""
			for(i=0;i<ImgInfo.length;i++){
			    if(i==0){
					objImgTitle.value=ImgInfo[i][1]
				}
				else{
					objImgTitle.value+=";\r\n" + ImgInfo[i][1]
				}
			}
			//alert(objImgTitle.value)
		}
	}
	else{
		alert('没有找到您所要查看的文件')
	}	
}

function GroupDigit(v){
   //在数字的千分位用","号隔开分组
   var i,d,tempi=''
   v=v.toString()
   if(v!=''){
      while(v.substr(0,1)==' '){v=v.substr(1)}
      while(v.substr(v.length-1)==' '){v=v.substr(0,v.length-1)}
   }
   v=v.replace(/,/g , '')
   if(v=='' && isNaN(v)){
     return ''
   }
   if(v.indexOf(".")>=0){
      i=v.substring(0,v.indexOf("."))
      d=v.substr(v.indexOf("."))
   }
   else{
      i=v
      d=""
   }
   while(i!=''){ tempi=(tempi==''?i.substr(i.length-3):i.substr(i.length-3)+","+tempi);i=i.substr(0,i.length-3)}
   return tempi+d
}

function compareDate(DateOne,DateTwo)
{ 
    //判断两日期的大小,如果DateOne>DateTwo则返回正数,相反则返回负数,如果相同则返回0
    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 (1);
    }

    if (Date.parse(OneMonth+"/"+OneDay+"/"+OneYear) < Date.parse(TwoMonth+"/"+TwoDay+"/"+TwoYear))
    {
        return (-1);
    }

    if (Date.parse(OneMonth+"/"+OneDay+"/"+OneYear) == Date.parse(TwoMonth+"/"+TwoDay+"/"+TwoYear))
    {
        return (0);
    }

}

function formatNumber(value,dnum)
{
	//formatNumber(value,dnum)返回保留num位小数以后的字符串
    //value,字符或数字,需要格式化的数字
    //num,字符或数字,保留小数的位数
    var newValue=getNumber(value,dnum);
    var strValue=newValue.toString();
	var p,i;
	
	p=strValue.indexOf(".");
	if(p<0){
		strValue+=".";
		p=strValue.indexOf(".");
	}
	dnum=isNaN(dnum)?0:dnum;
	for(i=0;i<dnum;i++){
		strValue+="0";
	}
	if(dnum==0){
		strValue=strValue.substring(0,p);
	}
	else{
		strValue=strValue.substring(0,p+dnum+1);
	}
	return strValue;
}

function getNumber(value,dnum){
	//getNumber(value,dnum)返回保留num位小数以后的数字
    //value,字符或数字,需要保留小数的数字
    //num,字符或数字,保留小数的位数
	var p;
	value=isNaN(value)?0:value;
	dnum=isNaN(dnum)?0:dnum;
	p=Math.pow(10,dnum)
	return Math.round(value*p)/p;
}

function isValidTel(FieldControl, Message){
	//判断控件值是否为电话号码
	if (Trim(FieldControl.value) == "" || FieldControl.value==null) {
		return true;
	}else{
		if (!IsInString('0123456789+-()#*',FieldControl.value)) {
			FieldControl.focus();
			alert(Message);
			return false;
		}else{
			return true;
		}
	}
}

function SelectAll(obj,tobj){
   //根据tobj对像全选obj对像
   if(obj.length)
      count=obj.length
   else{
      if(obj) obj.checked=tobj.checked
      count=1
   }
   if(count>=2){
      for(i=0;i<=count-1;i++){
	      obj[i].checked=tobj.checked
	  }
   }
}

function GetRMB(invalue){
    //返回大写人民币金额
    if(!(invalue!="" && !isNaN(invalue))) return ""
    strNUM=new Array("零","壹","贰","叁","肆","伍","陆","柒","捌","玖");
	strDW=new Array("仟","佰","拾","万","仟","佰","拾","元","角","分");
	strRMB="";
	tint=parseInt(invalue);
	for(i=0;i<invalue.length-1;i++) 
	   if(invalue.charAt(i)==".") break;
	tf=(invalue+"00").substr(i+1,2);
	tf=isNaN(tf)?0:parseInt(tf)
	n=0;
	show=false;
	for(i=10000000;i>=1;i/=10){
	    temp=parseInt(tint/i);
		tint=parseInt(tint%i)
		if(temp!=0) show=true;
		if(show)
		   strRMB=strRMB+strNUM[temp]+strDW[n];
		n=n+1;
	}
	for(i=10;i>=1;i/=10){
	    temp=parseInt(tf/i);
		tf=parseInt(tf%i);
		strRMB=strRMB+strNUM[temp]+strDW[n];
		n=n+1;
	}
	return strRMB;
}

function isValidString(FieldControl,inStr,Message){
   //判断控件值是否在指定的字符内
   if(!IsInString(inStr,FieldControl.value)){
	   alert(Message);
	   FieldControl.focus();
	   return false;
	 }
   else{
       return true;
	 }
}

function GetBrowser(){
    //得么浏览器名
    return navigator.appName
}

function isValidNull(FieldControl, Message){ 
	//判断控件值是否为空
	if (Trim(FieldControl.value) == "" || FieldControl.value==null || Trim(FieldControl.value) == "NULL") {
		FieldControl.focus();
        alert(Message);
        return false;
    }else{
		return true;
    }
}

function isValidNumber(FieldControl, Message){
	//判断控件值是否为数字
	if (Trim(FieldControl.value) == "" || FieldControl.value==null) {
		return true;
	}else{
		if (isNaN(FieldControl.value)) {
			FieldControl.focus();
			alert(Message);
			return false;
		}else{
			return true;
		}
	}
}

function isValidEmail(FieldControl, Message){
	//判断控件值是否为合法的电子邮件
	if (Trim(FieldControl.value) == "" || FieldControl.value==null) {
		return true;
	}else{
		if (FieldControl.value.charAt(0)=="." ||FieldControl.value.charAt(0)=="@"||FieldControl.value.indexOf('@', 0) == -1||FieldControl.value.indexOf('.', 0) == -1||FieldControl.value.lastIndexOf("@")==FieldControl.value.length-1||FieldControl.value.lastIndexOf(".")==FieldControl.value.length-1) {
			FieldControl.focus();
			alert(Message);
			return false;
		}else{
			return true;
		}
	}
}

function chkdate(ctl,datestr,Message,isCheckNull,fchar)
         //判断控件值是否为YYYY/MM/DD格式的日期型
{
		
	if (isCheckNull==false){
		if (datestr==null || datestr==""){
			return true;
		}
	}
	
	if (datestr==null || datestr==""){
		alert(Message);
		ctl.focus();
		return false;
	}
	
	if(!isDate(datestr,fchar)){
	   alert(Message);
	   ctl.focus();
	   return false;
	}
	
	return true;
}

function chktime(ctl,datestr,Message,isCheckNull)
         //判断控件值是否为hh:mm:ss格式的时间型
{
		
	if (isCheckNull==false){
		if (datestr==null || datestr==""){
			return true;
		}
	}
	
	if (datestr==null || datestr==""){
		alert(Message);
		ctl.focus();
		return false;
	}
	
	if(!isTime(datestr)){
	   alert(Message);
	   ctl.focus();
	   return false;
	}
	return true;
}

function CheckChars(sText){
	//判断实参是否仅包含数字和字母或者是下划线和减号
	var ValidChars="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_";
	var IsChars=true;
	var Char;
	
	for(i=0;i<sText.length && IsChars==true;i++){
		Char=sText.charAt(i);
		if (ValidChars.indexOf(Char)==-1){
			IsChars=false;
		}
	}
	return IsChars;
}

function IsInString(sString,sText){
	//判断sText是否仅包含于sString内
	var ValidChars=sString
	var IsChars=true;
	var Char;
	
	for(i=0;i<sText.length && IsChars==true;i++){
		Char=sText.charAt(i);
		if (ValidChars.indexOf(Char)==-1){
			IsChars=false;
		}
	}
	return IsChars;
}

function Trim(TRIM_VALUE){
	//去左右空格
	if(TRIM_VALUE.length < 1){
		return"";
	}
	TRIM_VALUE = RTrim(TRIM_VALUE);
	TRIM_VALUE = LTrim(TRIM_VALUE);
	if(TRIM_VALUE==""){
		return "";
	}
	else{
			return TRIM_VALUE;
	}
}

function RTrim(VALUE){
	//去右边空格
	var w_space = String.fromCharCode(32);
	var v_length = VALUE.length;
	var strTemp = "";
	
	if(v_length < 0){
		return"";
	}
	var iTemp = v_length -1;
	
	while(iTemp > -1){
		if(VALUE.charAt(iTemp) == w_space){}
    	else{
    		strTemp = VALUE.substring(0,iTemp +1);
    		break;
    	}
    	iTemp = iTemp-1;
    }
    return strTemp;
}


function LTrim(VALUE){
	//去左边空格
	var w_space = String.fromCharCode(32);

	if(v_length < 1){
		return"";
	}
	var v_length = VALUE.length;
	var strTemp = "";
	var iTemp = 0;

	while(iTemp < v_length){
		if(VALUE.charAt(iTemp) == w_space){}
		else{
			strTemp = VALUE.substring(iTemp,v_length);
			break;
		}
    	iTemp = iTemp + 1;
    }
    return strTemp;
}

function isDate(datestr,fchar)
         //判断控件值是否为YYYY/MM/DD格式的日期型
{
	var lthdatestr;
	lthdatestr= datestr.length;
	var tmpy="";
	var tmpm="";
	var tmpd="";
	var status;
	status=0;

	for (i=0;i<lthdatestr;i++){
		if (datestr.charAt(i)== fchar){
			status++;
		}
		if (status>2){
			return false;
		}
		if ((status==0) && (datestr.charAt(i)!=fchar)){
			tmpy=tmpy+datestr.charAt(i)
		}
		if ((status==1) && (datestr.charAt(i)!=fchar)){
			tmpm=tmpm+datestr.charAt(i)
		}
		if ((status==2) && (datestr.charAt(i)!=fchar)){
			tmpd=tmpd+datestr.charAt(i)
		}
	}

	year=new String (tmpy);
	month=new String (tmpm);
	day=new String (tmpd)
	if ((tmpy.length!=4) || (tmpm.length>2) || (tmpd.length>2))
	{
		return false;
	}
	if (!((1<=month) && (12>=month) && (31>=day) && (1<=day)) )
	{
		return false;
	}
	if (!((year % 4)==0) && (month==2) && (day==29))
	{
		return false;
	}
	if ((month<=7) && ((month % 2)==0) && (day>=31))
	{
		return false;
	}
	if ((month>=8) && ((month % 2)==1) && (day>=31))
	{
		return false;
	}
	if ((month==2) && (day==30))
	{
		return false;
	}
	
	if(month<10){
		month="0" + eval(tmpm);
	}
	if(day<10){
		day="0" + eval(tmpd);
	}
	
	return true;
}

function isTime(datestr)
         //判断控件值是否为hh:mm:ss格式的时间型
{
	var lthdatestr;
	lthdatestr= datestr.length;
	var tmpy="";
	var tmpm="";
	var tmpd="";
	var status;
	status=0;

	for (i=0;i<lthdatestr;i++){
		if (datestr.charAt(i)== ':'){
			status++;
		}
		if (status>2){
			return false;
		}
		if ((status==0) && (datestr.charAt(i)!=':')){
			tmpy=tmpy+datestr.charAt(i)
		}
		if ((status==1) && (datestr.charAt(i)!=':')){
			tmpm=tmpm+datestr.charAt(i)
		}
		if ((status==2) && (datestr.charAt(i)!=':')){
			tmpd=tmpd+datestr.charAt(i)
		}
	}

	year=new String (tmpy);
	month=new String (tmpm);
	day=new String (tmpd)
	if ((tmpy.length>2) || (tmpm.length>2) || (tmpd.length>2))
	{
		return false;
	}
	if (!(0<=year && year<=23))
	{
		return false;
	}
	
	if (!((0<=month) && (59>=month) && (59>=day) && (0<=day)) )
	{
		return false;
	}
	if(year<10){
		year="0" + eval(tmpy);
	}
	if(month<10){
		month="0" + eval(tmpm);
	}
	if(day<10){
		day="0" + eval(tmpd);
	}
	
	return true;
}

function setCookie(name,value,Days)
{
     //设置Cookie
	 if(isNaN(Days)){Days=0;}
     var exp     = new Date();     //new Date("December 31, 9998");
     exp.setTime(exp.getTime() + Days*24*60*60*1000);
     document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
}
function getCookie(name)
{
     //得到Cookie
     var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");
     if(arr=document.cookie.match(reg)) return unescape(arr[2]);
     else return null;
}
function delCookie(name)
{
	 //删除Cookie
     var exp = new Date();
     exp.setTime(exp.getTime() - 1);
     var cval=getCookie(name);
     if(cval!=null) document.cookie= name + "="+cval+";expires="+exp.toGMTString();
} 

function Request(sName){
  //得到?号以后的参数值
  var sURL = new String(window.location).toLowerCase();
  var iQMark= sURL.lastIndexOf('?');
  var iLensName=sName.length;
  sName=sName.toLowerCase();
  
  //retrieve loc. of sName
  var iStart = sURL.indexOf('?' + sName +'=') //limitation 1
  if (iStart==-1){//not found at start
     iStart = sURL.indexOf('&' + sName +'=')//limitation 1
     if (iStart==-1){//not found at end
		return ""; //not found
     }   
  }
        
  iStart = iStart + + iLensName + 2;
  var iTemp= sURL.indexOf('&',iStart); //next pair start
  if (iTemp ==-1){//EOF
     iTemp=sURL.length;
  }  
  return sURL.slice(iStart,iTemp ) ;
  sURL=null;//destroy String
}

function getLength(s){
   //得到字符串长度,汉字为2
   var L=0;
   var i;
   var code;
   for(i=0;i<s.length;i++){
       code=s.substr(i,1).charCodeAt();
       if(code>=0 && code<=254){
	      L++;
	   }
	   else{
	      L+=2;
	   }
   }
   return(L);
}

function HidePageInfo(){
	var links=document.getElementsByTagName("A")
	var i;
	for(i=0;i<links.length;i++){
		links[i].onmouseover=function(){
			 var content;
			 if(Trim(this.title)!=''){
				 content=this.title;
			 }
			 else{
				 content=this.textContent?this.textContent:this.innerText
			 }
			 window.status=content;	
			 return true;
		}
		links[i].onfocus=function(){
			 var content;
			 if(Trim(this.title)!=''){
				 content=this.title;
			 }
			 else{
				 content=this.textContent?this.textContent:this.innerText
			 }
			 window.status=content;	
			 return true;
		}
		links[i].onmouseout=function(){
			 window.status="";
			 return true;
		}
	}
	document.oncontextmenu=function(){return false;}
}

function AddEvent(strEnt,strFun){
   //为事件追加函数
   if(eval(strEnt)!=null){
	  var strFunction="var oldEnt="+strEnt + ";";
	  strFunction+=strEnt + "=function(){oldEnt();"+strFun+"}";
      eval(strFunction);
   }
   else{
      var strFunction="";
	  strFunction=strEnt + "=function(){"+strFun+"}";
      eval(strFunction);
   }
}

function getElementByMyId(MyId){
	var r=null;
	var objs=null;
	var i=0;
	if(document.querySelector){
	  r=document.querySelector("[MyId='" + MyId + "']");
	}
	else{
	  objs=document.getElementsByTagName("*")	
	  for(i=0;i<objs.length;i++){
		  if(objs[i].getAttribute("MyId")==MyId){
			  r=objs[i];
			  break;
		  }  
	  }
	}
	return r
}
