/*
==================================================================
LTrim(string):去除左边的空格 
==================================================================
*/
function LTrim(str)
{
    var whitespace = new String(" \t\n\r");
    var s = new String(str);
    if (whitespace.indexOf(s.charAt(0)) != -1)
    {
        var j=0, i = s.length;
        while (j < i && whitespace.indexOf(s.charAt(j)) != -1)
        {
            j++;
        }
        s = s.substring(j, i);
    }
    return s;
}
/*
==================================================================
RTrim(string):去除右边的空格
==================================================================
*/
function RTrim(str)
{
    var whitespace = new String(" \t\n\r");
    var s = new String(str);
    if (whitespace.indexOf(s.charAt(s.length-1)) != -1)
    {
        var i = s.length - 1;
        while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1)
        {
            i--;
        }
        s = s.substring(0, i+1);
    }
    return s;
}
/*
==================================================================
Trim(string):去除前后空格
==================================================================
*/
function Trim(str)
{
    return RTrim(LTrim(str));
}
/*
==================================================================
checkSpecialString(string):验证非法字符
==================================================================
*/
function checkSpecialString(str) {
    var reg = new RegExp(/[!\"\#\$\%\&\'\(\)\=\`\|\~\{\+\*\}\<\>\?\_\-\^\\\@\[\;\:\]\,\.\/]+/);
    if (reg.test(str)) {
       return true;
    }
    return false;
}
/*
==================================================================
isEmail(string):验证email
==================================================================
*/
function isEmail(str){
	var rt = new Array();
	rt[0] = "\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*";
	rt[1] = "请您填写正确的EMAIL格式";
	var reg = new RegExp(rt[0] ,"i");
	if(reg.test(str)){
		return true;
	}else{
		//alert(rt[1]);
		return false;
	}
}
/*
==================================================================
isZhEmail(string):验证中文email
==================================================================
*/
function isZhEmail(emailStr) {
    if (emailStr.length == 0) {
	   return true;
    }
    var emailPat=/^(.+)@(.+)$/;
    var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]";
    var validChars="\[^\\s" + specialChars + "\]";
    var quotedUser="(\"[^\"]*\")";
    var ipDomainPat=/^(\d{1,3})[.](\d{1,3})[.](\d{1,3})[.](\d{1,3})$/;
    var atom=validChars + '+';
    var word="(" + atom + "|" + quotedUser + ")";
    var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
    var domainPat=new RegExp("^" + atom + "(\\." + atom + ")*$");
    var matchArray=emailStr.match(emailPat);
    if (matchArray == null) {
	    return false;
    }
    var user=matchArray[1];
    var domain=matchArray[2];
    if (user.match(userPat) == null) {
	    return false;
    }
    var IPArray = domain.match(ipDomainPat);
    if (IPArray != null) {
	    for (var i = 1; i <= 4; i++) {
		   if (IPArray[i] > 255) {
			  return false;
		   }
	    }
	    return true;
    }
    var domainArray=domain.match(domainPat);
    if (domainArray == null) {
 	    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)) {
	    return false;
    }
    if (len < 2) {
	    return false;
    }
    return true;
}
/*
==================================================================
onlyZh(string):只可输入中文
==================================================================
*/
function onlyZh(str){
	var rt = new Array();
	rt[0] = "^[\u0391-\uFFE5]+$";
	rt[1] = "请输入中文";
	var reg = new RegExp(rt[0] ,"i");
	if(reg.test(str)){
		return true;
	}else{
		alert(rt[1]);
		return false;
	}
}
/*
==================================================================
onlyEn(string):只可输入英文
==================================================================
*/
function onlyEn(str){
	var rt = new Array();
	rt[0] = "^[A-Za-z]+$";
	rt[1] = "请输入英文";
	var reg = new RegExp(rt[0] ,"i");
	if(reg.test(str)){
		return true;
	}else{
		//alert(rt[1]);
		return false;
	}
}
/*
==================================================================
onlyEn2(string):只可输入英文或带.的英文。如 shang.hai 或shanghai
==================================================================
*/
function onlyEn2(str){
	var rt = new Array();
	rt[0] = "^[A-Za-z]*([*.]*[ \t\n\r]*[*.]*[A-Za-z])+$";
	rt[1] = "请输入英文";
	var reg = new RegExp(rt[0] ,"i");
	if(reg.test(str)){
		return true;
	}else{
		alert(rt[1]);
		return false;
	}
}
/*
==================================================================
onlyEnOrNum(string):只可输入英文和数字和下划线
==================================================================
*/
function onlyEnOrNum(str){
	var rt = new Array();
	rt[0] = "^[A-Za-z0-9_]+$";
	rt[1] = "只能输入英文,数字和下划线！";
	
	var reg = new RegExp(rt[0] ,"i");
	if(reg.test(str)){
		return true;
	}else{
		alert(rt[1]);
		return false;
	}
}
/*
==================================================================
isInt(value,type):验证整数

@param value 是String类型
    type 是

    为空		任意整数
	'0+'	非负整数
	'+'		正整数
	'-0'	非正整数
	'-' 	负整数
==================================================================
*/
function isInt(value,type){
	var rt = new Array();
	if(type=="0+"){
		rt[0] = "^\\d+$";
		rt[1] = "请输入非负整数!";
	}else if(type=="+"){
		rt[0] = "^\\d*[1-9]\\d*$";
		rt[1] = "请输入正整数!";
	}else if(type=="-0"){
		rt[0] = "^((-\\d+)|(0+))$";
		rt[1] = "请输入非正整数!";
	}else if(type=="-"){
		rt[0] = "^-\\d*[1-9]\\d*$";
		rt[1] = "请输入负整数!";
	}else{
		rt[0] = "^-?\\d+$";
		rt[1] = "请输入整数值!";
	}
	var reg = new RegExp(rt[0] ,"i");
	if(reg.test(value)){
		return true;
	}else{
		//alert(rt[1]);
		return false;
	}
}
/*
==================================================================
isFloat(value,type):验证浮点数

@param value 是String类型
    type 是

    为空		任意浮点数
	'0+'	非负浮点数
	'+'		正浮点数
	'-0'	非正浮点数
	'-' 	负浮点数
==================================================================
*/
function isFloat(value,type){
	var rt = new Array();
	if(type=="0+"){
		rt[0] = "^\\d+(\.\\d+)?$";
		rt[1] = "请输入非负浮点数!";
	}else if(type=="+"){
		rt[0] = "^((\\d+\\.\\d*[1-9]\\d*)|(\\d*[1-9]\\d*\\.\\d+)|(\\d*[1-9]\\d*))$";
		rt[1] = "请输入正浮点数!";
	}else if(type=="-0"){
		rt[0] = "^((-\\d+(\.\\d+)?)|(0+(\\.0+)?))$";
		rt[1] = "请输入非正浮点数!";
	}else if(type=="-"){
		rt[0] = "^(-((\\d+\\.\\d*[1-9]\\d*)|(\\d*[1-9]\\d*\\.\\d+)|(\\d*[1-9]\\d*)))$";
		rt[1] = "请输入负浮点数!";
	}else{
		rt[0] = "^(-?\\d+)(\\.\\d+)?$";
		rt[1] = "请输入浮点数值!";
	}
	var reg = new RegExp(rt[0] ,"i");
	if(reg.test(value)){
		return true;
	}else{
		//alert(rt[1]);
		return false;
	}
}
/*
==================================================================
isPhone(String):验证电话号码
==================================================================
*/
function isPhone(str){
	var rt = new Array();
	rt[0] = "^((\\(\\d{2,3}\\))|(\\d{3}\\-))?(\\(0\\d{2,3}\\)|0\\d{2,3}-)?[1-9]\\d{6,7}(\\-\\d{1,4})?$";
	rt[1] = "请输入正确的电话号码格式！";
	var reg = new RegExp(rt[0] ,"i");
	if(reg.test(str)){
		return true;
	}else{
		alert(rt[1]);
		return false;
	}
}
/*
==================================================================
isMobile(String):验证手机号码
==================================================================
*/
function isMobile(str){
	var rt = new Array();
	rt[0] = "^((\\(\\d{2,3}\\))|(\\d{3}\\-))?13\\d{9}$";
	rt[1] = "请输入正确的手机号码格式！";
	var reg = new RegExp(rt[0] ,"i");
	if(reg.test(str)){
		return true;
	}else{
		alert(rt[1]);
		return false;
	}
}
/*
==================================================================
isEnUrl(String):验证英文URL
==================================================================
*/
function isEnUrl(str){
	var rt = new Array();
	rt[0] = "\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\\?%\\-&_~`@[\\]\\':+!]*([^<>\"\"])*$";
	//rt[0] = "[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\\?%\\-&_~`@[\\]\\':+!]*([^<>\"\"])*$";
	rt[1] = "请输入正确的URL！";
	var reg = new RegExp(rt[0] ,"i");
	if(reg.test(str)){
		return true;
	}else{
		alert(rt[1]);
		return false;
	}
}
/*
==================================================================
isZhUrl(String):验证中文URL
==================================================================
*/
function isZhUrl(str){
	var rt = new Array();
	rt[0] = "\/[A-Za-z0-9\u0391-\uFFE5]+\.[A-Za-z0-9\u0391-\uFFE5]+[\/=\\?%\\-&_~`@[\\]\\':+!]*([^<>\"\"])*$";
	//rt[0] = "[A-Za-z0-9\u0391-\uFFE5]+\.[A-Za-z0-9\u0391-\uFFE5]+[\/=\\?%\\-&_~`@[\\]\\':+!]*([^<>\"\"])*$";
	rt[1] = "请输入正确的URL！";
	var reg = new RegExp(rt[0] ,"i");
	if(reg.test(str)){
		return true;
	}else{
		alert(rt[1]);
		return false;
	}
}
/*
==================================================================
checkDate(String):验证日期(是否小于当前日期)
==================================================================
*/
function checkDate(obj) {
    //输入日期(obj) = 2007-08-01
	if(obj!="" && obj!=null){
		var time = obj.split("-");
		var times = new Date();
		
		if(Date.parse((times.getMonth() + 1)+"/"+times.getDate()+"/"+times.getFullYear()) - Date.parse(time[1]+"/"+time[2]+"/"+time[0])>0){
			alert("输入的日期小于当前日期 ！！");
			return false;
		}
	}
	return true;
}
/*
==================================================================
checkTime(String):验证时间(是否小于当前时间)
==================================================================
*/
function checkTime(obj){
    //输入时间(obj) = 2007-08-01 12:59:59:234
    var day = obj.split(" ");
    var days = day[0].split("-");
    var times = new Date();
    var nowDate = Date.parse((times.getMonth() + 1)+"/"+times.getDate()+"/"+times.getFullYear()+" "+times.getHours()+":"+times.getMinutes()+":"+times.getSeconds()); 
    var newDate = Date.parse(days[1]+"/"+days[2]+"/"+days[0]+" "+day[1]); 
   
    if(nowDate>newDate) { 
      alert("输入的时间小于当前时间!");
      return false;
    }   
    return true;
}
/*
==================================================================
endDateBigStartDate(String,String):验证时间(结束时日期是否小于开始日期)
==================================================================
*/
function endDateBigStartDate(startDate,endDate){
	
	var temp_start = startDate.split("-");
	var temp_end = endDate.split("-");
	
	if(Date.parse(temp_start[1]+"/"+temp_start[2]+"/"+temp_start[0]) - Date.parse(temp_end[1]+"/"+temp_end[2]+"/"+temp_end[0])>0){
	  
	  return true;
    }
    
    return false;
}
/*
==================================================================
endTimeBigStartTime(String,String):验证时间(结束时时间是否小于开始时间)
==================================================================
*/
function endTimeBigStartTime(startTime,endTime){
	
	var temp_start = startTime.split(" ");
	var temp_starts = temp_start[0].split("-");
	
	var temp_end = endTime.split(" ");
	var temp_ends = temp_end[0].split("-");
	
    var startDatetime = Date.parse(temp_starts[1]+"/"+temp_starts[2]+"/"+temp_starts[0]+" "+temp_start[1]); 
    var endDatetime = Date.parse(temp_ends[1]+"/"+temp_ends[2]+"/"+temp_ends[0]+" "+temp_end[1]); 
   
    if(startDatetime>endDatetime) { 
      
      return true;
    }   
    return false;
}
/*
==================================================================
getlength(String,String):得到字符串的长度
==================================================================
*/
function getlength(str) {
    var i, n = 0;
    for (i=0;i<str.length;i++)
      n += (str.charCodeAt(i)<256)?1:2;
    return n;
  }
