
//------------Win Safe-----------
//document.oncontextmenu=Click;

//阻止网页上的右键操作
function Click(){
	alert("为了您的网上系统安全，禁止进行该类操作");
	window.event.returnValue=false;
}

//------------Button OnMouseOver-----------
var overBtn_color = "#EFEFEF";
var outBtn_color = "buttonface";

//ButtonClass
function overBtn(obj){

	if(obj.value=="删除"||obj.value=="关闭"){
		obj.style.background = "#FFCCCC";	//背景色
		obj.style.color = "#000000";		//字体色
	}else{
		obj.style.background = overBtn_color;
		obj.style.color = "#000000";
	}
}

//ButtonClass
function outBtn(obj){
	if(obj.value=="删除"){
		obj.style.background = outBtn_color;		//背景色
		obj.style.color = "#000000";				//字体色
	}else{
		obj.style.background = outBtn_color;
		obj.style.color = "#000000";
	}
}

//ButtonClass
function onBtn(obj){
	obj.className = "menu_t";
	obj.style.color = "blue";
}
function otBtn(obj){
	obj.className = "menu_a";
	obj.style.color = "";
}

//---<改变ButtonClass>---
function altCls(obj){
	var evt = FunctionName();
	var cls = obj.className;
	if(typeof(obj) == "object"){
		if(evt == "onmouseover"){obj.className = cls + "_over"}else if(evt == "onmouseout"){obj.className = cls.substr(0,cls.indexOf("_over"))}
	}
}

