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 trim(str)
{
return lTrim(rTrim(str));
}

function chksame(text1,text2,text3)
{
	s1=text1.value;
	s2=text2.value;
	s3=text3;
	if (s1!=s2){
		alert (s3+"不一致。");
		return false;
	}
}


function chklength(text,msg,length1,length2){
	length3=text.value.length;
	if(length3<length1 || length3>length2){
		alert(msg+" 的长度不符合要求。长度应该在"+length1+"和"+length2+"之间。");
		return false;
	}
	
}
function chklength1(text,msg,length1){
	length2=text.value.length;
	if (length2!=length1){
		alert(msg+" 的长度不符合要求。长度最多为"+length1+"位。");
		return false;
	}
}
function numericCheck(text,msg){
  
  nr1=text.value;
  flg=0;
  str="";
  spc=""
  arw="";
  for (var i=0;i<nr1.length;i++) {
    cmp="0123456789"
    tst=nr1.substring(i,i+1)
    if (cmp.indexOf(tst)<0){
      flg++;
      str+=" "+tst;
      spc+=tst;
      arw+="^";
    }
    else {
      arw+="_";
    }
  }
  if (flg!=0) {
    if (spc.indexOf(" ")>-1) {
      str+="和空格";
    }
    alert(msg+"只接受数字，发现"+flg+"个不可接受的字符:\n"+str);
    return false;
  }
  return true;
} 
function numericCheckdot(text,msg){
  
  nr1=text.value;
  flg=0;
  str="";
  spc=""
  arw="";
  for (var i=0;i<nr1.length;i++) {
    cmp="0123456789."
    tst=nr1.substring(i,i+1)
    if (cmp.indexOf(tst)<0){
      flg++;
      str+=" "+tst;
      spc+=tst;
      arw+="^";
    }
    else {
      arw+="_";
    }
  }
  if (flg!=0) {
    if (spc.indexOf(" ")>-1) {
      str+="和空格";
    }
    alert(msg+"只接受数字，发现"+flg+"个不可接受的字符:\n"+str);
    return false;
  }
  
  return true;
} 

function numericCheckinuse(text,msg){

  nr1=text.value;
  
  flg=0;
  str="";
  spc=""
  arw="";
  for (var i=0;i<nr1.length;i++) {
    cmp="01"
    tst=nr1.substring(i,i+1)
    if (cmp.indexOf(tst)<0){
      flg++;
      str+=" "+tst;
      spc+=tst;
      arw+="^";
    }
    else {
      arw+="_";
    }
  }
  if (flg!=0) {
    if (spc.indexOf(" ")>-1) {
      str+="和空格";
    }
    alert(msg+"只接受0、1，发现"+flg+"个不可接受的字符:\n"+str);
    return false;
  }
}   

function num_letter_Check(text,msg){

  nr1=text.value;
  
  flg=0;
  str="";
  spc=""
  arw="";
  for (var i=0;i<nr1.length;i++) {
    cmp="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_";
    tst=nr1.substring(i,i+1)
    if (cmp.indexOf(tst)<0){
      flg++;
      str+=" "+tst;
      spc+=tst;
      arw+="^";
    }
    else {
      arw+="_";
    }
  }
  if (flg!=0) {
    if (spc.indexOf(" ")>-1) {
      str+="和空格";
    }
    alert(msg+"只接受数字和英文字母及下划线，发现"+flg+"个不可接受的字符:\n"+str);
    return false;
  }
}  


function chkradio(text1,text2,text3,text4,text5, msg) {
 if ((text1.checked == false) & (text2.checked == false)& (text3.checked == false)& (text4.checked == false)& (text5.checked == false)) {
      
	  alert("请填写"+msg);
      text1.focus();
      
	  return (false);
  }
}

function chkblankwithoutalert(text) {
s=trim(text.value);
  if (s == '') {
    return (false)
  }
else
return (true)	
}