/*
==================================================================
checkIdcard(String,String):身份证验证
==================================================================
*/
function checkIdcard(idcard){
  var Errors=new Array(
    "0",
    "1",
    "2",
    "3",
    "4"
  );
  var area= {11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江",31:"上海",32:"江苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆",51:"四川",52:"贵州",53:"云南",54:"西藏",61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳门",91:"国外"} 
  var idcard,Y,JYM;
  var S,M;
  var idcard_array = new Array();
  idcard_array = idcard.split("");
  //地区检验
  if(area[parseInt(idcard.substr(0,2))]==null) return Errors[4];
  //身份号码位数及格式检验
  switch(idcard.length){
    case 15:
      if ((parseInt(idcard.substr(6,2))+1900) % 4 == 0 || ((parseInt(idcard.substr(6,2))+1900) % 100 == 0 && (parseInt(idcard.substr(6,2))+1900) % 4 == 0 )){
        ereg=/^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}$/;//测试出生日期的合法性
      } else {
        ereg=/^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]{3}$/;//测试出生日期的合法性
      }
      if(ereg.test(idcard))
        return Errors[0];
      else
        return Errors[2];
      break;
    case 18:
      //18位身份号码检测
      //出生日期的合法性检查 
      //闰年月日:((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))
      //平年月日:((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))
      if ( parseInt(idcard.substr(6,4)) % 4 == 0 || (parseInt(idcard.substr(6,4)) % 100 == 0 && parseInt(idcard.substr(6,4))%4 == 0 )){
        ereg=/^[1-9][0-9]{5}19[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}[0-9Xx]$/;//闰年出生日期的合法性正则表达式
      } else {
        ereg=/^[1-9][0-9]{5}19[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]{3}[0-9Xx]$/;//平年出生日期的合法性正则表达式
      }
      if(ereg.test(idcard)){//测试出生日期的合法性
        //计算校验位
        S = (parseInt(idcard_array[0]) + parseInt(idcard_array[10])) * 7
        + (parseInt(idcard_array[1]) + parseInt(idcard_array[11])) * 9
        + (parseInt(idcard_array[2]) + parseInt(idcard_array[12])) * 10
        + (parseInt(idcard_array[3]) + parseInt(idcard_array[13])) * 5
        + (parseInt(idcard_array[4]) + parseInt(idcard_array[14])) * 8
        + (parseInt(idcard_array[5]) + parseInt(idcard_array[15])) * 4
        + (parseInt(idcard_array[6]) + parseInt(idcard_array[16])) * 2
        + parseInt(idcard_array[7]) * 1 
        + parseInt(idcard_array[8]) * 6
        + parseInt(idcard_array[9]) * 3 ;
        Y = S % 11;
        M = "F";
        JYM = "10X98765432";
        M = JYM.substr(Y,1);//判断校验位
        if(M == idcard_array[17])
          return Errors[0]; //检测ID的校验位
        else
          return Errors[3];
      } else
        return Errors[2];
      break;
    default:
      return Errors[1];
      break;
  }
}