function FunctionName() {
	try {
		return ( isIE ) ? "on" + event.type : String((String(FunctionName.caller.caller)).match(/function .*?\(/)).replace(/^function |\($/gi,"");
	} catch(Err) {
		return "";
	}
}
//-----------------------------------------

//-----------<CheckBox选择处理>------------
//全选
function doChkAll(objs){
	var aa = document.getElementsByName(objs);
	if (aa == null) return false;
	for(var i=0;i<aa.length;i++){
		if(aa(i).disabled==false){
			aa(i).checked = true;
		}
	}
}

//反选
function doChkCnv(objs){
	var aa = document.getElementsByName(objs);
	if (aa == null) return false;
	for(var i=0;i<aa.length;i++){
		if(aa(i).disabled==false){
			aa(i).checked = !aa(i).checked;
		}
	}
}

//有选判断
function hasChked(objs){
	var chked = false;
	var aa = document.getElementsByName(objs);
	if (aa == null) return false;
	for(var i=0;i<aa.length;i++){
		if(aa(i).disabled==false){
			if(aa(i).checked)chked = true;
		}
	}
	return chked;
}

//选择判断
function hasSelected(objId){
	var slted = false;
	var obj = document.getElementById(objId);
	if(obj.options[obj.selectedIndex].value!="" && obj.options[obj.selectedIndex].value!=0){
		slted = true;
	}
	return slted;
}
//-----------------------------------------

//------------<网站后台语言切换>-----------
function altLang(para){
	myForm.action="";
	myForm.submit();
}
//翻页
function doTurnPage(myPage){
	myForm.page.value = myPage;
	myForm.submit();
}
//-------------------------------------

//判断浏览器
var isIE = navigator.appVersion.toLowerCase().indexOf('msie') >= 0;

//增加事件监视
function BaseAddEventListener(DataName, DataFunction, DataElement) {
	if ( isIE ) {
		DataElement.attachEvent(DataName, DataFunction)
	}else{
		DataElement.addEventListener(DataName.replace(/^on/gi, ""), DataFunction, false)
	}
}

//满足Esc关闭窗口
function chkKeyCode(){
  if(event.keyCode==27){
		window.close();
    return true;
  }
}

function ExpandOrShrink(blockID, evt){
 var block;
 var event, image;
 event = evt ? evt : (window.event ? window.event : null);
 image = event.srcElement ? event.srcElement : event.target;
 block = document.getElementById(blockID);
 if (block.style.display == "none")
 {
  block.style.display = "";
  image.src = "../../images/arrow-up.gif";
 }
 else
 {
  block.style.display = "none";
  image.src = "../../images/arrow-down.gif";
 }
}

//key down function
function is_number(){
 var va=event.keyCode;
 //a = window.frm.interest_rate.value
 if(!((va > 47 && va <58) || (va > 95 && va < 106) || (va == 190) || (va == 110) || (va ==8) || (va == 46) || (va == 13) || (va == 9))){
  event.returnValue=0
  return false;
 }
}

function is_int(){
 var va=event.keyCode;
 //a = window.frm.interest_rate.value
 //event.srcElement.style.textAlign='right'
 if(!((va > 47 && va <58) || (va > 95 && va < 106) || (va == 110) || (va ==8) || (va == 46) || (va == 13) ||(va == 9))){
  event.returnValue=0
  return false;
 }
}

function isInteger(s)
{
 var patrn=/^[0-9]{1,6}$/;
 if (!patrn.exec(s)) return false
 return true
}

function isFloat(s)
{
 if(isNaN(s)){
  //alert('not a number');
  return false;
 }else{
  //alert('is a number');
  var patrn=/^([0-9]{1,6})((\.{1}[0-9]{1,4}){0,1})$/;
  if (!patrn.exec(s)) return false
  return true
 }
}

//yyyy-mm-dd
//计算天数差的函数，通用
//sDate1和sDate2是2002-12-18格式  
function  DateDiff(sDate1,  sDate2){
    var  aDate,  oDate1,  oDate2,  iDays
    aDate  =  sDate1.split("-")
    oDate1  =  new  Date(aDate[1]  +  '-'  +  aDate[2]  +  '-'  +  aDate[0])    //转换为12-18-2002格式
    aDate  =  sDate2.split("-")  
    oDate2  =  new  Date(aDate[1]  +  '-'  +  aDate[2]  +  '-'  +  aDate[0])  
    iDays  =  parseInt(Math.abs(oDate1  -  oDate2)  /  1000  /  60  /  60  /24)    //把相差的毫秒数转换为天数
    return  iDays  
}

//判断日期格式
function isDateString(sDate)
{ var iaMonthDays = [31,28,31,30,31,30,31,31,30,31,30,31]
var iaDate = new Array(3)
var year, month, day

if (arguments.length != 1) return false
iaDate = sDate.toString().split("-")
if (iaDate.length != 3) return false
if (iaDate[1].length > 2 || iaDate[2].length > 2) return false

year = parseFloat(iaDate[0])
month = parseFloat(iaDate[1])
day=parseFloat(iaDate[2])

if (year < 1900 || year > 2100) return false
if (((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0)) iaMonthDays[1]=29;
if (month < 1 || month > 12) return false
if (day < 1 || day > iaMonthDays[month - 1]) return false
return true
} 

/***判断是否为日期(在使用中)***/
function isDate(str)
{
var r = str.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/); 
if(r==null)
{
return false;
} 
var d= new Date(r[1], r[3]-1, r[4]); 
if(!(d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]))
{ 
return false;
}
return true;
}

function isURL (url)
{
 var pattern = /^(http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\?+!]*([^<>\"\"])*)|([A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\?+!]*([^<>\"\"])*)$/;
 return pattern.exec(url.toLowerCase());
}

function isRegisterUserName(s)
{
 var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,14}$/;
 if (!patrn.exec(s)) return false
 return true
}

function isTrueName(s)
{
 var patrn=/^[a-zA-Z]{1,30}$/;
 if (!patrn.exec(s)) return false
 return true
}

function isPasswd(s)
{
 var patrn=/^(\w){1,20}$/;
 if (!patrn.exec(s)) return false
 return true
}

function isTel(s)
{
 //var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?(\d){1,12})+$/;
 var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/;
 if (!patrn.exec(s)) return false
 return true
}

function isMobil(s)
{
 var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/;
 if (!patrn.exec(s)) return false
 return true
}

function isEmail(strEmail) {
 var myReg = /^([a-zA-Z0-9._-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;
 if(myReg.test(strEmail)) return true;
 return false;
}

function isPostalCode(s)
{
 //var patrn=/^[a-zA-Z0-9]{3,12}$/;
 var patrn=/^[a-zA-Z0-9]{3,12}$/;
 if (!patrn.exec(s)) return false
 return true
}

function isSearch(s)
{
 var patrn=/^[^`~!@#$%^&*()+=|\\\][\]\{\}:;'\,.<>/?]{1}[^`~!@$%^&()+=|\\\][\]\{\}:;'\,.<>?]{0,19}$/;
 if (!patrn.exec(s)) return false
 return true
}

function isIP(s) //by zergling
{
 var patrn=/^[0-9.]{1,20}$/;
 if (!patrn.exec(s)) return false
 return true
}

function DatetimeParser(datetimeStr, format)
{
 var year, month, day, hour, minute;
 var date = NaN;
 try
 {
  switch (format)
  {
   case "yyyy-MM-dd hh:mm":
   var arr = datetimeStr.split(" ")
   var ymd = arr[0].split("-");
   var hm = arr[1].split(":");
   year = ymd[0];
   month = ymd[1];
   day = ymd[2];
   hour = hm[0];
   minute = hm[1];
   date = new Date(year, month - 1, day, hour, minute, 0);
   break;
   default:
   break;
  }
 } catch (e)
 {
  return NaN;
 }
 return date;
}

String.prototype.Trim = function()
{
 return this.replace(/(^\s*)|(\s*$)/g,"");
}

function CheckDateTime(dateControlName)
{
 var strDTCheck = eval(dateControlName).value.Trim() ;
 var strDateString = eval(dateControlName).value.Trim();
 var strDate;
 var strTime;
 var strSp = 0;

 if (strDateString.length == 0)
 {  return true;  }

 for (var i=0;i<strDateString.length;i++)
 {
  if (strDateString.substr(i,1) == " ")
  {
   strSp=i;
   break;
  }
 }

 if (strSp == 0)
 {
  if(strDTCheck.length <= 10 )
  {
   strDate = strDTCheck ;
   return CheckDate(strDate) ;
  }
  return false;
 }
 strDate = strDateString.substr(0,strSp);
 strTime = strDateString.substr(strSp+1,strDateString.length-strSp+1);

 var separator = ':';

 var arrayOfTimes = strTime.split(separator);

 if(arrayOfTimes.length == 2 )
 {
  strTime = strTime   +":00";
 }
 if (CheckDate(strDate) == true)
 {
  if (isTime(strTime) == true)
  {  return true;}
  else
  {  return false;}
 }
 else
 {
  return false;
 }
}

function isTime(str)
{
 var a = str.match(/^(\d{1,2})(:)?(\d{1,2})\2(\d{1,2})$/);
 if (a == null) {alert('Time format error.'); return false;}
 if (a[1]>24 || a[3]>60 || a[4]>60)
 {
  alert("Time format error.");
  return false
 }
 return true;
}

function CheckDate(SparaDate)
{
 if (CheckyyyyMMdd(SparaDate) == true)
 {    return true;   }

 var strYMDSP = 0;
 var strYMD;

 if (!(SparaDate.substr(4,1)=="-"))
 {
  return false;
 }

 var strYear = SparaDate.substr(0,4);
 SparaDate   = SparaDate.substr(5,SparaDate.length-5);

 for (i=0;i<SparaDate.length;i++)
 {
  if (SparaDate.substr(i,1)=="-")
  {
   strYMDSP = i;
   break;
  }
 }

 if  (strYMDSP<1)
 {
  return false;
 }

 var strMonth = SparaDate.substr(0,strYMDSP);
 var strDay= SparaDate.substr(strYMDSP+1,SparaDate.length-strYMDSP+1);

 if (strMonth.length == 1)
 {   strMonth = "0"+strMonth;        }
 if (strDay.length == 1)
 {      strDay = "0"+strDay;         }

 if (CheckyyyyMMdd(strYear+strMonth+strDay) == true)
 {    return true;   }
 else
 {   return false;   }

}  // end  function CheckDate

function CheckyyyyMMdd(dayString)
{

 var digit = "0123456789";
 datelist = new Array(31,29,31,30,31,30,31,31,30,31,30,31);
 if (dayString.length !=8) return(false);
 for(i=0;i<8;i++)
 {
  if(digit.indexOf(dayString.charAt(i),0)==-1) return(false);
 }
 year  = dayString.substr(0,4);

 month = dayString.substr(4,2);

 date  = dayString.substr(6,2);

 if (year>2200||year<1900||month>12||month<1||date>31||date<1)  return(false);
 if(date>datelist[month-1]) return(false);

 yyyy = eval(year);
 if ( month == "02" )
 {
  if ( (yyyy % 400) == 0 )
  {
   if ( date>29 )  return(false);
  }
  else if ( (yyyy % 4) == 0 && (yyyy % 100) != 0 )
  {
   if ( date>29 )  return(false);
  }
  else
  {
   if ( date>28 )  return(false);
  }
 }
 return(true);
} // end function CheckyyyyMMdd

//parseDate
function GetDateObj(datestr)
{
 //alert(datestr);
 var strDTCheck = datestr ;
 var strDateString = datestr;
 var strDate;
 var strTime;
 var strSp = 0;

 for (var i=0;i<strDateString.length;i++)
 {
  if (strDateString.substr(i,1) == " ")
  {
   strSp=i;
   break;
  }
 }
 //only date
 if (strSp == 0)
 {
  if(strDTCheck.length <= 10 )
  {
   strDate = strDTCheck ;
  }
  strTime="0:0:0";
 }
 else
 {
  strDate = strDateString.substr(0,strSp);

  strTime = strDateString.substr(strSp+1,strDateString.length-strSp+1);

 }

 var separator = ':';

 var arrayOfTimes = strTime.split(separator); // HH:mm:ss

 if(arrayOfTimes.length == 2 )
 {
  strTime = strTime   +":00";
 }
 var arrayOfDate = strDate.split('-');
 arrayOfTimes = strTime.split(':');
 //alert(strDate);
 //alert(strTime);
 var newDateObj = new Date(parseInt(arrayOfDate[0],10),(parseInt(arrayOfDate[1],10)-1),parseInt(arrayOfDate[2],10),     parseInt(arrayOfTimes[0],10),parseInt(arrayOfTimes[1],10),parseInt(arrayOfTimes[2],10) );
 return newDateObj;
}

function hasSpecSymbol(str){
 var i = 0;
 var ch = '';
 for (i = 0; i < str.length; i++) {
  ch = str.charAt(i);
  if ((ch == "`" )|| (ch == "~" )||(ch == "!" )||(ch == "@" )||
  (ch == "#" )||(ch == "%" )||(ch == "^" )||(ch == "&" )||
  (ch == "*" )||(ch == "(" )||(ch == ")" )||(ch == "+" )||
  (ch == "=" )||(ch == "|" )||(ch == "{" )||(ch == "}" )||
  (ch == "[" )||(ch == "]" )||(ch == ":" )||(ch == ";" )||
  (ch == "<" )||(ch == ">" )||
  (ch == "," )||(ch == "." )||(ch == "?" )) {
   return false;
  }
 }
 return true;
}

//is english letter
function ifLetter(str ){
 for ( var i = 0 ; i < str.length; i ++ ){
  if ( parseInt(str.charCodeAt(i)) < 27 || parseInt(str.charCodeAt(i)) > 128 )
  return false;
 }
 return true;
}

//****************************************************************
// Code by Yahao
// Copyright by YAHAO Studio & 清水万维工作室 
// Date: 2000-6-14
// Description: sInputString 为输入字符串，iType为类型，分别为
// 0 - 去除前后空格; 1 - 去前导空格; 2 - 去尾部空格
//****************************************************************
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
}


//****************************************************************
//CheckDate
//****************************************************************
function CheckDate(str){//1998-12-12	 

    var reg = /^(\d{4})-(\d{1,2})-(\d{1,2})$/; 

    var r = str.match(reg); 

    if(r==null)return false; 

    r[2]=r[2]-1; 

    var d= new Date(r[1], r[2],r[3]); 

    if(d.getFullYear()!=r[1])return false; 

    if(d.getMonth()!=r[2])return false; 

    if(d.getDate()!=r[3])return false; 

    return true;

}

//检查非法字符
function checkUid(obj){
	var re=/\/|\\|=|\&|\$|%|\^/g;
	if (re.test(obj.value)==true){
		return false;
	}
	return true;
}
