///////////////////////////////////////////////
///////////////////////////////////////////////
///////////////////////////////////////////////
//时间选择
///////////////////////////////////////////////
///////////////////////////////////////////////
///////////////////////////////////////////////
var datew=2;
var dateh=5;
var datel=300;
var isSet=true;//更新时间时使用
var dateObj;//填写时间的对象
var overWidth=0;//溢出宽度
var oldDateStr="";//原始时间
var inDateHtml="<IFRAME name=\"frameCal\" HEIGHT=\"143\" FRAMEBORDER=\"0\" width=\"230\"  SCROLLING=\"NO\" SRC=\"/corpmana/common/calendar.jsp\"></IFRAME>";
var inTimeHtml="<IFRAME name=\"frameCal\" HEIGHT=\"175\" FRAMEBORDER=\"0\" width=\"244\"  SCROLLING=\"NO\" SRC=\"/corpmana/common/calendar6.jsp\"></IFRAME>";
var DateType = "Date";
function F_BtnDate_press(t,datetype){
	DateType = datetype;//Date-Time20040812
  var ieVersion=navigator.appVersion;
//  alert('bandit');

  if (ieVersion.indexOf("MSIE 5.0")!=-1){
    var sPath = CurrPath+"/corpmana/common/calendar5.jsp";
    alert(sPath);
    var dw=265;
    var dh=212;
    var ex=event.screenX-event.offsetX-2;
    var ey=event.screenY-event.offsetY-2;

    var strFeatures = "dialogTop="+ey+"px;dialogLeft="+(ex-dw)+"px;dialogWidth="+dw+"px;dialogHeight="+dh+"px;help=no;status: No";
    st = t.value;
    sDate = showModalDialog(sPath,st,strFeatures);

    if (sDate!=null){
      t.value = sDate;
    }

  }
  else{
    var ex=event.clientX-event.offsetX-3+document.body.scrollLeft;
    var ey=event.clientY-event.offsetY-2+document.body.scrollTop;

    if (datediv.style.visibility==""){
      datediv.style.visibility="hidden";
    }
    if (datediv.style.visibility=="hidden"){
      datel=ex;
    }
    datediv.style.top=ey+"px";
    opendate(t);
    dateObj=t;
    oldDateStr=t.value;
    isSet=true;
  }
}
function opendate(iobj){
  if (datediv.style.visibility=="hidden"){
    dopen();
  }else{
    datediv.innerHTML="";
    dclose();
  }

}
function dopen(){
  datediv.style.visibility="visible";
  if (datew<242||dateh<145){
    datediv.style.width=datew+"px";
    datew=datew+10;
    datediv.style.left=datel+"px";
    if (datel>(10+document.body.scrollLeft)){
      datel=datel-10;
    }else{
      overWidth=overWidth+10;
    }
    datediv.style.height=dateh+"px";
    if (dateh!=145){
      dateh=dateh+10;
    }
    setTimeout("dopen();",1);
  }else{
	if(DateType=='Time'){
    	datediv.innerHTML=inTimeHtml;
	}else{
		datediv.innerHTML=inDateHtml;
	}
  }
}

function dclose(){
  if (datew==2&&dateh==5){
    datediv.style.visibility="hidden";

  }else{
    datew=datew-10;
    datediv.style.width=datew+"px";
    datel=datel+10;
    if (overWidth!=0){
      datel=datel-5;
      overWidth=overWidth-5;
    }
    datediv.style.left=datel+"px";
    if (dateh!=5){
      dateh=dateh-10;
    }
    datediv.style.height=dateh+"px";
    setTimeout("dclose();",1);
  }
}
function dateWindowClose(){
  datediv.innerHTML="";
  dclose();
}
///////////////////////////////////////////////
///////////////////////////////////////////////

/*******************************************/
/*** JavaScript                          ***/
/*** descirption : 基本的数据审核与数据操作 ***/
/*** author : bcpc                       ***/
/*******************************************/

