var Baike = {
	loginStateUrl:'/LoginState.htm',
	loginStateBarUrl:'/LoginStateBar.htm',
	popLoginUrl:'/PopLogin.e?sp=16',
	loginOutUrl:'/LLogout.htm',
	loginWindowClose:null
};
Baike.Login = {
    loginDialog:null,
    after:function(){
    	Baike.Login.changeLoginStateBar();
    },
	
    changeLoginStateBar:function(jsonData){
    	Zhishi.Ajax.sendRequest('GET', Baike.loginStateBarUrl+'?rdm'+Math.random(), {onSuccess:function(data){
    		get('loginNav').innerHTML = data;
    	}});
    },
    loginComponentClick: function(before,after){
    	if(after) Baike.Login.after = after;
        if((before && before()) || before==null)
        	Baike.Login.checkLogin();
        else return;
    },
    openLoginDialog: function(){
    	Baike.popLoginUrl = Zhishi.ptLoginUrl + Zhishi.popIframeUrlFix + encodeURIComponent('http://' + window.location.host + Baike.popLoginUrl);
        var dialogHeight = 290;
        if (Zhishi.Browser.isFirefox)  dialogHeight = 280;
        else if (Zhishi.Browser.isOpera) dialogHeight = 275;
    	Baike.Login.loginDialog = new Zhishi.Dialog('<img width="20" height="30" style="vertical-align: middle;" src="http://cache.soso.com/wenwen/i/loginIcon_2.gif"/>\u7528\u6237\u767b\u5f55',373,dialogHeight,true,Baike.popLoginUrl);
    	Baike.Login.loginDialog.onClose=function(){Baike.loginWindowClose=window.onbeforeunload; window.onbeforeunload=null; return true;};
    	Baike.Login.loginDialog.afterClose=function(){setTimeout(function(){ window.onbeforeunload = Baike.loginWindowClose;},100);};
        Baike.Login.loginDialog.show();
    },
    checkLogin:function(){
    	Zhishi.Ajax.sendRequest('GET', Baike.loginStateUrl,{onSuccess:function(data){
    		if(data=='1') Baike.Login.after();
    		else if(data=='0') Baike.Login.openLoginDialog();
    	}});
    },
    loginLink:function(){
        Zhishi.Ajax.sendRequest('GET', Baike.loginStateUrl,{onSuccess:function(jsonData){
        	if (jsonData == '1')  Baike.Login.changeLoginStateBar();//document.location.reload();
        	else if (jsonData == '0') Baike.Login.openLoginDialog();
        }});
    },
	closeLoginDialog:function(){
		Baike.Login.loginDialog.close();
		Baike.Login.after();
	},
	logout:function(){
		var o = get('logoutA'),url = Baike.loginOutUrl;;
		if(!o) return;
		if(o.href) url = o.href;
		var refresh=o.innerHTML;
		if(refresh=='true'){
			if(url.indexOf('?')>-1) document.location=url;
			else document.location.reload();
		}else{
			Zhishi.Ajax.sendRequest('GET', url,{onSuccess:function(data){
    		Baike.Login.changeLoginStateBar();
    	}});
		}
		
		if(Zhishi.Browser.isTT) {
			Zhishi.Cookie.delCookie('skey');
		}
	},
	logoutWithNoFresh:function(){
		var o = get('logoutA'),url = Baike.loginOutUrl;;
		if(o && o.href) url = o.href;
		Zhishi.Ajax.sendRequest('GET', url,{onSuccess:function(data){
    		Baike.Login.changeLoginStateBar();
    	}});
	},
	refresh : function(){
		document.location.reload();
	}
};