function chkblank(text, msg) {
s=trim(text.value);
  if (s == '') {
      alert("请填写"+msg);
     // text.focus();
      return (false)
  }
}
function chkzero(text, msg) {
  if (text.value == '0') {
      alert("请填写"+msg);
      text.focus();
      return (false)
  }
}
function emailCheck(emailStr) {
  var emailPat=/^(.+)@(.+)$/
  var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
  var validChars="\[^\\s" + specialChars + "\]"
  var firstChars=validChars
  var quotedUser="(\"[^\"]*\")"
  var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
  var atom="(" + firstChars + validChars + "*" + ")"
  var word="(" + atom + "|" + quotedUser + ")"
  var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
  var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")
  var matchArray=emailStr.value.match(emailPat)
  
  if (matchArray==null) {
    alert("电子邮件地址格式不正确")
    emailStr.focus();
    return false
  }
  
  var user=matchArray[1]
  var domain=matchArray[2]

  if (user.match(userPat)==null) {
    alert("用户名不正确")
    emailStr.focus();
    return false
  }

  var IPArray=domain.match(ipDomainPat)
  if (IPArray!=null) {
    for (var i=1;i<=4;i++) {
      if (IPArray[i]>255) {
        alert("目的 IP 地址非法!")
        emailStr.focus();
        return false
      }
    }
    return true
  }

  var domainArray=domain.match(domainPat)
  if (domainArray==null) {
    alert("域名不合法。")
    emailStr.focus();
    return false
  }

  var atomPat=new RegExp(atom,"g")
  var domArr=domain.match(atomPat)
  var len=domArr.length
  if (domArr[domArr.length-1].length<2 || domArr[domArr.length-1].length>3) {
    alert("Email地址结束必须是三个字母的一级域名或两个字母的国家域名结尾。")
    emailStr.focus();
    return false
  }

  if (domArr[domArr.length-1].length==2 && len<3) {
    var errStr="Email地址是已二个字母结尾的，其必须是国家代码。"
    errStr+="国家代码必须在主机名和类别名之后"
    errStr+="(如 com, co, pub, pu 等等)"
    alert(errStr)
    emailStr.focus();
    return false
  }

  if (domArr[domArr.length-1].length==3 && len<2) {
    var errStr="Email格式中没有主机名!"
    alert(errStr)
    emailStr.focus();
    return false
  }
  return true;
}

function upload_document(info_id,textform,column_id,sid){
		var kk=showModalDialog("../common/upload_documentfram.jsp?document_identity_id="+sid+"&column_id="+column_id+"&info_id="+info_id, this, "resizable: no; help: no; status: no; scroll: no; ");
		if(kk!=null)
		textform.value=kk;
		
		return ;
	}
	
function user_select(column_id,user_id_list,user_name_list){
	        var thisuser_id_list=user_id_list.value;
	        var kk=showModalDialog("../common/select_userfram.jsp?group_id="+thisuser_id_list+"&column_id="+column_id, this, "resizable: no; help: no; status: no; scroll: no; ");
		var idlist="-1";
		var namelist="";
		
		
		if(kk!=null)
		{
			//得到组id
			
			var gdi=kk.indexOf("*");
			user_id_list.value=kk.substring(0,gdi);
			//alert(user_id_list.value);
			kk=kk.substring(gdi+1);
		        if(trim(kk)=="")
		        {//当没有选择用户时user_id_list为0
		        user_id_list.value="0";	
		        }
			end=kk.indexOf(":");
			while (end>0)
			{	//alert(kk);	
				var m=kk.indexOf(":");
				idlist=idlist+","+kk.substring(0,m);
				var n=kk.indexOf(";");
				if(n!=-1)
				namelist=namelist+";"+kk.substring(m+1,n);
				else
				namelist=namelist+";"+kk.substring(m+1);
				if(n==-1)
				break;
				kk=kk.substring(n+1);
				end=kk.indexOf(":");
			}
		user_name_list.value=namelist;	
		}	
			
		
		
		return ;
	}
//选择类目
function select_category(column_id,category_id,category_name){
	        var thiscategory_id=category_id.value;
	        var kk=showModalDialog("../sys_command/select_categoryfram.jsp?group_id="+thiscategory_id+"&column_id="+column_id, this, "resizable: no; help: no; status: no; scroll: no; ");
		var idlist="-1";
		var namelist="";
		//alert(kk);
		if(kk!=null)
		{
			//得到组id
			
			var gdi=kk.indexOf("*");
			category_id.value=kk.substring(0,gdi);
			
			//alert(category_id.value);
			kk=kk.substring(gdi+1);
		        if(trim(kk)=="")
		        {
		        category_id.value="0";	
		        }
		
		category_name.value=kk;	
		}	
			
		
		
		return ;
	}