/*
==================================================================
isChinese(String):验证是不是全中文
==================================================================
*/
function isChinese(str){
  var reg = /^[\u4e00-\u9fa5]/; 
  if(!reg.test(str)){
  	return false;
  }
  return true;
}

/*
	如果有非法字符返回true如:(!,@,#等);
*/
function checkUNameStr(str) {
   var reg = new RegExp(/[!\"\#\$\%\&\'\(\)\=\`\|\~\{\+\*\}\<\>\?\-\^\\\@\[\;\:\]\,\/]+/);
   if (reg.test(str)) {
      return true;
   }
   return false;
}


/*
==================================================================
check():下拉框默认选中的值
==================================================================
*/
function check() {
    var sel = document.getElementsByTagName('select');
    for (var i = 0; i < sel.length; i++) {
        for (var j = 0; j < sel[i].options.length; j++) {
            if (sel[i].param == sel[i].options[j].value) {
                sel[i].options[j].selected = true;
                break;
            }
        }
    }
}

//获得指定cookie的值
function getCookieValue(name){
	if(name!="" &&　name!=null){
		var strCookie = document.cookie;
		var arrCookie = strCookie.split(";");
		for(var i = 0;i<arrCookie.length;i++){
			var arr = arrCookie[i].split("=");
			arr[0]=LTrim(arr[0]);
			if(name==arr[0]){
				return arr[1];
			}
		}
		return null;
	}
}

//显示登录信息
function showInforYiwangLogin(){
	var cookie_value = getCookieValue("userId");
	var showStr = "";	
	if(cookie_value!="" && cookie_value!=null && cookie_value!=false){
		var userNameValue = getCookieValue("userName");
		userNameValue=decodeURI(decodeURI(userNameValue));
		showStr='<div class="blognav r a-r xj">欢迎你， <a href="http://blog.yiwang.cn/'+userNameValue+'" target="_blank">'+userNameValue+'</a> | <a href="javascript:logOutYiWangF();" class="nav_top1">退出</a></div>';
	}else{
		showStr='<div class="blognav r a-r xj"> <img src="../images/Lock.gif" /> <a href="http://sns.yiwang.cn/toLogin.do?returnUrl='+document.location+'" class="nav_top1">登录</a> | <a href="http://sns.yiwang.cn/registration.do?returnUrl='+document.location+'" class="nav_top1">注册</a></div>';
	}
	document.write(showStr);
}

//显示登录信息
function showInforBbsLogin(){
	var cookie_value = getCookieValue("userId");
	var showStr = "";	
	if(cookie_value!="" && cookie_value!=null && cookie_value!=false){
		var userNameValue = getCookieValue("userName");
		userNameValue=decodeURI(decodeURI(userNameValue));
		showStr='<div class="blognav r a-r xj">&nbsp;&nbsp;欢迎你， '+userNameValue+' | <a href="http://bbs.yiwang.cn/memcp.php" target="_blank">个人中心</a> | <a href="javascript:logOutYiWangF();" class="nav_top1">退出</a></div>';
	}else{
		showStr='<div class="blognav r a-r xj"> <img src="../images/Lock.gif" /> <a href="http://sns.yiwang.cn/toLogin.do?returnUrl='+document.location+'" class="nav_top1">登录</a> | <a href="http://sns.yiwang.cn/registration.do?returnUrl='+document.location+'" class="nav_top1">注册</a></div>';
	}
	document.write(showStr);
}

//首页退出
function logOutYiWangF(){
	var url = document.location;
	//document.location = "../user/YwUserAction!doUserBlogLogOut.action?returnUrl="+url;
	document.location = "http://sns.yiwang.cn/logout.do?returnUrl="+url;
}
//同一搜索
function searchCms(){
	var query = document.getElementById("query").value;
	if(query!="" && query!=null){
		query = encodeURI(encodeURI(query));
		document.location.href="http://www.yiwang.cn/showlist/_config/search.html?query="+query+"&tag=1";
	}else{
		alert("请输入搜索的内容!");
		return false;
	}
}