/*var DATE_FORMAT="YYYY-MM-DD", PRICE_FORMAT="#,###,##0.00", NUMBER_FORMAT*/


//检测字段长度
function checkFieldLen(formName,fieldName,len,errorMsg) {

    var tmp=document.forms(formName).elements(fieldName).value;

    if(getStrLen(tmp)>len)
    {
    	 alert(errorMsg)
    	 document.forms(formName).elements(fieldName).focus();
    	 return false
    }
    return true
}

//flag=0 = ;=1 >0 ;=2 >=0 ;=-1 <0 ;=-2 <=0
function checkFieldNum(formName,fieldName,flag,errorMsg)
{
   var tmp=document.forms(formName).elements(fieldName).value;
   if(!isNumberic(tmp)) {
     alert(errorMsg);
     document.forms(formName).elements(fieldName).focus();

     return false
   }


   var nTmp=parseFloat(tmp);

   if(flag==1) {
     if(nTmp<=0){
     	alert(errorMsg);
        document.forms(formName).elements(fieldName).focus();

        return false;
     }
   }
   if(flag==2) {
     if(nTmp<0){
     	alert(errorMsg);
        document.forms(formName).elements(fieldName).focus();
        return false;
     }
   }

   return true
}

function isNumberic(str)
{
   if(str=="") return false;
   var s=str.split("")
   //alert(s[s.length-1])
   //alert((s[s.length-1]<="9"  ))
   //alert(( s[s.length-1]>="0"))
   if(!(s[s.length-1]<="9" && s[s.length-1]>="0"))
   {
   	return false;
   }
   if(isNaN(parseFloat(str))) return false;
   return true;
}

function getStrLen(str)
{

    str=escape(str);
    var len=str.length;
    var hzNum=0;
    str=replaceEx(str,"%u","");
    hzNum=(str.length-len)/2
    var len1=str.length
    var spNum=0;
    str=replaceEx(str,"%","");
    spNum=(len1-(hzNum*4) - str.length);
    len=(len-hzNum*6-spNum*3)+hzNum*2+spNum;
    return len
}

function replaceEx(str,str1,str2)
{

    if(str1==str2) return str;
    var lenb=-1,lena=1;
    while(lena!=lenb)
    {
      lenb=str.length;
      str=str.replace(str1,str2)
      lena=str.length;
    }
    return str;
}


function focusOn(item)
{
	if(item.type != "hidden")
		item.focus();
}

/**
 * 长度审查
 * @return
 */
function checkWordLength(strString,MaxLength)
{
	var length = getLength(strString);
		if(length>MaxLength){
			return false;
		}else{
			return true;
		}
}

/**
 * 获得长度
 * @return
 */
function getLength(strString)
{
	var iCounter;
	var iCheckChar;
	var length = 0;
	for( iCounter = 0; iCounter < strString.length; iCounter++ ){
		length +=1;
		}
	return length;
}

/**
 * 获得 SELECT 框的值
 * get item value
 */
function getItemValue(item) {
	var itemVal;

	if(item != null) {
		if(item.type == "select")
			itemVal = item.options[item.selectedIndex].value;
		else
			itemVal = item.value;
	} else
		itemVal = "";

	return itemVal;
}

/**
 *
 * check length
 */
function checkLength(item, maxLen) {
	//alert(getItemValue(item));
	//alert(getStrLen(getItemValue(item)));
	if(getStrLen(getItemValue(item)) > maxLen) {
		focusOn(item);
		alert("文字长度不能超过" + maxLen);
		return false;
	}
	return true;
}

function checkValueLength(item, len) {
	if(getItemValue(item).length != len) {
		focusOn(item);
		alert("文字长度应=" + len);
		return false;
	}
	return true;
}

function checkValueLengthMes(item, len, mes) {
        if(getItemValue(item).length != len) {
                focusOn(item);
                alert(mes+"文字长度应="+len);
                return false;
        }
        return true;
}