//选择时间	
function time_select(time_value){
	        var kk=showModalDialog("../common/showtime.jsp", this, "resizable: no; help: no; status: no; scroll: no; ");
		time_value.value=kk;
		return ;
	}
	
//////////////////////////////////////////////////////////

//有效的时间范围 
var date_start,date_end,g_object
var today = new Date();
var separator="-";
var inover=false;

//mode :时间变换的类型0-年 1-月 2-直接选择月
function change_date(temp,mode)
{
	var t_month,t_year
    if (mode){
        if(mode==1)
        t_month=parseInt(cele_date_month.value,10)+parseInt(temp,10);
        else
        t_month=parseInt(temp)
        if (t_month<cele_date_month.options(0).text) {
            cele_date_month.value=cele_date_month.options(cele_date_month.length-1).text;
            change_date(parseInt(cele_date_year.value,10)-1,0);
            }
        else{
            if (t_month>cele_date_month.options(cele_date_month.length-1).text){
                cele_date_month.value=cele_date_month.options(0).text;
                change_date(parseInt(cele_date_year.value,10)+1,0);
                }            
            else
                {cele_date_month.value=t_month;
                 set_cele_date(cele_date_year.value,cele_date_month.value);                
                }
        }
    }  
    else{
        t_year=parseInt(temp,10);
        
        if (t_year<cele_date_year.options(0).text) {
            cele_date_year.value=cele_date_year.options(0).text;
            set_cele_date(cele_date_year.value,1);                
            }
        else{
            if (parseInt(t_year,10)>parseInt(cele_date_year.options(cele_date_year.length-1).text,10)){
                cele_date_year.value=cele_date_year.options(cele_date_year.length-1).text;
                set_cele_date(cele_date_year.value,12);                
                }            
            else
                {cele_date_year.value=t_year;
                 set_cele_date(cele_date_year.value,cele_date_month.value);                
                }
        }
    }
    /*********2002-02-01 MODIFY BY WING **************/
    window.cele_date.focus();
    /****************MODIFY END***********************/
}

