// JavaScript Document

var zz_userNick=/^[a-zA-Z0-9_]{1,20}$/;
var zz_password=/\S{6,}/;
var zz_code=/^[a-zA-Z0-9]{4}$/;
var zz_telephone=/^((\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/;
var zz_mobile=/^(13[0-9]|15[0|1|2|5||3|6|7|8|9]|18[0|1|2|3|4|5|6|7|8|9])\d{8}$/;
var zz_post=/^[1-9]\d{5}(?!\d)$/;
var zz_numer=/^[1-9]\d*|0$/;//配置正整数和零
var zz_shuzhi=/^[0-9]\d*\.{0,1}[0-9]*$/;//匹配数值
var zz_float=/^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$/;//匹配正浮点数
var zz_date=/(19[0-9]{2}|20[0-9]{2})\-(0[1-9]|1[0-2])\-(0[1-9]|[1-2][0-9]|3[0-1])$/;
var zz_dateTime=/(19[0-9]{2}|2[0-9]{3})\-(0[1-9]|1[0-2])\-(0[1-9]|[1-2][0-9]|3[0-1]) ([0-9]{2})\:([0-9]){2}\:([0-9]){2}$/;
var zz_char=/^[a-zA-Z_]{1,}$/;
var zz_url=/^(http|https|ftp){1}(\:\/\/){1}/i;//URL地址匹配，比较简单
var zz_email=/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/i;//匹配EMAIL地址
var zz_html=/(<\w+[^>]*>)|(<\/\s*[^>]+\s*>)/i;//匹配HTML的任何标记符，主要用于将HTML标记符替换为空或其它字符

/*
	使用jQuery的ajax方法请求数据，并返回请求的结果，刷新时间以秒为单位，等于0时不刷新
*/
function js_ajax(rc_data,rc_url,rc_async,rc_type,rc_dataType,refreshTime,goUrl,contDiv){
	refreshTime=zz_shuzhi.test(refreshTime)?parseFloat(refreshTime):0;
	if(!isNull(contDiv)){
		$("#"+contDiv).html("操作中，请稍候……");
	}
	result='';
	$.ajax({
		async:rc_async,//同步或异步请求，可取值true和false
		type:rc_type,//向服务器请求的方式，可选post、get等
		dataType:rc_dataType,//预期服务器返回的数据类型，可选：html、json、xml、script、jsonp、text
		data:rc_data,//向服务器请求的数据，多以字符串的json方式组织数据
		url:rc_url,//服务器接受请求的程序文件路径
		error:function(){
			result=false;
		},
		success:function(data,textStatus){
			result=data;
		}
	});
	if(result===false){
		if(isNull(contDiv)){
			alert("发生错误");
		}else{
			$("#"+contDiv).html("发生错误");
		}
	}else{
		if(contDiv){
			$("#"+contDiv).html(result);
		}
		if(isNull(goUrl) && refreshTime!=0){
			window.setTimeout("freshWindow('')",refreshTime*1000);
		}else if(!isNull(goUrl)){
			window.setTimeout("freshWindow('')",0);
		}else if(refreshTime>0){
			window.setTimeout("freshWindow("+goUrl+")",refreshTime*1000);
		}
	}
	return result;
}

function freshWindow(goUrl){
	if(isNull(goUrl)){
		window.location.reload(true);
	}else{
		window.location.href=goUrl;
	}
}

/*
	JSON转换成JSON格式的字符串
*/
function jtostr(jsonObj){
	var jstr="{";
	for(var item in jsonObj){
		jstr+='"'+item+"':"+jsonObj[item]+",";
	}
	jstr+="}";
	return jstr;
}
/*
	在当前页面弹出一个提示层，并在提示层中输出传递过来的内容
*/
function js_layer(rc_content,layer_width,layer_height){
	rc_content=isNull(rc_content)?"操作执行中，请稍候……":rc_content;
	var w_width=$(this).width();
	var h_height=$(this).height();
	var layer_width=(!isNaN(layer_width) && layer_width>=200)?layer_width:300;
	var layer_height=(!isNaN(layer_height) && layer_height>=150)?layer_height:200;
	var contentHeight=layer_height;
	if($("#layer_main").length>0){
		$("#layer_main").remove();
	}
	$("body").append('<div id="layer_main"></div>');
	var layer_obj=$("#layer_main");
	layer_obj.css({"width":w_width+"px","height":h_height+"px","display":"block","position":"absolute","z-index":2,"top":"0px","overflow":"hidden"});
	$(layer_obj).append("<div id='show_content'></div>");
	layer_obj=$("#show_content");
	layer_obj.css({"width":layer_width+"px","height":layer_height+"px","margin":"auto","display":"block","position":"relative","background":"#FFF","color":"#000","margin-top":h_height/2-layer_width/2});
	layer_obj.append("<div id=\"layer-bar\"><div id=\"closeBar\">×</div></div><div id=\"layer_content\" style=\"overflow:scroll; height:"+contentHeight+"px;\"></div>");
	$("#layer_content").html(rc_content);
	$("#closeBar").click(function(){
		$("#layer_main").remove();
	});
}

/*
	检测登录时账号、密码、验证码
*/
function checkLog(userNick,pass,code){
	var result='';
	if(!zz_userNick.test(userNick) || userNick=='输入账号'){
		result= "账号错误";
	}else if(!zz_password.test(pass) || pass=='输入密码'){
		result="密码错误";
	}else if(!zz_code.test(code) || code=='输入验证码'){
		result="验证码错误";
	}else{
		result=true;
	}
	return result;
}

/*
	是否为空
*/
function isNull(v){
	if(v){
		v.replace(/\s/,"");
		v.replace("　","");
	}
	if(v==false || v==''){
		return true;
	}
	return false;
}

/*
	判断是否是EXCEL文件
*/
function isExcel(v){
	if(v=='undefined' || isNull(v)){
		return false;
	}else{
		var len=v.length;
		var i=0;
		v=v.toLowerCase();
		i=v.lastIndexOf(".xlsx");
		if(i==-1){
			i=v.lastIndexOf(".xls");
		}
		if(i+5==len){
			return false;//暂不支持xlsx
		}else if(i+4==len){
			return true;
		}else{
			return false;
		}
	}
}


function onlyNum(obj,e)
{
	var key=(window.event)?e.keyCode:e.which;
	if(key==8 || key==127 || key==46)
	{
		if(key==46 && obj.value.split(".").length-1>0){//确保只出现一次小数点
			return false;
		}else{
			return true;
		}
	}
	if(key>47 && key<59)
	{
		return true;
	}
	else
	{
		return false;
	}
}
//仅输入字母字符
function onlyChar(e)
{
	var key=(window.event)?e.keyCode:e.which;
	if(key==8 || key==127)
	{
		return true;
	}
	if((key>=65 && key<=90) || (key>=97 && key<=122))
	{
		return true;
	}
	else
	{
		return false;
	}
}
//日期自动加"-"函数
  function dateFormat(obj,e)
  {
	  var key=(window.event)?e.keyCode:e.which;
	  var ch=obj.value;
	  if(key==8 || key==127)
	  {
		  return true;
	  }
	  if(key>47 && key<58)
	  {
		  if(ch.length>=19){
			  return false;
		  }
		  else if(ch.length<3 || (ch.length>=5 && ch.length<6))
		  {
			  return true;
		  }
		  else if(ch.length==4 || ch.length==7)
		  {
			  ch=ch+"-";
			  obj.value=ch;
			  return true;
		  }else if(ch.length==10){
			  ch=ch+" ";
			  obj.value=ch;
			  return true;
		  }else if(ch.length==13 || ch.length==16){
			  ch=ch+":";
			  obj.value=ch;
			  return true;			  
		  }
	  }
	  else
	  {
		  return false;
	  }
  }
  //获取复选框选中项的值,返回用逗号隔开的值字符串
  function checkboxValue(obj){
	  var v='';
	  var checkbox="input[name="+obj+"]";
	  var i=0;
	  $(checkbox).each(function(){
		  if($(this).attr("checked")){
		  	v+=","+$(this).val();
		  }
	  });
	  if(!isNull(v)){
		  v=v.replace(/(^\,*)|(\,*$)/g,'');
	  }
	  return v;
  }
  //复选框反选
  function fanXuan(obj){
	  var checkbox="input[name="+obj+"]";
	  $(checkbox).each(function(){
		  if($(this).attr("checked")){
			  $(this).removeAttr("checked");
		  }else{
			  $(this).attr("checked","checked");
		  }
	  });
	  return true;
  }
  
  //打印设置
  //sUrl需打开的网址，param传递的参数（使用地址参数的形式id=1&name=abc&page=1），title打印标题，pageWidth内容宽,pageHeight内容高（注意不是纸的大小）以厘米为单位,direction打印方向(w横向,h竖向);
  function setPrinter(sUrl,param,title,pageWidth,pageHeight,direction){
	  if(direction==='w'){
		  window.open(sUrl+"?height="+pageHeight+"&width="+pageWidth+"&"+param,"printWindow","width=800,height=400,channelmode=0,directories=1,location=0,menubar=0,resizable=0,scrollbars=1,status=1,titlebar=1,toolbar=0,top=50,left=50");
	  }else{
		  window.open(sUrl+"?height="+pageHeight+"&width="+pageWidth+"&"+param,"printWindow","width=400,height=800,channelmode=0,directories=1,location=0,menubar=0,resizable=0,scrollbars=1,status=1,titlebar=1,toolbar=0,top=50,left=50");
	  }
  }