function checkEmptyMes(item,aitemName) {
	var i;
	var hasChar = false;
	var strVal = getItemValue(item);
	for(i=0; i< strVal.length && !hasChar; i++) {
		if(strVal.charAt(i) != ' ' && strVal.charAt(i) != '\t' && strVal.charAt(i) != '\r'&& strVal.charAt(i) != '\n')
			hasChar = true;
	}
	if(!hasChar){
		alert(aitemName);
		focusOn(item);
	}
	return hasChar;

}

/**
 * check empty
 */
function checkEmpty(item) {
	var i;
	var hasChar = false;
	var strVal = getItemValue(item);
	for(i=0; i< strVal.length && !hasChar; i++) {
		if(strVal.charAt(i) != ' ' && strVal.charAt(i) != '\t' && strVal.charAt(i) != '\r'&& strVal.charAt(i) != '\n')
			hasChar = true;
	}
	if(!hasChar){
		alert("字段不能为空。");
		focusOn(item);
	}
	return hasChar;

}

/**
 * check illegal char
 */
function checkCharset(item) {
	var i;
	var hasChar = false;
	var strVal = getItemValue(item);

	for(i=0; i< strVal.length && !hasChar; i++) {
		if(strVal.charAt(i) != ' ' && strVal.charAt(i) != '\t' && strVal.charAt(i) != '\r'&& strVal.charAt(i) != '\n')
			hasChar = true;
	}
	return hasChar;
}

/**
 * check integer
 */
function checkInt(item, max, min, msg) {
	var ok = true;
	var hasNum = false;
	var ch;
	var strVal = getItemValue(item);
	if(strVal==""){
		return true;
	}
	var i;

	//check the charset of value
	for(i=0; (i<strVal.length) && ok; i++) {
		ch = strVal.charAt(i);
		//if is + or -
		if((ch == '+' || ch == '-') && i == 0)
			continue;

		if(ch > '9' || ch < '0')
			ok = false;
		else
			hasNum = true;
	}
	if(!hasNum)
		ok = false;

	//check max and min value
	if(ok) {
		var intVal = parseInt(strVal);
		if(isNaN(intVal))
			ok = false;
		else {
			if(!isNaN(max) && intVal > max) {
				ok = false;
				msg += "不能大于" + max + ".";
			}
			if(!isNaN(min) && intVal < min) {
				ok = false;
				msg += "不能小于" + min + ".";
			}
		}
		if(ok)
			return true;
	}

	focusOn(item);
	if(msg != null && msg != "")
		alert(msg);
	else
		alert("请填写合适的整数。");
	return false;
}

/**
 * check int in other format
 */
function checkIntCharset(item, msg) {
	return checkInt(item, NaN, NaN, msg);
}

function checkIntMax(item, max) {
	return checkInt(item, max, NaN, "");
}

function checkIntMin(item, min) {
	return checkInt(item, NaN, min, "");
}

function checkIntMaxMin(item,max,min) {
	return checkInt(item, max, min, "");
}

/**
 * check double
 */
function checkFloat(item, max, min, msg) {
	//alert("checkFloat(item, max, min, msg)");
	var ok = true;
	var hasNum = false;
	var ch;
	var strVal = getItemValue(item);
	var i;
	var pNum = 0;

	//check the charset of value
	for(i=0; (i<strVal.length) && ok; i++) {
		ch = strVal.charAt(i);
		//if is + or -
		if((ch == '+' || ch == '-') && i == 0)
			continue;

		if((ch > '9' || ch < '0') && ch != '.')
			ok = false;
		else if(ch == '.') {
			pNum ++;
			if(pNum > 1)
				ok = false;
		} else
			hasNum = true;
	}
	if(!hasNum)
		ok = false;

	//check max and min value
	if(ok) {
		var fVal = parseFloat(strVal);
		if(isNaN(fVal))
			ok = false;
		else {
			if(!isNaN(max) && fVal > max) {
				ok = false;
				msg += "不能大于" + max + ".";
			}
			if(!isNaN(min) && fVal < min) {
				ok = false;
				msg += "不能小于" + min + ".";
			}
		}
		if(ok)
			return true;
	}
	focusOn(item);
	if(msg != null && msg != "")
		alert(msg);
	else
		alert("请填写合适的数值。");
	return false;
}