//初始化日历
function init(d_start,d_end)
{
     var temp_str;
     var i=0
     var j=0
     date_start=new Date(2000,7,1)
     date_end=new Date(2004,8,1)
     
     //必须要有内容（奇怪）
     /*************************2002-02-01 MODIFY BY WING *********************************************************************************/
     document.writeln("<div name=\"cele_date\" id=\"cele_date\"  style=\"display:none\"    style=\"background: threedface; color: windowtext; LEFT: 69px; POSITION: absolute; TOP: 159px;Z-INDEX:99\" onClick=\"event.cancelBubble=true;\" onBlur=\"hilayer()\" onMouseout=\"lostlayerfocus()\">&nbsp; </div>");
     /*******************************************MODIFY END*******************************************************************************/
     window.cele_date.innerHTML="";
     temp_str="<table border=\"1\" style=\"background: threedface; color: windowtext;\" ><tr><td colspan=7 onmouseover=\"overcolor(this)\">";
     temp_str+="<input type=\"Button\" value=\"<<\" onclick=\"change_date(-1,1)\" onmouseover=\"getlayerfocus()\" style=\"color: #FFFFFF; cursor: hand\">";//左面的箭头

     /**************************2002-02-01 MODIFY BY WING ********************************************************************************/
     /*temp_str+="<input type=\"Button\" value=\"<<\" onclick=\"change_date(-1,1)\" >?";//左面的箭头                                */
     /************************************************************************************************************************************/
     
     temp_str+=""//年
     temp_str+="<select name=\"cele_date_year\" id=\"cele_date_year\" language=\"javascript\" onchange=\"change_date(this.value,0)\" onmouseover=\"getlayerfocus()\" onblur=\"getlayerfocus()\" style=\"font-size: 9pt; border: 1px #666666 outset; \">"

     /**************************2002-02-01 MODIFY BY WING ********************************************************************************/
     /*temp_str+="<select name=\"cele_date_year\" id=\"cele_date_year\" language=\"javascript\" onchange=\"change_date(this.value,0)\">" */
     /************************************************************************************************************************************/

     for (i=2000;i<=2020;i++)
     {
     temp_str+="<OPTION value=\""+i.toString()+"\">"+i.toString()+"</OPTION>";
     }
     temp_str+="</select>";
     temp_str+=""//月
     temp_str+="<select name=\"cele_date_month\" id=\"cele_date_month\" language=\"javascript\" onchange=\"change_date(this.value,2)\" onmouseover=\"getlayerfocus()\" onblur=\"getlayerfocus()\" style=\"font-size: 9pt; border: 1px #666666 outset; \">"

     /**************************2002-02-01 MODIFY BY WING **********************************************************************************/
     /*temp_str+="<select name=\"cele_date_month\" id=\"cele_date_month\" language=\"javascript\" onchange=\"change_date(this.value,2)\">" */
     /**************************************************************************************************************************************/

     for (i=1;i<=12;i++)
     {
     temp_str+="<OPTION value=\""+i.toString()+"\">"+i.toString()+"</OPTION>";
     }
     temp_str+="</select>";
     temp_str+=""//右箭头
     temp_str+="<input type=\"Button\" value=\">>\" onclick=\"change_date(1,1)\" onmouseover=\"getlayerfocus()\"  style=\"color: #FFFFFF;  cursor: hand\">";

     /**************************2002-02-01 MODIFY BY WING ********************************************************************************/
     /*temp_str+="<input type=\"Button\" value=\">>\" onclick=\"change_date(1,1)\">";                                                    */
     /************************************************************************************************************************************/

     temp_str+="</td></tr><tr><td onmouseover=\"overcolor(this)\">"
     temp_str+="<font color=red>Su</font></td><td>";temp_str+="Mo</td><td>"; temp_str+="Tu</td><td>"; temp_str+="We</td><td>"
     temp_str+="Th</td><td>";temp_str+="Fr</td><td>"; temp_str+="Sa</td></tr>";
     for (i=1 ;i<=6 ;i++)
     {
     temp_str+="<tr>";
        for(j=1;j<=7;j++){
            temp_str+="<td name=\"c"+i+"_"+j+"\"id=\"c"+i+"_"+j+"\" style=\"CURSOR: hand\" style=\"COLOR:#000000\" language=\"javascript\" onmouseover=\"overcolor(this)\" onmouseout=\"outcolor(this)\" onclick=\"td_click(this)\"></td>"
            }
     temp_str+="</tr>"        
     }
     temp_str+="</td></tr></table>";
     window.cele_date.innerHTML=temp_str;
}
function set_cele_date(year,month)
{
   var i,j,p,k
   var nd=new Date(year,month-1,1);
   event.cancelBubble=true;
   cele_date_year.value=year;
   cele_date_month.value=month;   
   k=nd.getDay()-1
   var temp;
   for (i=1;i<=6;i++)
      for(j=1;j<=7;j++)
      {
      eval("c"+i+"_"+j+".innerHTML=\"\"");
     // eval("c"+i+"_"+j+".bgColor=\"#4682b4\"");
      eval("c"+i+"_"+j+".style.cursor=\"hand\"");
      }
   while(month-1==nd.getMonth())
    { j=(nd.getDay() +1);
      p=parseInt((nd.getDate()+k) / 7)+1;
      eval("c"+p+"_"+j+".innerHTML="+"\""+nd.getDate()+"\"");
      if ((nd.getDate()==today.getDate())&&(cele_date_month.value==today.getMonth()+1)&&(cele_date_year.value==today.getYear())){
      	 eval("c"+p+"_"+j+".bgColor=\"#EFFB64\"");
      }
      if (nd>date_end || nd<date_start)
      {
      eval("c"+p+"_"+j+".bgColor=\"#FF9999\"");
      eval("c"+p+"_"+j+".style.cursor=\"text\"");
      }
      nd=new Date(nd.valueOf() + 86400000)
    }
}

