/**
 * Author:		ideadawn
 * Contact:		ideadawn@126.com
 * Copyright:	uYea Technology.
 * Date:		2009.09
 */

/* 基本功能构造开始 */
// 基类
var ideadawn = function(id) {
	return document.getElementById(id);
}
// 扩展新方法
ideadawn.extend = function(obj)
{
	if( typeof obj == 'object' ) {
		for( var key in obj )
		{
			ideadawn[key] = obj[key];
		}
	}
	return null;
}
// 构造基础方法
ideadawn.extend({
	// 基准URL地址
	surl: 'http://192.168.1.15/high/',
	browser:
	{
		msie: null,
		firefox: null,
		opera: null,
		safari: null,
		chrome: null,
		check: function()
		{
			var ua = window.navigator.userAgent;
			if( ua.indexOf('MSIE') != -1 ) {
				ideadawn.browser.msie = ua.match(/MSIE\s*([\d\.]+)/)[1];
			} else if( document.getBoxObjectFor ) {
				ideadawn.browser.firefox = ua.match(/Firefox\/([\d\.]+)/)[1];
			} else if( window.opera ) {
				ideadawn.browser.opera = ua.match(/Opera[^\d]+([\d\.]+)/)[1];
			} else if( ua.indexOf('Safari') != -1 && ua.indexOf('Version') != -1 ) {
				ideadawn.browser.safari = ua.match(/Version\/([\d\.]+)/)[1];
			} else if( ua.indexOf('Chrome') != -1 ) {
				ideadawn.browser.chrome = ua.match(/Chrome\/([\d\.]+)/)[1];
			}
			return null;
		}
	},
	
	// 执行一组函数
	executeFuncList: function(arr)
	{
		if( arr && arr.length ) {
			for(var i=0; i<arr.length; i++)
			{
				arr[i]();
			}
			return true;
		} else {
			return false;
		}
	},
	
	funcArrayExecutedOnLoad: [],
	funcArrayExecutedOnUnload : [],
	addLoadFunc: function(func)
	{
		if( typeof func == 'function' ) {
			ideadawn.funcArrayExecutedOnLoad[ideadawn.funcArrayExecutedOnLoad.length] = func;
		} else if( typeof func == 'object' ) {
			for(var i in func)
			{
				ideadawn.addLoadFunc(i);
			}
		}
		return null;
	},
	addUnloadFunc: function(func)
	{
		if( typeof func == 'function' ) {
			ideadawn.funcArrayExecutedOnUnload[ideadawn.funcArrayExecutedOnUnload.length] = func;
		} else if( typeof func == 'object' ) {
			for(var i in func)
			{
				ideadawn.addUnloadFunc(i);
			}
		}
		return null;
	},
	onLoad: function(func)
	{
		if( document.addEventListener ) {
			document.addEventListener("DOMContentLoaded", function() {
				document.removeEventListener("DOMContentLoaded", arguments.callee, false);
				if( func ) { func(); }
				if( funcArrayExecutedOnLoad ) {
					ideadawn.executeFuncList(funcArrayExecutedOnLoad);
				}
				return null;
			}, false);
		} else if( document.attachEvent ) {
			if( document.documentElement.doScroll && window.self == window.top ) {
				(function() {
					try {
						document.documentElement.doScroll("left");
					}catch(ex) {
						setTimeout(arguments.callee, 20);
						return null;
					}
					if( func ) { func(); }
					if( funcArrayExecutedOnLoad ) {
						ideadawn.executeFuncList(funcArrayExecutedOnLoad);
					}
					return null;
				})();
			} else {
				document.attachEvent("onreadystatechange", function() {
					if( document.readyState == "complete" ) {
						document.detachEvent("onreadystatechange", arguments.callee);
						if( func ) { func(); }
						if( funcArrayExecutedOnLoad ) {
							ideadawn.executeFuncList(funcArrayExecutedOnLoad);
						}
					}
					return null;
				});
			}
		}
		return null;
	},
	onUnload: function(func)
	{
		window.onunload = function()
		{
			if( func ) { func(); }
			if( funcArrayExecutedOnUnload ) {
				ideadawn.executeFuncList(funcArrayExecutedOnUnload);
			}
			window.dhm = window.ideadawn = null;
		}
		return null;
	},
	
	remove: function(arr, i)
	{
		for(var j=i; j<arr.length; j++)
		{
			arr[j] = arr[j+1];
		}
		arr.pop();
		return arr;
	},
	redirect: function(url, blank)
	{
		if( url != undefined && url != '' ) {
			if( ! /http:\/\//.test(url) ) {
				url = ideadawn.surl + url;
			}
			if( blank != undefined ) {
				window.open(url, 'newwindow');
			} else {
				window.location.href = url;
			}
		}
		return null;
	},
	
	// 获取一类元素
	tag: function(container, tag_str)
	{
		return container.getElementsByTagName(tag_str);
	},
	// 去掉字符串两端的空格
	trim: function(str)
	{
		return str.replace(/^\s*|\s*$/, '');
	},
	// 判断是否为空
	empty: function(str)
	{
		if( ! str || str == '' || str == 0 ) {
			return true;
		} else {
			return false;
		}
	},
	
	// 克隆对象
	clone: function(obj)
	{
		if( typeof obj != 'object' ) {
			return obj;
		}
		var objFunc = function(){};
		objFunc.prototype = obj;
		return new objFunc();
	},
	
	// 事件绑定
	bind: function(obj, estr, f)
	{
		if( ideadawn.empty(estr) && ideadawn.empty(f) ) {
			for(var i=0; i<obj.length; i++)
			{
				ideadawn.bind(ideadawn(obj[i][0]), obj[i][1], obj[i][2]);
			}
		} else {
			if( obj.addEventListener ) {
				obj.addEventListener(estr, f, false);
			} else if( obj.attachEvent ) {
				obj.attachEvent('on'+estr, f);
			} else {
				obj['on'+estr] = f;
			}
		}
		return null;
	},
	unbind: function(obj, estr, f)
	{
		if( ideadawn.empty(estr) && ideadawn.empty(f) ) {
			for(var i=0; i<obj.length; i++)
			{
				ideadawn.unbind(dhm(obj[i][0]), obj[i][1], obj[i][2]);
			}
		} else {
			if( obj.addEventListener ) {
				obj.removeEventListener(estr, f, false);
			} else if( obj.attachEvent ) {
				obj.detachEvent('on'+estr, f);
			} else {
				obj['on'+estr] = null;
			}
		}
		return null;
	},
	
	// CSS
	css: function(obj, key, value)
	{
		if( value !== undefined ) {
			obj.style[key] = value;
			return null;
		} else {
			if( obj.style[key] ) {
			   return obj.style[key];
			}
			if( obj.currentStyle ) {
			   return obj.currentStyle[key];
			}
			if( document.defaultView && document.defaultView.getComputedStyle) {
			   return document.defaultView.getComputedStyle(obj, null).getPropertyValue(key);
			}
		}
	},
	
	// 显示与隐藏
	show: function(obj, isBlock)
	{
		if( isBlock == true ) {
			ideadawn.css(obj, 'display', 'block');
		} else {
			ideadawn.css(obj, 'display', '');
		}
		return null;
	},
	hide: function(obj)
	{
		return ideadawn.css(obj, 'display', 'none');
	},
	toggle: function(obj, isBlock)
	{
		if( obj.style.display == 'none' ) {
			return ideadawn.show(obj, isBlock);
		} else {
			return ideadawn.hide(obj);
		}
	},
	
	// 创建新元素
	textNode: function(str)
	{
		return document.createTextNode(str);
	},
	newElem: function(str)
	{
		return document.createElement(str);
	},
	
	// 获取XML字符串数据
	loadXMLString: function(xml)
	{
		if( window.DOMParser ) {
			var dp = new DOMParser();
			var doc = dp.parseFromString(xml, 'text/xml');
		}
		if( window.ActiveXObject ) {
			var doc = new ActiveXObject('Microsoft.XMLDOM');
			doc.async = false;
			doc.loadXML(xml);
		}
		if( doc ) {
			return doc.documentElement;
		}
		return false;
	}
});