/**
 * check double in other format
 */
function checkFloatCharset(item, msg) {
	var strVal = getItemValue(item);
	if(strVal!=""){
		return checkFloat(item, NaN, NaN, msg);
	}else{
		return true;
	}

}

function checkFloatLen(item,len){
	//if(checkFloat(item,NaN,NaN,"")){
		var ok = true;
		var strVal = getItemValue(item);
		var pos=0;
		for(i=strVal.length-1; (i>=0) && ok; i--) {
			ch = strVal.charAt(i);
			if(ch == '.'){
				pos=i;
				ok=false;
			}else{
				continue;
			}
		}
		if(strVal.length-1-pos>len){
			focusOn(item);
			alert("请填写合适的小数。");
			return false;
		}else
			return true;
	//}
}

function checkFloatMax(item, max) {
	alert("11");
	alert('22');
	return checkFloat(item, max, NaN, "");
}

function checkFloatMin(item, min) {
	return checkFloat(item, NaN, min, "");
}

function checkFloatMaxMin(item,max,min) {
	return checkFloat(item, max, min, "");
}

/**
 * check date
 */
function checkDate(year, month, day) {
	var ok = true;

	ok = checkInt(year,2029,1930,"请输入合适的年份。") && checkInt(month,12,1,"请输入合适的月。") && checkInt(day,31,1,"请输入合适的日期。");

	if(ok) {
		var iMonthTbl = new Array( 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 );

		var yearVal,monthVal,dayVal;
		yearVal  = parseInt(getItemValue(year));
		monthVal = parseInt(getItemValue(month));
		dayVal   = parseInt(getItemValue(day));

		if((yearVal % 4 == 0 && yearVal % 100 != 0) || yearVal % 400 == 0){
			iMonthTbl[1] = 29;
		}

		if(dayVal > iMonthTbl[monthVal - 1])
			ok = false;


		if(ok)
			return true;
		else {
			focusOn(day);
			alert("请输入正确的日期。");
		}
	}

	return false;
}

function check8charDate(sgdate) {
	if(checkEmpty(sgdate)==false){
		alert('日期必须不为空');
		return false;
	}
	if(sgdate.value.length != 8){
		alert('日期必须为8位');
		return false;
	}
	if(checkIntCharset(sgdate,'日期格式不对')==false){
		return false;
	}
	var iMonthTbl = new Array( 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 );

	var sgdateVal = getItemValue(sgdate);
	var yearVal,monthVal,dayVal;
	yearVal  = parseInt(sgdateVal.substr(0,4));
	monthVal = parseInt(sgdateVal.substr(4,2));
	dayVal   = parseInt(sgdateVal.substr(6,2));

	if(yearVal<1930 || yearVal > 2023){
		alert('日期输入中年的区间不对');
		return false;
	}

	if(monthVal<1 || monthVal>12){
		alert('日期输入中月的区间不对');
		return false;
	}

	if(dayVal<1 || dayVal>31){
		alert('日期输入中日的区间不对');
		return false;
	}

	if((yearVal % 4 == 0 && yearVal % 100 != 0) || yearVal % 400 == 0){
		iMonthTbl[1] = 29;
	}

	if(dayVal > iMonthTbl[monthVal - 1]){
		alert('没有该日期');
		return false;
	}

	return true;
}

function checkFutureDate(year, month, day) {
	var ok = true;

	if(checkDate(year,month,day)) {
		//if is futrue
		var nowDay = new Date();
		var y = nowDay.getFullYear();
		var m = nowDay.getMonth() + 1;
		var d = nowDay.getDate();

		var yval = parseInt(getItemValue(year));
		var mval = parseInt(getItemValue(month));
		var dval = parseInt(getItemValue(day));

		if(yval < y) {
			focusOn(year);
			ok = false;
		} else if(yval > y)
			return true;
		else if(mval > m)
			return true;
		else if(mval < m) {
			focusOn(month);
			ok = false;
		} else if(dval <= d)
			return false;

		if(ok)
			return true;

		alert("请输入未来的日期。");

	}

	return false;
}

