/*
 * JS脚本验证
 * longware <longware@126.com>
 * 2004-12-01
 **/

//除左空格
function ltrim( s )
{
    return s.replace( /^\s*/, "" )
}

//除右空格
function rtrim( s )
{
    return s.replace( /\s*$/, "" );
}

//除空格
function trim( s )
{
    return rtrim(ltrim(s));
}

//textarea自适应文字行数
function goodTextArea(obj)
{
	if( obj.scrollHeight > obj.rows*15+2 )
		obj.style.posHeight = obj.scrollHeight
	else
		return false;
}

//Email检测
function isEmail(str)
{
	s = trim(str);
	if (s.charAt(0) == "." || 
		s.charAt(0) == "@" || 
		s.indexOf('@', 0) == -1 || 
		s.indexOf('.', 0) == -1 || 
		s.lastIndexOf("@") == s.length-1 || 
		s.lastIndexOf(".") == s.length-1)
	{
		alert("电子邮件格式不正确！");
		return false;
	}
	else
	{
		return true;
	}
}

//是否是中文
function IsChinese(obj)
{
	var temp = obj.value.replace(/[ -~]/g,'');

	if(obj.value != temp)
	{
		alert("姓名只接受中文字符！");
		obj.focus();
		return true;
	}
	else
	{
		return false;
	}
}

//是否为空
function IsNull(obj,msg)
{
	if(trim(obj.value).length == 0)
	{
		alert(msg);
		obj.focus();
		return true;
	}
	else
	{
		return false;
	}
}

//	检查文件名是不是在 fname 在 allowFiles 内，并且不在 denyFiles 里
//	allowFiles为空表示不在判断 fname 在 allowFiles 内 ，直接返回true
//	denyFiles为空表示不在判断 fname 在 denyFiles 内 ，直接返回true
function checkFileExtension(fname,allowFiles,denyFiles)
{
	var postid=fname.lastIndexOf(".");
	var after_name=fname.substr(postid).toLowerCase();

	//将字符穿转换成小写
	allowFiles=allowFiles.toLowerCase();
	denyFiles=denyFiles.toLowerCase();

	//判断字符串是不是在“定义” 范围内
	var allowFlag=1;
	if(allowFiles.length>2)
	{
		var allowFlag=0;
		ss=allowFiles.split(" ");
		for(j=0;j<ss.length;j++)
		{
			if(after_name==ss[j])
				var allowFlag=1;
		}
	}

	//判断字符串是不是在“禁止” 范围内
	denyFlag=1;
	if(denyFiles.length>2)
	{
		denyFlag=1;
		ss=denyFiles.split(" ");
		for(j=0;j<ss.length;j++)
		{
			if(after_name==ss[j])
				denyFlag=0;
		}
	}
	if((denyFlag)&&(allowFlag))
	{
		return 1;
	}
	else
	{
		if(!allowFlag)
		{
			alert("只能上传 "+allowFiles+" 类型的文件");
		}
		else if(!denyFlag)
		{
			alert("不允许上传 "+denyFiles+" 类型的文件");
		}
		return 0;
	}
}

//表单提交检测
function checkSendForm(obj)
{
	var numReg = /^\d*$/;

	//姓名
	if(IsNull(obj.vc_Uname,"姓名不能为空！")) return false;
	if(IsChinese(obj.vc_Uname)) return false;

	//性别
	//alert(obj.vc_Usex[0].checked+'/'+obj.vc_Usex[1].checked+'/'+sex);
	if( !(obj.vc_Usex[0].checked || obj.vc_Usex[1].checked) )
	{
		alert("性别不能为空！");
		return false;
	}

	//身份证
	//if(IsNull(obj.vc_Uidcard,"身份证号码不能为空！")) return false;

	var Len = obj.vc_Uidcard.value.length;
	if(Len>0)
	{
		if( ((Len != 15) && (Len != 18)) || (numReg.test(trim(obj.vc_Uidcard.value))==false) )
		{
			alert("身份证号码为15或18位数字字符！");
			return false;
		}
	}

	//电子邮件
	if(IsNull(obj.vc_Uemail,"电子邮件不能为空！")) return false;
	if(!isEmail(obj.vc_Uemail.value)) return false;

	//联系电话
	if(IsNull(obj.vc_Uphone,"联系电话不能为空！")) return false;
	var phoneLen = obj.vc_Uphone.value.length;
	if (phoneLen>0)
	{
		if( (phoneLen != 8) && (phoneLen != 11) || (numReg.test(obj.vc_Uphone.value)==false) )
		{
			alert("联系电话为8位或11位数字字符！");
			return false;
		}
	}

	//联系地址
	if(IsNull(obj.vc_Uaddr,"联系地址不能为空！")) return false;

	//邮政编码
	if(IsNull(obj.vc_Uzipcode,"邮政编码不能为空！")) return false;
	var zipLen = obj.vc_Uzipcode.value.length;
	if (zipLen>0)
	{
		if( (obj.vc_Uzipcode.value.length != 6) || (numReg.test(obj.vc_Uzipcode.value)==false) )
		{
			alert("邮政编码为6位数字字符！");
			return false;
		}
	}

	//信件标题
	if(IsNull(obj.vc_Subject,"信件标题不能为空！")) return false;
	if( trim(obj.vc_Subject.value).length < 2 || trim(obj.vc_Subject.value).length > 60 )
	{
		alert("信件标题为2～30字！");
		return false;
	}

	//信件内容
	if(IsNull(obj.cl_Content,"信件内容不能为空！")) return false;
	if( trim(obj.cl_Content.value).length < 20)
	{
		alert("信件内容至少20字！");
		return false;
	}

	var fname = obj.vc_AttachFile.value;
	var allowFiles = ".gif .jpg .doc";
	var denyFiles = "";
	if(fname.length>0 && !checkFileExtension(fname,allowFiles,denyFiles))
	{
		return false;
	}
}