//s_object：点击的对象；d_start-d_end有效的时间区段；需要存放值的控件；
function show_cele_date(eP,d_start,d_end,t_object)
{
window.cele_date.style.display="";
window.cele_date.style.zIndex=99
var s,cur_d
var eT = eP.offsetTop;  
var eH = eP.offsetHeight+eT;  
var dH = window.cele_date.style.pixelHeight;  
var sT = document.body.scrollTop; 
var sL = document.body.scrollLeft; 
event.cancelBubble=true;
window.cele_date.style.posLeft = event.clientX-event.offsetX+sL-5;  
window.cele_date.style.posTop = event.clientY-event.offsetY+eH+sT-5;
if (window.cele_date.style.posLeft+window.cele_date.clientWidth>document.body.clientWidth) window.cele_date.style.posLeft+=eP.offsetWidth-window.cele_date.clientWidth;
//if (window.cele_date.style.posTop+window.cele_date.clientHeight>document.body.clientHeight) window.cele_date.style.posTop-=(eP.offsetHeight+window.cele_date.clientHeight+5);
if (d_start!=""){
    if (d_start=="today"){
        date_start=new Date(today.getYear(),today.getMonth(),today.getDate());
    }else{
        s=d_start.split(separator);
        date_start=new Date(s[0],s[1]-1,s[2]);
    }
}else{
    date_start=new Date(1900,1,1);
}

if (d_end!=""){
    s=d_end.split(separator);
    date_end=new Date(s[0],s[1]-1,s[2]);
}else{
    date_end=new Date(3000,1,1);
}

g_object=t_object

cur_d=new Date()
set_cele_date(cur_d.getYear(),cur_d.getMonth()+1);
window.cele_date.style.display="block";
/***************2002-02-01 MODIFY BY WING ***********/
window.cele_date.focus();
/****************MODIFY END**************************/
}
function td_click(t_object)
{
var t_d
if (parseInt(t_object.innerHTML,10)>=1 && parseInt(t_object.innerHTML,10)<=31 ) 
{ t_d=new Date(cele_date_year.value,cele_date_month.value-1,t_object.innerHTML)
if (t_d<=date_end && t_d>=date_start)
{
var year = cele_date_year.value;
var month = cele_date_month.value;
var day = t_object.innerHTML;
if (parseInt(month)<10) month = "0" + month;
if (parseInt(day)<10) day = "0" + day;

g_object.value=year+separator+month+separator+day;
window.cele_date.style.display="none";};
}

}
function h_cele_date()
{
window.cele_date.style.display="none";
}

function overcolor(obj)
{
  if (obj.style.cursor=="hand") obj.style.color = "#FFFFFF";
  /*********** 2002-02-01 MODIFY BY WING *****/
  inover=true;
  window.cele_date.focus();
  /************* MODIFY END ******************/
}

function outcolor(obj)
{
  obj.style.color = "#000000";
  /*********** 2002-02-01 MODIFY BY WING *****/
  inover=false;
  /************* MODIFY END ******************/
}


function getNow(o){
    var Stamp=new Date();
    var year = Stamp.getYear();
    var month = Stamp.getMonth()+1;
    var day = Stamp.getDate();
    if(month<10){
	month="0"+month;
    }
    if(day<10){
	day="0"+day;
    }
    o.value=year+separator+month+separator+day;
}


// 判断输入的参数是否位数字
function numericCheck_csy(text,msg){
  
  nr1=text.value;
  flg=0;
  str="";
  spc=""
  arw="";
  for (var i=0;i<nr1.length;i++) {
    cmp="0123456789"
    tst=nr1.substring(i,i+1)
    if (cmp.indexOf(tst)<0){
      flg++;
      str+=" "+tst;
      spc+=tst;
      arw+="^";
    }
    else {
      arw+="_";
    }
  }
  if (flg!=0) {
    if (spc.indexOf(" ")>-1) {
      str+="和空格";
    }
    alert(msg+"只接受数字，发现"+flg+"个不可接受的字符:\n"+str);
    return false;
  }
  return true;
} 

/*********** 2002-02-01 MODIFY BY WING **ADD THREE FUNCTION TO CONTROL THE DIV FOCUS***/
function hilayer()
{
	if (inover==false)
	{
		var lay=document.all.cele_date;
		lay.style.display="none";
	}
}
function getlayerfocus()
{
	inover=true;
}
function lostlayerfocus()
{
	inover=false;
}


/***************************MODIFY END************************************************/
 init();