/**
 *
 * @return
 */
function checkPastDate(year, month, day) {
	var ok = true;

	if(checkDate(year,month,day)) {
		//if is futrue
		var nowDay = new Date();
		var y = nowDay.getFullYear();
		var m = nowDay.getMonth() + 1;
		var d = nowDay.getDate();

		var yval = parseInt(getItemValue(year));
		var mval = parseInt(getItemValue(month));
		var dval = parseInt(getItemValue(day));

		if(yval > y) {
			focusOn(year);
			ok = false;
		} else if(yval < y)
			return true;
		else if(mval < m)
			return true;
		else if(mval > m) {
			focusOn(month);
			ok = false;
		} else if(dval > d)
			return false;

		if(ok)
			return true;

		alert("请输入过去的日期。");

	}

	return false;
}
/*
	to a date string from 3 item
*/
function putDate(year, month, day, stritem) {
	if(year.value != "")
		stritem.value = getItemValue(year) + getItemValue(month) + getItemValue(day);
	else
		stritem = "";
}

/*
 add two float value
*/
function safeAddFloat(f1,f2) {
	var ret = parseFloat(f1) + parseFloat(f2);
	return (isNaN(ret)?0:ret);
}
/*
 substract two float value
*/
function safeSubFloat(f1,f2) {
	var ret = parseFloat(f1) - parseFloat(f2);
	return (isNaN(ret)?0:ret);
}
/*
 cal sum = amount * price
*/
function calSum(f_amount, f_price, f_sum) {
	if(f_amount.value == "" || f_price.value == "")
		return;
	var val = parseFloat(f_amount.value) * parseFloat(f_price.value);
	if(!isNaN(val))
		f_sum.value = (Math.round(val * 1000000) / 1000000);
	else
		f_sum.value = "";
}
/*
 cal sum of two value +
*/
function calSum2(f_val1, f_val2, f_sum) {
	if(f_val1.value == "" || f_val2.value == "")
		return;
	var val = parseFloat(f_val1.value) + parseFloat(f_val2.value);
	if(!isNaN(val))
		f_sum.value = (Math.round(val * 1000000) / 1000000);
	else
		f_sum.value = "";
}

function getSpace(num) {
	var tmpstr = "";
	var i;
	for(i = 0;i<num;i++)
		tmpstr += " ";

	return tmpstr;
}
function alertBeforeEnd() {
	return confirm("在提交前请再次确认所填写内容。");
}

function showReference() {
	parent.maininfo.rows = "0,*";
}
function hideReference() {
	parent.maininfo.rows = "*,0";
	parent.reference.src="cailiaoinfo.html";
	parent.reference.refresh;
}
function initDate(year,month,day) {
	if(year.value != "")
		return;
	var cur = new Date();
	year.value = cur.getFullYear();
	month.value = ((cur.getMonth() + 1)>=10)?((cur.getMonth() + 1)):("0" + (cur.getMonth() + 1));
	day.value = (cur.getDate()>=10)?(cur.getDate()):("0" + cur.getDate());
}
/**
 *Converse Value Point
 *parm digit Converse Digit
 *parm sourveStr Need to be Conversed
 */

 function roundAmount(s) {
  n=parseFloat(s)
  var s = "" + Math.round(n * 100) / 100
  var i = s.indexOf('.')
  if (i < 0) return s + ".00"
  var t = s.substring(0, i + 1) +
      s.substring(i + 1, i + 3)
  if (i + 2 == s.length) t += "0"

  return t+""
}



