/*
基于JQUERY及jqueryUI分三步
第一步：页面的某个ID触发登陆动作
第二步：登陆，验证登陆，并返回结果 1，成功->回调函数（第三步）2，失败->返回
第三步：登陆成功后的一系列动作
*/
document.write('<script src="/js_css/jquery/UI.blockUI.js" charset="utf-8"></script>');
var login = {};
    login.Domain = getDomain(); 
    login.content = '<div class="loginbg nlink" style="position:absolute;z-index:100" id="login_layer"> <img src="http://image.taskcn.com/images/share/icon/close.gif" title="关闭登录窗" class="fr loginhand" id="close" onclick="login.closeLogin();"/><img src="http://image.taskcn.com/images/share/icon/lock_lock.gif" class="loginlock" /><strong class="f14">该功能需要登录后才能使用</strong>';
    login.content += '<div id="loginalarm"><div id="alarm" style="height:22px;"></div></div>';
    login.content += '<ul>';
    login.content += '<li>用户名/邮箱/卡号：';
    login.content += '<input name="user_name" id="user_name" type="text" class="inputtext password logininput" style="font-family:\'宋体\';"/>';
    login.content += '</li>';
    login.content += '<li style="padding-left:60px;">密　码：';
    login.content += '<input name="password"  id="password" type="password" class="inputtext password logininput" maxlength="16" />';          
    login.content += '<a href="http://passport.'+login.Domain+'/login/getpassword" target="_blank" class="fverdana" style="text-decoration:underline;">忘记密码？</a></li>';
    login.content += '<li style="padding-left:60px;">验证码：';
    login.content += '<input name="testcode" id="testcode" type="text" class="inputtext tel1 logininput" maxlength="4" />';
    login.content += '<img src="http://api.'+login.Domain+'/authimg/index/?'+Math.random()+'" id="authimg_code" class="loginvalidate loginhand" style="cursor:pointer;" title="点击换一张图片" onclick="login.authimg();"/><a href="#" class="fverdana" onclick="login.authimg();">换张图片</a></li>';
    login.content += '<li style="text-align:center;padding:12px 20px 0 0;">';
    login.content += '<input name="submit" type="button" id="submit" value="立即登录" class="vbbt4" onclick="return login.submit();" />';
    login.content += '<strong><a href="http://passport.'+login.Domain+'/register" target="_blank">免费注册</a></strong></li>';
    login.content += '</ul>';
    login.content += '</div>';
    login.isLogin = 0; //初始化为非登陆状态
    login.pattern = '';
function getDomain()
 {
 	host = window.location.host;
	pos = host.indexOf('.');
	domain = host.substr(pos+1);
	//商业服务类似二级域名处理
	number = domain.indexOf('.');
	if(number == 4){
		pos = domain.indexOf('.');
		domain = domain.substr(pos+1);
 	}
 	
	return domain;
 }
 login.toLogin = function ()
 {    
 	login.currentTriggerId = this.id;
	login.check();
 	if(login.isLogin==0){
 		$(function() {	 
 		  $("body").append(login.content);
 		  var re_login = $('#login_layer')[0];
          $.blockUI(re_login);
 		});
 	} else {
 		   login.executeCallBack(this.id);	
 	}
 	return false;
 }
login.closeLogin = function()
{
		$.unblockUI();
}	    
login.validate = '';
 login.submit = function()
 {
 	userName = $("#user_name").val();
 	passWord = $("#password").val();
 	validate = $("#testcode").val();
 	if(userName.length==0)
 	{
 	  alert("用户名不能为空！");
 	  return false;
 	}
 	if(passWord.length==0)
 	{
 	  alert("密码不能为空！");
 	  return false;
 	}
 	if(validate.length==0)
 	{
 	  alert("验证码不能为空！");
 	  return false;
 	}
 	
 	login.validate = validate;
 	login.login(userName,passWord,validate);
 }
 login.login = function (userName,passWord,validate)
 {
 	$.getJSON('http://passport.'+login.Domain+'/ajaxlogin/index/u/'+userName+'/p/'+passWord+'/v/'+validate+'/?&jsonp=?',function(msg){
 		if(msg.login=='success'){
	        	login.closeLogin();
	        	login.executeUpdate();
	        	login.executeCallBack(this.id);
	        	login.executeReg();
	        	//获取站内信
				$.getJSON("http://my."+login.Domain+"/msg/getCount/rand/" + Math.random()+"/?&jsonp=?",function(data){
                           message = data;                         					
                           //获取认证信息
					       $.getJSON('http://passport.'+login.Domain+'/ajaxlogin/getaudite/user_name/'+userName+'/rand/' + Math.random()+'/?&jsonp=?',function(data){
  	                       if(data){
 	                             login.clublogin(userName,passWord);
  		                         mail = data.binding_email;
  		                         audited = data.audited;
  		                         enterprise = data.enterprise_audited;
  		                         login.reloadheader(userName,message,mail,audited,enterprise);  //回调函数更新头部信息
	  	                  }
						 });
                });
/*	        	$.getJSON('http://club.'+login.Domain+'/api/passport.php?action=login&auth='+msg.auth+'&verify='+msg.verify+'&jsonp=?',function(data){
	        	});	*/		
 		    } else {
 		    	$.each(msg,function(i,v){
 		    		 alert(v);
 		    	});
            }
     });	
 }
 login.clublogin = function(userName,passWord){
     $.getJSON('http://club.'+login.Domain+'/api.php?action=login&u='+userName+'&p='+passWord+'&jsonp=?',function(msg){
         
     })
 }
 login.fnList = new Array();
 login.registFn = function(fnName){
 	login.fnList.push(fnName);
 }
 login.executeUpdate = function(){
 	if(login.fnList.length > 0){
 		for(var i=0; i<login.fnList.length; i++){
 			login.fnList[i]();
 		}
 	}
 }
 //注册回调函数
 login.callBackFnList = new Array();
 login.registerTrigger = function (id, fnName)
 {
 	$('#'+id).click(login.toLogin);
 	login.callBackFnList.push(new Array(id,fnName));
 } 
 login.currentTriggerId = '';
 login.executeCallBack = function(id){
 	if(login.callBackFnList.length>0)
 	{
 		for(var i=0;i<login.callBackFnList.length;i++)
 		{
 			if(login.callBackFnList[i][0] == login.currentTriggerId){
 				login.callBackFnList[i][1]();
 				break;
 			}
 		}
 	}
 }
