// Withub Court System 2002

// outlook bar lib functions
// 2001-07-25 written by kenji
// mailto:jinmarco8@hotmail.com

// 两个变量是否相同
function equal(s1, s2) {
  return (s1==s2);
}

// 比较字符串大小 返回 1（大） 0（等） -1（小） -2（错误）
function strcompare(s1, s2) {
  if(s1>s2) {
    return 1;
  } else if(s1==s2) {
    return 0;
  } else if(s1<s2) {
    return -1;
  } else {
    return -2; // error code
  }
}

// number 数字
function isnumber(s) {
  return /^\d*$/.test(s);
}


// phone 电话号码
function isphone(s) {
  return /^[+-1234567890,]*$/.test(s) && (s.length<50);
}


// pswd 口令
function ispswd(s) {
  return /^[a-zA-Z0-9_]*$/.test(s);
}


// e-mail 地址
function isemail(s) {
  return /^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.[a-zA-Z0-9._-]+$/.test(s);
}


// callcenter 用到的 AgentID , 4位或6位数字，第一位必须为1
function isagentid(s) {
  return /^1\d{3}(\d{2})?$/.test(s);
}


// 邮政编码的格式 6位数字
function iszipcode(s) {
  return /^\d{6}$/.test(s);
}


// 金额的格式
function ismoney(s) {
  //return /^\d{1,9}(\.\d{0,2})?$/.test(s);
  return /^\d{1,12}(\.\d{0,2})?$/.test(s);
}


// 日期的格式判断  "yyyy-mm-dd"
function isdate(s) {
  // 校验格式有效性
  if( ! /^\d{4}\-\d{2}\-\d{2}$/.test(s) ) return false;
  // 校验数据有效性
  var p1,p2,p3;
  p1 = Number(s.substring(0,4));
  p2 = Number(s.substring(5,7));
  p3 = Number(s.substring(8,10));
  if( p1<1900 || p1>2100 ) return false;
  if( p2==1 || p2==3 || p2==5 || p2==7 || p2==8 || p2==10 || p2==12 ) {
    if( p3<1 || p3>31 ) return false;
  } else if ( p2==4 || p2==6 || p2==9 || p2==11) {
    if( p3<1 || p3>30 ) return false;
  } else if(p2==2) { // p2==2
    if( p3<1 ) return false;
    if( p1%4==0 && p1%400==0) if( p3>29 ) return false;
    else                      if( p3>28 ) return false;
  } else {
    return false;
  }
  // 通过
  return true;
}



// 日期的格式判断  "2004-01-01"或"2004-1-1"
function IsDate(s) {
  var p1,p2,p3,ss;
  if( (! /^\d{4}\-\d{2}\-\d{2}$/.test(s)) && (! /^\d{4}\-\d{1}\-\d{1}$/.test(s)) && (! /^\d{4}\-\d{1}\-\d{2}$/.test(s)) && (! /^\d{4}\-\d{2}\-\d{1}$/.test(s))) return false;

  ss=s.split("-");
  p1=Number(ss[0]);
  p2=Number(ss[1]);
  p3=Number(ss[2]);

  if( p1<1900 || p1>2100 ) return false;
  if( p2==1 || p2==3 || p2==5 || p2==7 || p2==8 || p2==10 || p2==12 ) {
    if( p3<1 || p3>31 ) return false;
  } else if ( p2==4 || p2==6 || p2==9 || p2==11) {
    if( p3<1 || p3>30 ) return false;
  } else if(p2==2) { // p2==2
    if( p3<1 ) return false;
    if( p1%4==0 && p1%400==0) if( p3>29 ) return false;
    else                      if( p3>28 ) return false;
  } else {
    return false;
  }
  // 通过
  return true;
}


// 日期时间的格式判断  "2004-01-01 12:00:00"或"2004-1-1 12:00:00"
function IsDateTime(s) {
  var ss;
  ss=s.split(" ");
  if (!IsDate(ss[0]))
	  return false;

  if(!IsTime(ss[1]))
	  return false;

  return true;

}

// 时间的格式判断  "HH:MM:SS"
function IsTime(s) {
  var p1,p2,p3,ss;
  if( ! /^\d{2}\:\d{2}\:\d{2}$/.test(s)) return false;

  ss=s.split(":");
  p1=Number(ss[0]);
  p2=Number(ss[1]);
  p3=Number(ss[2]);

  if( p1<0 || p1>23 ) return false;
  if( p2<0 || p2>59 ) return false;
  if( p3<0 || p3>59 ) return false;
  return true;

}




// 年份判断 year >= 1900  and year <= 2100
function isyear(s) {
  if(!isnumber(s)) return false;
  var d = Number(s);
  if(d<1900 || d>2100) return false;
  return true;
}

// 时间的格式判断 "yyyy-mm-dd hh:mi"
function isdatetime(s) {
  // 校验格式有效性
  if( ! /^\d{4}\-\d{2}\-\d{2}\x20\d{2}:\d{2}$/.test(s) ) return false;

  // 检验日期部分的有效性
  if( isdate(s.substring(0,10))==false ) return false;

  // 检验数据有效性
  p1 = Number(s.substring(11,13));
  p2 = Number(s.substring(14,16));
  if( p1<0 || p1>23 ) return false;
  if( p2<0 || p2>59 ) return false;
  return true;
}

// 时间的格式判断 "yyyy-mm-dd 24hh:mm:dd"
function isdatetime2(s) {
  // 校验格式有效性
  if( ! /^\d{4}\-\d{2}\-\d{2}\x20\d{2}:\d{2}:\d{2}$/.test(s) ) return false;

  // 检验日期部分的有效性
  if( isdate(s.substring(0,10))==false ) return false;

  // 检验数据有效性
  p1 = Number(s.substring(11,13));
  p2 = Number(s.substring(14,16));
  p3 = Number(s.substring(17,19));
  if( p1<0 || p1>23 ) return false;
  if( p2<0 || p2>59 ) return false;
  if( p3<0 || p3>59 ) return false;
  return true;
}