//function converDigit(sourceStr,digit) {
//  var  numberRound=parseFloat(sourceStr);
//  if(isNaN(numberRound)) return "";
//  var retStr="";
//  if (numberRound>=0)
//	{
//		var tempNumber = parseInt((numberRound * Math.pow(10,digit)+0.5))/Math.pow(10,digit);
//		retStr= tempNumber+"";
//	}
//	else
//	{
//		var numberRound1=-numberRound
//		var tempNumber = parseInt((numberRound1 * Math.pow(10,digit)+0.5))/Math.pow(10,digit);
//		retStr= (-tempNumber)+"";
//	}
//
//  var last = retStr.lastIndexOf(".");
//
//  if (last == -1) {
//    retStr = retStr + ".";
//    for (var i=0;i<digit;i++){
//      retStr=retStr+"0";
//    }
//  }
//  else{
//    var ws=retStr.length-last-1;
//    if(ws>0) digit=digit-ws;
//    for (var i=0;i<digit;i++){
//      retStr=retStr+"0";
//    }
//  }
//  return retStr;
//
//}

//判断正确的年月格式
function checkny(obj){
  var vstr=obj.value;
  var msg="";
  if (vstr!=""){
  var isok=true;
  if (vstr.length!=7){
    isok=false;
  }
  if (isok&&vstr.indexOf("-")!=4){
    isok=false;
  }
  var tmp=vstr.split("-");

  if (isok&&!isNaN(tmp[0])){
    var year=new Number(tmp[0]);
    if (year<1800||year>2099){
      isok=false;
    }
  }

  if (isok&&!isNaN(tmp[1])){
    var vmonth=new Number(tmp[1]);
    if (vmonth<1||vmonth>12){
      isok=false;
    }
  }
  if (!isok){
    obj.value="";
    alert("请输入正确的年月格式"+"\n\r"+"正确格式:\"YYYY-NN\"\n如:\"2003-01\"");
  }
}
}
//察看长度
function checklen(obj,len) {
	with(document.mainform) {
		if(obj.value.length > len) {
			alert("该项长度不能超过"+len+"个字符");
			obj.focus();
			return false;
		}
	}
	return true;
}

var isDebug=false;

<!--btnFirst-->
function doFirst()
{
    if(isDebug) alert("doFirst begin");
    var thisHtmlForm=document.forms[0];
    if(thisHtmlForm=="NaN") return false;

    var newPage=1;

    if(thisHtmlForm.currPage.value==newPage)
        return false;
    thisHtmlForm.currPage.value=newPage;
    if(isDebug) alert(newPage);
    thisHtmlForm.submit();
    return true;
}
<!--btnPrev-->
function doPrev()
{
    if(isDebug) alert("doPrev begin");
    var thisHtmlForm=document.forms[0];
    if(thisHtmlForm=="NaN") return false;

    newPage=(parseInt(thisHtmlForm.currPage.value)-1<1 ?
             1 : parseInt(thisHtmlForm.currPage.value)-1);

    if(thisHtmlForm.currPage.value==newPage)
        return false;
    thisHtmlForm.currPage.value=newPage;
    if(isDebug) alert(newPage);
    thisHtmlForm.submit();
    return true;
}
<!--btnNext-->
function doNext()
{
    if(isDebug) alert("doNext begin");
    var thisHtmlForm=document.forms[0];
    if(thisHtmlForm=="NaN") return false;

    newPage=(parseInt(thisHtmlForm.currPage.value)+1>parseInt(thisHtmlForm.numPage.value) ?
             thisHtmlForm.numPage.value : parseInt(thisHtmlForm.currPage.value)+1)

    if(thisHtmlForm.currPage.value==newPage)
        return false;

    thisHtmlForm.currPage.value=newPage;
    if(isDebug) alert(newPage);
    thisHtmlForm.submit();
    return true;
}
<!--btnLast-->
function doLast()
{
    if(isDebug) alert("doLast begin");
    var thisHtmlForm=document.forms[0];
    if(thisHtmlForm=="NaN") return false;

    var newPage=thisHtmlForm.numPage.value;

    if(thisHtmlForm.currPage.value==newPage)
        return false;

    thisHtmlForm.currPage.value=newPage;
    if(isDebug) alert(newPage);
    thisHtmlForm.submit();
    return true;
}