//判断是否登陆
login.check = function(){
	//loginCookie = login.getCookie('login');
	
	cookieId = login.getCookie('cookie_id');
	if(cookieId!=null)
	{
		login.isLogin = 1;
	} else {
		login.isLogin = 0;
	}
}
//获取Cookie值
login.getCookie = function(cookieName) {
	  var cookieString = document.cookie;
	  var start = cookieString.indexOf(cookieName + '=');
	  if (start == -1)
	    return null;
	  start += cookieName.length + 1;
	  var end = cookieString.indexOf(';', start);
	  if (end == -1) return unescape(cookieString.substring(start));
	  return unescape(cookieString.substring(start, end));
}
//匹配ID
login.callBackReg = new Array();//正则匹配回调函数
login.regID = function(patt,fnName)
{
   login.pattern = new RegExp(patt);
   login.callBackReg.push(new Array(patt,fnName));
}
login.executeReg = function (){
	 if(login.callBackFnList.length>0)
	 {
 		for(var i=0;i<login.callBackReg.length;i++)
 		{
 			if(login.callBackReg[i][0].test(login.currentTriggerId))
 			{
 				login.callBackReg[i][1]();
 				break;
 			}
 		}
 	}
}
login.authimg = function(){
	$('#authimg_code').attr('src','http://api.'+login.Domain+'/authimg/index/?'+Math.random());
	return false;
}
login.reloadheader = function (username,message,mail,truename,corporation){
	var headerstring = "<ul><li>您好，"+username+"！</li><li style=\"margin-left:0;\"><a href='http://passport."+login.Domain+"/logout'>[退出]</a></li>";
	if(message){
		headerstring = headerstring + "<li><a href='http://my."+login.Domain+"/msg/receive' id=\"headermsg\">站内信[<span style=\"color:#F00;\">"+message+"</span>]</a></li>";
	}else{
		headerstring = headerstring + "<li><a href='http://my."+login.Domain+"/msg/receive'>站内信</a></li>";
	}
	headerstring = headerstring +"<li><a href='http://my."+login.Domain+"/favorite/talents'>收藏夹</a></li><li><a href='http://pay."+login.Domain+"' id=\"headerpay\">任务宝</a></li><li>认证：</li>"
	if(mail){
		headerstring = headerstring + "<li style=\"margin-left:3px;\"><img src=\"http://image.taskcn.com/images/share/icon/mail.gif\" title=\"您已通过邮箱认证\" /></li>";
	}else{
		headerstring = headerstring + "<li style=\"margin-left:3px;\"><a href='http://my."+login.Domain+"/certification'><img src=\"http://image.taskcn.com/images/share/icon/unmail.gif\" title=\"您还未通过邮箱认证&#13;点击本图标前往邮箱认证页面\" /></a></li>";
	}
	if(truename){
		headerstring = headerstring + "<li style=\"margin-left:6px;\"><img src=\"http://image.taskcn.com/images/share/icon/truename.gif\" title=\"您已通过实名认证\" /></li>";
	}else{
		headerstring = headerstring + "<li style=\"margin-left:6px;\"><a href='http://my."+login.Domain+"/audite'><img src=\"http://image.taskcn.com/images/share/icon/untruename.gif\" title=\"您还未通过实名认证&#13;点击本图标前往实名认证页面\" /></a></li>";
	}
	if(corporation){
		headerstring = headerstring + "<li style=\"margin-left:6px;\"><img src=\"http://image.taskcn.com/images/share/icon/corporation.gif\" title=\"您已通过企业认证\" /></li></ul>";
	}else{
		headerstring = headerstring + "</ul>";
	}
	$("#headerlogin").html(headerstring);
	if($(".inputvalidate")[0]){
		$(".inputvalidate").html("验证码：<img src='http://passport."+login.Domain+"/authimg' style=\"position:relative;top:2px;\" />&nbsp;<input name=\"\" type=\"text\" class=\"inputtext tel1\" style=\"position:relative;top:-3px;\" maxlength=\"4\" />");
	}
	return false;
}
document.onkeydown = mm;
function mm(){     
    var event = arguments[0]||window.event;     
    var currentKey = event.charCode||event.keyCode;     
    if(currentKey==13)
        {
            login.submit();   
            return false;                               
        }     
}
 function ResumeError() {
   return true;
 }
 window.onerror = ResumeError;