// 初始化处理
ideadawn.browser.check();
ideadawn.onLoad();
ideadawn.onUnload();
// 快捷方式
var dhm = ideadawn;

// 载入ajax对象
ideadawn.extend({
	ajax: {
		// XMLHTTPRequest实例
		instance: null,
		// 超时
		timeout: 10,
		// 时间控制器
		timer: null,
		// 发生错误时的回调函数
		error: null,
		// 成功时的回调函数
		success: null,
		// 请求地址
		url: ideadawn.surl,
		// 请求方法
		method: 'POST',
		// 字符编码
		charset: 'UTF-8',
		// 预处理队列
		pretreat: 'ideadawn.ajaxHeader("Content-Type", "application/x-www-form-urlencoded; charset='+ ideadawn.ajax.charset +'")'
	},
	// 初始化ajax
	ajaxInit: function()
	{
		if( ideadawn.ajax.instance != null ) {
			return true;
		}
		if( ! window.XMLHttpRequest ) {
			XMLHttpRequest = function()
			{
				return new ActiveXObject('Microsoft.XMLHTTP');
			};
		}
		ideadawn.ajax.instance = new XMLHttpRequest();
		return true;
	},
	// 预发送数据(http头)
	ajaxHeader: function(key, value)
	{
		if( ideadawn.empty(key) || ideadawn.empty(value) ) {
			return false;
		}
		ideadawn.ajax.instance.setRequestHeader(key, value);
		return null;
	},
	// 预执行函数
	ajaxPretreat: function(obj)
	{
		if( ideadawn.empty(obj) ) {
			return false;
		}
		if( typeof obj == 'string' ) {
			if( /\(/.test(obj) ) {
				eval(obj);
			} else {
				eval(obj)();
			}
		}
		if( typeof obj == 'obj' ) {
			for( var key in obj ) {
				if( typeof obj[key] == 'string' ) {
					ideadawn.ajaxPretreat(key);
				}
				if( typeof obj[key] == 'object' ) {
					ideadawn.ajaxPretreat(obj[key]);
				}
			}
		}
		return null;
	},
	// 发送数据
	ajaxSend: function(url, method, data, success, error)
	{
		if( ! ideadawn.ajax.instance ) {
			ideadawn.ajaxInit();
		}
		var tmp_ajax = ideadawn.clone(ideadawn.ajax);
		
		if( url && url.toString().length > 1 ) {
			url = tmp_ajax.url + url;
		} else {
			url = tmp_ajax.url;
		}
		
		method = method.toUpperCase();
		if( method != 'POST' || method != 'GET' ) {
			method = tmp_ajax.method.toUpperCase();
		}
		
		if( typeof data == 'object' ) {
			var tmp_data = '', comma = '';
			for( var key in data )
			{
				tmp_data += comma + key + '=' + data[key];
				comma = '&';
			}
		} else {
			var tmp_data = data;
		}
		data = null;
		
		tmp_ajax.instance.open(method, url, true);
		var tmp_error;
		if( error ) {
			tmp_error = error;
		} else if( tmp_ajax.error ) {
			tmp_error = tmp_ajax.error;
		} else {
			tmp_error = null;
		}
		tmp_ajax.timer = window.setTimeout(
			function(){
				ideadawn.ajaxError(tmp_ajax.instance, tmp_error);
			}, 
			tmp_ajax.timeout * 1000
		);
		
		tmp_ajax.instance.onreadystatechange = function(){
			if( tmp_ajax.instance.readyState == 4 ) {
				if( tmp_ajax.instance.status == 200 ) {
					window.clearTimeout(tmp_ajax.timer);
					tmp_ajax.timer = null;
					if( ideadawn.empty(success) ) {
						success = tmp_ajax.success;
					}
					ideadawn.ajaxComplete(decodeURI(ideadawn.trim(tmp_ajax.instance.responseText)), success);
				}
			}
		};
		ideadawn.ajaxPretreat(ideadawn.ajax.pretreat);
		ideadawn.ajax.instance.send(tmp_data);
		return null;
	},
	// POST方法
	post: function(url, data, success, error)
	{
		return ideadawn.ajaxSend(url, 'POST', data, success, error);
	},
	// GET方法
	get: function(url, data, success, error)
	{
		return ideadawn.ajaxSend(url, 'GET', data, success, error);
	},
	// 默认错误处理函数
	ajaxError: function(xhr, error)
	{
		xhr.abort();
		xhr = null;
		if( error ) {
			eval(error)();
		}
		return null;
	},
	// 默认成功处理函数
	ajaxComplete: function(text, success)
	{
		if( success ) {
			eval(success)(text);
		}
		return null;
	}
});
/* 基本功能构造完毕 */

/* 主页功能实现 */
dhm.extend({
	showCode: function(iid, sid)
	{
		if( /\#/.test(sid) ) {
			var icurl = dhm.surl + 'index.php?c=sign&a=pocket&extra=';
		} else {
			dhm.show(dhm(sid), true);
			var icurl = dhm.surl + 'index.php?c=sign&a=code&extra=';
		}
		var dt = new Date();
		var now = parseInt(dt.getTime());
		var extra = (parseInt((now * 19)/119)).toString().substr(4);
		icurl += extra;
		dhm(iid).src = icurl;
		
		return null;
	},
	
	openLinks: function()
	{
		var url = dhm('mediaLinks').value;
		ideadawn.redirect(url, true);
		return null;
	}
});
/* 主页功能结束 */

/* 注册功能实现 */
dhm.extend({
	// 注册进度记录对象
	register: {
		username: '',
		old_un: '',
		password: '',
		repwd: '',
		email: '',
		imgcode: ''
	},
	// 注册项目合法性判断
	regUnCheck: function()
	{
		var u = dhm('username').value;
		u = dhm.trim(u);
		if( u == dhm.register.old_un ) {
			return null;
		} else {
			dhm.register.old_un = u;
		}
		dhm.register.username = '';
		if( u == '' ) {
			return false;
		} else if( u.length < 6 || u.length > 16 ) {
			alert('请确保您的学号为6-16位长度的字符串！');
		} else if( /^[A-Za-z]{1,1}[A-Za-z0-9]+$/.test(u) ) {
			dhm.ajax.error = 'dhm.unCheckError';
			dhm.ajax.success = 'dhm.unCheckOK';
			var data = 'c=register&a=check&username='+ u;
			dhm.post('', data);
		} else {
			alert('学号格式错误！');
		}
		return null;
	},
	regPwdCheck: function()
	{
		dhm.register.password = '';
		var p = dhm('password').value;
		p = dhm.trim(p);
		
		if( p == '' ) {
			return false;
		} else if( p.length >= 6 && p.length <= 16 && !(/[^A-Za-z0-9~`!@#\$%\^&\*\(\)\-_=\+\\\|\{\[\}\]'";:,\.<>\/\?]+/.test(p)) ) {
			dhm.register.password = 'ok';
		} else {
			alert('密码格式错误！');
		}
		return null;
	},
	regRepwdCheck: function()
	{
		dhm.register.repwd = '';
		if( dhm.register.password != 'ok' ) {
			return false;
		}
		var p = dhm('password').value;
		var rp = dhm('repwd').value;
		p = dhm.trim(p);
		rp = dhm.trim(rp);
		if( rp == p ) {
			dhm.register.repwd = 'ok';
		} else if( rp == '' ) {
			alert('确认密码不能为空！');
		} else {
			alert('确认密码与密码不符！');
		}
		return null;
	},
	regEmailCheck: function()
	{
		dhm.register.email = '';
		var em = dhm('email').value;
		em = dhm.trim(em);
		if( em == '' ) {
			return false;
		}
		if( /[^A-Za-z0-9\s\.@\-_]+/.test(em) ) {
			alert('邮件地址中含有非法字符！');
			return false;
		}
		if( /^[A-Za-z0-9\s\.@\-_]+@[A-Za-z0-9\-_]+\.[a-z]+$|^[A-Za-z0-9\s\.@\-_]+@[A-Za-z0-9\-_]+\.[a-z]+\.[a-z]+$/.test(em) ) {
			dhm.register.email = 'ok';
		} else {
			alert('邮件地址格式错误！');
		}
		return null;
	},
	regCodeCheck: function()
	{
		dhm.register.imgcode = '';
		var c = dhm('imgcode').value;
		c = dhm.trim(c);
		if( c != '' ) {
			dhm.register.imgcode = 'ok';
		}
		return null;
	},
	// 通行证检测成功时的回调函数
	unCheckOK: function(msg)
	{
		if( msg && (/SUCCESS/.test(msg)) ) {
			dhm.register.username = 'ok';
		} else {
			dhm.register.username = '';
			alert('您的学号已经被人抢注，更换一个吧！');
		}
		return null;
	},
	// 通行证检测失败时的回调函数
	unCheckError: function()
	{
		dhm.register.username = 'ok';
		return null;
	},
	// 提交注册事件
	checkAndSubmit: function()
	{
		for( var o in dhm.register )
		{
			if( /old_/.test(o.toString()) ) {
				continue;
			}
			if( dhm.register[o] != 'ok' ) {
				alert('请正确填写您的注册信息，然后再提交！');
				dhm(o.toString()).focus();
				return false;
			}
		}
		document.regForm.submit();
	}
});
/* 注册功能结束 */

/* 帮助中心(新手指南)开始 */
dhm.extend({
	c_hc_id: null,
	c_h_id: null,
	helpList: null,
	helpItem: null,
	expandHelp: function(c_id, obj)
	{
		if( obj ) {
			obj.blur();
		}
		var hi = dhm('hc_items_'+ c_id);
		if( hi.style.display == 'block' ) {
			hi.style.display = 'none';
			dhm('hc_img_'+ c_id).src = dhm.surl + 'frontend/images/unexpand.gif';
			return false;
		} else {
			hi.style.display = 'block';
			dhm('hc_img_'+ c_id).src = dhm.surl + 'frontend/images/expanded.gif';
		}
		return true;
	},
	listHelp: function(hc_id, obj)
	{
		if( obj ) {
			obj.blur();
		}
		hc_id = parseInt(hc_id);
		if( isNaN(hc_id) || hc_id <= 0 ) {
			return false;
		}
		
		if( dhm.helpList && dhm.helpList['hc_'+ hc_id] ) {
			dhm('itemList').innerHTML = dhm.helpList['hc_'+ hc_id];
			if( dhm.c_hc_id && dhm('hc_dd_'+ dhm.c_hc_id) ) {
				dhm('hc_dd_'+ dhm.c_hc_id).className = '';
			}
			dhm('hc_dd_'+ hc_id).className = 'hc_now';
			dhm.c_hc_id = hc_id;
			return true;
		}
		
		dhm.onHelpLoading('itemList');
		dhm.ajax.success = 'dhm.listHelpSuccess';
		var data = 'c=faq&a=items&hc_id='+hc_id;
		dhm.post(null,data);
		return null;
	},
	listHelpSuccess: function(msg)
	{
		msg = dhm.trim(msg);
		if( msg == '' ) {
			dhm('itemList').innerHTML = '暂无内容';
			return false;
		}
		var arr = eval(msg);
		if( ! arr.length ) {
			return false;
		}
		var hc_id = arr.pop();
		
		if( dhm.c_hc_id && dhm('hc_dd_'+ dhm.c_hc_id) ) {
			dhm('hc_dd_'+ dhm.c_hc_id).className = '';
		}
		dhm('hc_dd_'+ hc_id).className = 'hc_now';
		
		var html = '<ul>';
		for(var i=0; i<arr.length; i++)
		{
			html += '<li id="h_li_'+ arr[i].h_id +'" class=""><a href="javascript:;" onclick="javascript:dhm.helpInfo('+ arr[i].h_id +', this);">';
			html += '<img src="'+ dhm.surl +'frontend/images/item.gif" border="0" />&nbsp;<span>'+ arr[i].title +'</span></a></li>';
		}
		html += '</ul>';
		dhm('itemList').innerHTML = html;
		
		if( ! dhm.helpList ) {
			dhm.helpList = new Object();
		}
		dhm.helpList['hc_'+ hc_id] = html;
		dhm.c_hc_id = hc_id;
		return true;
	},
	helpInfo: function(help_id, obj)
	{
		if( obj ) {
			obj.blur();
		}
		help_id = parseInt(help_id);
		if( isNaN(help_id) || help_id <= 0 ) {
			return false;
		}
		
		if( dhm.helpItem && dhm.helpItem['help_'+ help_id] ) {
			dhm('itemInfo').innerHTML = dhm.helpItem['help_'+ help_id];
			if( dhm.c_h_id && dhm('h_li_'+ dhm.c_h_id) ) {
				dhm('h_li_'+ dhm.c_h_id).className = '';
			}
			dhm('h_li_'+ help_id).className = 'h_now';
			dhm.c_h_id = help_id;
			return true;
		}
		
		dhm.onHelpLoading('itemInfo');
		dhm.ajax.success = 'dhm.helpInfoSuccess';
		var data = 'c=faq&a=iteminfo&help_id='+help_id;
		dhm.post(null,data);
		return null;
	},
	helpInfoSuccess: function(msg)
	{
		msg = dhm.trim(msg);
		if( msg == '' ) {
			dhm('itemInfo').innerHTML = '暂无内容';
			return false;
		}
		
		var item = eval(msg);
		dhm('itemInfo').innerHTML = item[1];
		if( dhm.c_h_id && dhm('h_li_'+ dhm.c_h_id) ) {
			dhm('h_li_'+ dhm.c_h_id).className = '';
		}
		dhm('h_li_'+ item[0]).className = 'h_now';
		if( ! dhm.helpItem ) {
			dhm.helpItem = new Object();
		}
		dhm.helpItem['help_'+ item[0]] = item[1];
		dhm.c_h_id = item[0];
		return null;
	},
	/*initHelp: function()
	{
		var h = window.location.hash;
		h = (dhm.trim(h)).replace(/\#/, '');
	},*/
	onHelpLoading: function(id)
	{
		var img = '<img src="' + dhm.surl + 'frontend/images/loader.gif" />';
		var txt = '&nbsp;请稍候...';
		dhm(id).innerHTML = img + txt;
		return null;
	}
});
/* 帮助中心(新手指南)结束 */

/* 通行证管理功能开始 */
dhm.extend({
	checkUserLogin: function()
	{
		var un = dhm('username').value;
		var pw = dhm('password').value;
		un = dhm.trim(un);
		pw = dhm.trim(pw);
		if( un == '' ) {
			alert('请填写您的学号信息！');
			dhm('username').focus();
			return false;
		}
		if( pw == '' ) {
			alert('请填写您的密码！');
			dhm('password').focus();
			return false;
		}
		if( un.length < 6 || un.length > 16 ) {
			alert('学号应该是一个长度为6到16位的有效字符串！');
			dhm('username').focus();
			return false;
		}
		if( /[^a-zA-Z0-9]+/.test(un) ) {
			alert('学号是由字母和数字组成的！');
			dhm('username').focus();
			return false;
		}
		if( pw.length < 6 || pw.length > 16 ) {
			alert('密码应该是一个长度为6到16位的有效字符串！');
			dhm('password').focus();
			return false;
		}
		
		document.loginForm.submit();
	},
	checkActiveCode: function()
	{
		var ac = dhm('activecode').value;
		var ic = dhm('imgcode').value;
		ac = dhm.trim(ac);
		ic = dhm.trim(ic);
		if( ac == '' ) {
			alert('请填写您的激活码！');
			dhm('activecode').focus();
			return false;
		}
		if( ic == '' ) {
			alert('请填写验证码！');
			dhm('imgcode').focus();
			return false;
		}
		if( /[^a-zA-Z0-9]+/.test(ac) || ac.length != 15 ) {
			alert('激活码格式错误！');
			dhm('activecode').value = '';
			dhm('activecode').focus();
			return false;
		}
		if( /[^0-9]+/.test(ic) || ic.length != 4 ) {
			alert('验证码格式错误！');
			dhm('imgcode').value = '';
			dhm('imgcode').focus();
			return false;
		}
		
		document.enableForm.submit();
	},
	checkPasswordModify: function()
	{
		var ow = dhm('oldpwd').value;
		var nw = dhm('newpwd').value;
		var rw = dhm('repwd').value;
		ow = dhm.trim(ow);
		nw = dhm.trim(nw);
		rw = dhm.trim(rw);
		var reg = /[^A-Za-z0-9~`!@#\$%\^&\*\(\)\-_=\+\\\|\{\[\}\]'";:,\.<>\/\?]+/;
		if( ow == '' || nw == '' || rw == '' ) {
			alert('请填写您的密码信息！');
			return false;
		}
		if( ow.length < 6 || ow.length > 16 || reg.test(ow) ) {
			alert('旧密码格式错误！密码由6到16位字母、数字或特殊字符组成！');
			dhm('oldpwd').focus();
			return false;
		}
		if( nw.length < 6 || nw.length > 16 || reg.test(nw) ) {
			alert('新密码格式错误！密码由6到16位字母、数字或特殊字符组成！');
			dhm('newpwd').focus();
			return false;
		}
		if( rw.length < 6 || rw.length > 16 || reg.test(rw) ) {
			alert('确认密码格式错误！密码由6到16位字母、数字或特殊字符组成！');
			dhm('repwd').focus();
			return false;
		}
		if( nw != rw ) {
			alert('确认密码与新密码不符！');
			return false;
		}
		document.pwdForm.submit();
	},
	checkInforModify: function()
	{
		document.modifyForm.submit();
	},
	checkEmailModify: function()
	{
		var freg = /[^A-Za-z0-9\s\.@\-_]+/;
		var rreg = /^[A-Za-z0-9\s\.@\-_]+@[A-Za-z0-9\-_]+\.[a-z]+$|^[A-Za-z0-9\s\.@\-_]+@[A-Za-z0-9\-_]+\.[a-z]+\.[a-z]+$/;
		var ev = dhm('email').value;
		ev = dhm.trim(ev);
		if( ev == '' || freg.test(ev) ) {
			alert('邮箱地址格式不正确！');
			return false;
		}
		if( rreg.test(ev) ) {
			document.emailForm.submit();
		} else {
			alert('请输入正确的邮箱地址！');
			return false;
		}
	},
	checkForgetPassword: function()
	{
		var u = dhm('username').value;
		var e = dhm('email').value;
		u = dhm.trim(u);
		e = dhm.trim(e);
		if( u == '' || e == '' ) {
			alert('请输入您的学号和邮件地址！');
			return false;
		}
		
		document.forgetForm.submit();
	},
	checkFindPassword: function()
	{
		var p = dhm('password').value;
		p = dhm.trim(p);
		var reg = /[^A-Za-z0-9~`!@#\$%\^&\*\(\)\-_=\+\\\|\{\[\}\]'";:,\.<>\/\?]+/;
		if( p == '' ) {
			alert('请填写您的密码信息！');
			return false;
		}
		if( p.length < 6 || p.length > 16 || reg.test(p) ) {
			alert('密码格式错误！密码由6到16位字母、数字或特殊字符组成！');
			dhm('password').focus();
			return false;
		}
		
		document.findForm.submit();
	}
});
/* 通行证管理功能结束 */