// 转换为金额格式
function tomoney(s) {
  var s2;
  if( /^\d{1,7}$/.test(s) ) {
    s2 = s + ".00";
  } else if( /^\d{1,7}\.$/.test(s) ) {
    s2 = s + "00";
  } else {
    s2 = s;
  }
  return s2;
}

// 转换为日期格式
function todate(s) {
  var s2;
  if( /^\d{4}\D\d{2}\D\d{2}$/.test(s) ) {    // 格式为 2001/01/01 用字符分格出了三段
    s2 = s.substring(0,4) + "-" + s.substring(5,7) + "-" + s.substring(8,10);
  } else if( /^\d{4}\d{2}\d{2}$/.test(s) ) { // 格式为 20010101
    s2 = s.substring(0,4) + "-" + s.substring(4,6) + "-" + s.substring(6,8);
  }
  if(s2!=null && isdate(s2)) return s2;
  return s;
}

// 转换为日期时间格式
function todatetime(s) {
  var s2;
  if( /^\d{4}\D\d{2}\D\d{2}\D\d{2}\D\d{2}$/.test(s) ) {
    s2 = s.substring(0,4) + "-" + s.substring(5,7) + "-" + s.substring(8,10) + " " + s.substring(11,13) + ":" + s.substring(14,16);
  } else if( /^\d{4}\d{2}\d{2}\d{2}\d{2}$/.test(s) ) {
    s2 = s.substring(0,4) + "-" + s.substring(4,6) + "-" + s.substring(6,8) + " " + s.substring(8,10) + ":" + s.substring(10,12);
  }
  if(s2!=null && isdatetime(s2) ) return s2;
  return todate(s);
}

// 转换为时间格式
function totime(s) {
  var s2;
  if( /^\d{2}\D\d{2}$/.test(s) ) {    // 格式为 2001/01/01 用字符分格出了三段
    s2 = s.substring(0,2) + ":" + s.substring(3,5);
  } else if( /^\d{2}\d{2}$/.test(s) ) { // 格式为 1212
    s2 = s.substring(0,2) + ":" + s.substring(2,4);
  } else {
    s2 = s;
  }
  return s2;
}

// window.alert(1+Number("3"));
// <input type="text" name="i_larq" onblur="this.value=todatetime(this.value);">

/* 附系统使用中的部分约定：
 *
   日期 格式：yyyy-mm-dd       表示：年月日
   时间 格式：yyyy-mm-dd hh:mi 表示：年月日时分（秒不计）
   以上两个在存储中 其余未自动填零处理
 */


// -----------------------------------------------------------------------------

// html 和 javascript String.length 对字符串的长度计算都是 UNICODE 中文和字符都是一个长度
// 而 oracle 数据库中，varchar2(1) 却只能存 'a' 不能存 '啊' 这个算的是字节数
// 下面的函数，计算了字符串的字节长度
function getBytesCount(str) {
  if(str==null) return -1;
  var l  = str.length;
  var l2 = l;
  for (var i=0; i<l; i++) {
    if(str.charCodeAt(i)>256) {
      l2++;
    }
  }
  return l2;
}

// 日期的格式判断  "yyyymmdd"
function isdate2(s) {
  // 校验格式有效性
  if( ! /^\d{4}\d{2}\d{2}$/.test(s) ) return false;
  // 校验数据有效性
  var p1,p2,p3;
  p1 = Number(s.substring(0,4));
  p2 = Number(s.substring(4,6));
  p3 = Number(s.substring(6,8));
  if( p1<1900 || p1>2100 ) return false;
  if( p2==1 || p2==3 || p2==5 || p2==7 || p2==8 || p2==10 || p2==12 ) {
    if( p3<1 || p3>31 ) return false;
  } else if ( p2==4 || p2==6 || p2==9 || p2==11) {
    if( p3<1 || p3>30 ) return false;
  } else if(p2==2) { // p2==2
    if( p3<1 ) return false;
    if( p1%4==0 && p1%400==0) if( p3>29 ) return false;
    else                      if( p3>28 ) return false;
  } else {
    return false;
  }
  // 通过
  return true;
}

//去空格
function Trim(str){
 if(str.charAt(0) == " "){
  str = str.slice(1);
  str = Trim(str);
 }
 return str;
}

//检查数值
function check_int(theField)
{
	var  modeltype =  /^\d+|^\+\d+$/;
	var theValue = trim(theField.value);
	if((theValue =="")||(theValue ==null))
	{
		return true;
	}
	else
	{
    	if (modeltype.test(theValue))
    	{
        	return true;
    	}
    	else
    	{
        	return false;
    	}
    }
}

//去掉首尾空格
function trim(theValue)
{
  var retn = theValue;
  retn = retn.replace(/^\s*/g,"");
  retn = retn.replace(/\s*$/g,"");
  return retn;
}
//日期表示
function Dispdate(){
var enabled = 0; today = new Date();
var day; var date;
if(today.getDay()==0) day = "星期日"
if(today.getDay()==1) day = "星期一"
if(today.getDay()==2) day = "星期二"
if(today.getDay()==3) day = "星期三"
if(today.getDay()==4) day = "星期四"
if(today.getDay()==5) day = "星期五"
if(today.getDay()==6) day = "星期六"
document.fgColor = "000000";
date = (today.getYear()) + "年" + (today.getMonth() + 1 ) + "月" + today.getDate() + "日 " + day;
return date;
}
