/**
* 通用无刷新登录
* 说明：此程序用于简单部署到首页头部
* author: glzone
* date: 2008-12-19 am
*/

/**
* 以下变量需根据所应用的系统进行适当修改
*/
//域名及cookie名设置
var rootDomain = 'eol.cn';
var loginUrl = 'http://reg.'+rootDomain;
var centerUrl = 'http://i.'+rootDomain;
var signCookName = 'REG1101';
var errorCookName = 'LoginError';
//登录框html配置
var loginNo = '<form style="width:410px;float:left" method="get" name="loginForm" id="loginForm" action="'+loginUrl+'/interface/sublogin.php" target="loginifr"><span id="loginSpan" style="padding-top:10px;">&nbsp;&nbsp;用户名 <input type="text" name="email" class="txt" value="请输入邮箱" style="height:14px;width:90px;color:#CCCCCC;" size="8" onfocus="javascript:if(this.value === \'请输入邮箱\')this.value=\'\';this.style.color=\'#000000\';" onblur="javascript:if(this.value === \'\'){this.value=\'请输入邮箱\';this.style.color=\'#cccccc\';}"> 密码 <input type="password" name="passwd" size="8"  style="height:14px;width:60px"  class="txt"> <input type="hidden" name="subcode" value="1101"> <a href="javascript:void(0);" name="_login" id="_login" target="_self" onClick="document.loginForm.submit();Passport.doListen();return false;" >通行证登录</a></span> | <a href="'+loginUrl+'/register.php?from='+window.location.href+'" target="_blank"">注册</a> | <a href="http://reg.eol.cn/help/help.html" target="_blank">帮助</a></form>';
var loginYes = '，您已登录通行证！ 去&nbsp;<select name="subSys" onchange="javascript:window.location.href=this.value;"><option value="http://www.eol.cn">eol首页</option><option value="http://i.eol.cn">个人门户</option><option value="http://career.eol.cn">就业通</option><option value="http://gkcx.eol.cn">高考数据库</option><option value="http://souky.eol.cn">考研数据库</option></select> &nbsp;<a href="#" onclick="Passport.logout();return false;">退出</a> | <a href="http://reg.eol.cn/help/help.html" target="_blank">帮助</a>';
/*
var subSys = document.getElmentsByName('subSys')[0];
var pattern = new RegExp("^"+window.location.href);
if(typeof subSys != 'undefined')
	for(var i=0;i<subSys.options.length;i++) {
		if(subSys.options[i].match(pattern))
			subSys.options[i].selected = true;
	}
*/
/**
* 登录类
* 注：以下主程序代码，不能改动
*/
var Passport = {
	signCook: signCookName,
	errCook: errorCookName,
	timeHandle: null,
	infoMessage:null,
	msg: {'login':loginYes,'logout':loginNo,'error':''},
	tarFm:'',
	listenCookie: function() {
		var sCookie = Passport.getCookie(Passport.signCook);
		if(sCookie=='Y') {
			Passport.showMsg('login');
		}else if(Passport.getCookie('LoginError')) {
			if(!Passport.msg.error) Passport.msg['error'] = decodeURI(Passport.getCookie('LoginError')).replace(/\+/g,'');
			Passport.showMsg('error');
		}
	},
	doListen: function() {
		//Passport.tarFm = Passport.tarFm || '1';
		Passport.timeHandle = setInterval('Passport.listenCookie()',500);
	},
	showMsg: function(signal) {
		if(Passport.timeHandle) clearInterval(Passport.timeHandle);
		if(signal == 'login') $('loginDiv').innerHTML = '<form id="logoutform" target = "loginifr" method="post" action="'+loginUrl+'/interface/sublogout.php" class="loginForm">&nbsp;&nbsp;'+decodeURI(Passport.getCookie('eol_name'))+Passport.msg['login']+'</form>';
		else 
		{
			var str = '<font color=red>'+Passport.msg['error']+'</font>';
			$('loginDiv').innerHTML = Passport.msg['logout']+(signal == 'error'?str:'');
		}
	},
	isLogin: function() {
		Passport.showMsg(Passport.getCookie(Passport.signCook)=='Y'?'login':'logout');
	},
	logout: function() {
		Passport.delCookie(Passport.signCook,'/',rootDomain);
		Passport.delCookie(Passport.errCook,'/',rootDomain);
		$('logoutform').submit();
		Passport.showMsg('logout');
	},
	getCookie: function(cookie_name) {
		var aCookie = document.cookie.split(";");
		try {
			for(var i=0; i<aCookie.length; i++) {
				var aCrumb = aCookie[i].split("=");//alert(aCrumb[0]+' '+aCrumb[1]);
				aCrumb[0] = aCrumb[0].replace(/^\s+/,'').replace(/\s+$/,'');
				if (aCrumb[0] == cookie_name) return aCrumb[1].replace(/^\s+/,'').replace(/\s+$/,'');
			}
		}catch(e){ return false;}
		return false;
	},
	delCookie: function(name,path,domain) {
		document.cookie = name + "=" + ((path) ? "; path=" + path : "") + ((domain) ? "; domain=" + domain : "") + "; expires=Thu, 01-Jan-70 00:00:01 GMT";
	}
}
//简化调用函数
function $()
{
	var elements = new Array();
	for(var i=0;i<arguments.length;i++) {
		var element = arguments[i];
		if(typeof element == "string")
			element = document.getElementById(element) || document.getElementsByName(element)[0];
		if(arguments.length == 1)
			return element;
		elements.push(element);
	}
	return elements;
}

