/**
 * @author Lee
 */
var TFL = TFL || {};
TFL.header = {
	dom: {
		$: function(id) {
			switch (typeof id) {
				case "object":
					return id;
					break;
				case "string":
					return parent.document.getElementById(id);
					break;
				default:
					return null;
			}
		}
	},
	getValueByMetaName: function (name) {
		var metas = parent.document.getElementsByTagName("head")[0].getElementsByTagName("meta");
		var result = false;
		for (var el in metas) {
			try {
				var _name = metas[el].getAttribute("name");
				if (_name.toLowerCase() == name.toLowerCase()) {
					result = metas[el].getAttribute("content");
					break;
				}
			}catch (e) {}
		}
		return result;
	},
	initLeftNav: function () {
		var left_nav = this.getValueByMetaName("leftnav");
		if (left_nav) {
			var objNode = this.dom.$(left_nav + "_l");
			if (objNode) {
				objNode.setAttribute("class", "curr-nav");
				objNode.setAttribute("className", "curr-nav");
				var pNode = objNode.parentNode;
				if (pNode.tagName == "UL") {
					var pNodeClassName = pNode.getAttribute("class") || pNode.getAttribute("className");
					if (pNodeClassName == "sub-item") {
						pNode.parentNode.setAttribute("class", "expand");
						pNode.parentNode.setAttribute("className", "expand");
					}
				}
			}
		}
	},
	initDropdown: function() {
		var dropCon = this.dom.$('drop-menu');
		if (!dropCon) return;
		var dropLink = this.dom.$('drop-menu').getElementsByTagName('a')[0];
		var dropMenu = this.dom.$('menu-wrap')
		var reg = /(\s|^)hovSty(\s|$)/g;
		dropCon.onmouseover = function() {
		  dropMenu.style.display = 'block';
		  if (!reg.test(dropLink.className)){
			dropLink.className += ' hovSty';
		  }
		}
		dropCon.onmouseout = function() {
		  dropMenu.style.display = 'none';
		  dropLink.className = dropLink.className.replace(reg,'');
		}
	},
	initMultiDropdown: function(initId,hovSty,menuWrap) {
		var dropCon = this.dom.$(initId);
		if (!dropCon) return;
		var dropLink = this.dom.$(initId).getElementsByTagName('a')[0];
		var dropMenu = this.dom.$(menuWrap);
		var reg = /(\s|^)hovSty(\s|$)/g;
		dropCon.onmouseover = function() {
		  dropMenu.style.display = 'block';
		  if (!reg.test(dropLink.className)){
			dropLink.className += (' '+hovSty);
		  }
		}
		dropCon.onmouseout = function() {
		  dropMenu.style.display = 'none';
		  dropLink.className = dropLink.className.replace(reg,'');
		}
	},
	initHeaderDropdown: function(wrapper,trigger,hovSty) {
		var wrapper = this.dom.$(wrapper);
		if(!wrapper) return;
		var triggerReg = new RegExp('(\\s|^)' + trigger + '(\\s|$)');
		var hoverStyReg = /(\s|^)hovSty(\s|$)/g;
		var lis = wrapper.getElementsByTagName('li'),dropLink;
		if ( ( window.selectOverlay && Browser.type == "MSIE" && parseInt(Browser.version, 10) == 6 ) || ( window.passwordOverlay && Browser.type == "MSIE" ) ) {
			var overlay = document.createElement('iframe');
			overlay.src = 'https://img.tenpay.com/v2.0/none.html';
			overlay.style.display = 'none';
			overlay.className = 'overlay';
		}
		for ( var i=0; i<lis.length; i++ ) {
			if( triggerReg.test( lis[i].className ) ) {
				dropLink = lis[i].getElementsByTagName('a')[0];
				dropLink.className += dropLink.className ? ' drop-link' : 'drop-link';
				var dropMenu = lis[i].getElementsByTagName('div')[0];
				if ( ( window.selectOverlay && Browser.type == "MSIE" && parseInt( Browser.version, 10) == 6 ) || ( window.passwordOverlay ) ) {
					var dupOverlay = overlay.cloneNode(false);
					dropMenu.appendChild( dupOverlay );
				}
				lis[i].onmouseover = function() {
					this.getElementsByTagName('div')[0].style.display = 'block';
					this.getElementsByTagName('a')[0].className += ' ' + hovSty;
					if ( this.getElementsByTagName('iframe')[0] ) {
						this.getElementsByTagName('iframe')[0].style.display = 'block';
						this.getElementsByTagName('iframe')[0].style.height = this.getElementsByTagName('div')[0].offsetHeight;
						this.getElementsByTagName('iframe')[0].style.width = this.getElementsByTagName('div')[0].offsetWidth;

					} 
				}
				 lis[i].onmouseout = function() {
					this.getElementsByTagName('div')[0].style.display = 'none';
					this.getElementsByTagName('a')[0].className = this.getElementsByTagName('a')[0].className.replace( hoverStyReg,'' );
					if ( this.getElementsByTagName('iframe')[0] ) {
						this.getElementsByTagName('iframe')[0].style.display = 'none';
					}
				}
			}
		}
	},
	getCert : function(){
		var _rtn = "";
		if (TFL.cookie.get("certuserflag") == "1")
		{
			if(TFL.cert.m_bUseFlag)
				TFL.cert.Draw("QQCertCtrl");
			if (this.dom.$("QQCertCtrl") && this.dom.$("QQCertCtrl").Version >= parseInt(TFL.cert.VERSION) )
			{
				var result = CertUserHasCert();
				if (1 == parseInt(result))
				{
					_rtn = '<a href="https://www.tenpay.com/certificates/tenpay_safe_management.shtml" title="本机未安装数字证书"><span class="cert-applied">　</span></a>';
				}
				else if (2 == parseInt(result))
				{
					_rtn = '<a href="https://www.tenpay.com/certificates/tenpay_safe_management.shtml" title="管理数字证书"><span class="cert-installed">　</span></a>';
				}
			}
			else
			{
				_rtn = '<a href="https://www.tenpay.com/certificates/tenpay_safe_management.shtml" title="本机未安装数字证书"><span class="cert-applied">　</span></a>';
			}
		}
		this.dom.$("snCert").innerHTML = _rtn;
	},
	initHeader: function () {
		this.initDropdown();
		if(!this.getValueByMetaName("unlogin"))//强制登录页面从cgi中取用户信息
		{
			var _frame = document.createElement("iframe");
			if(!this.getValueByMetaName("domain"))
			{
				_frame.src = "https://www.tenpay.com/cgi-bin/v1.0/qpay_dynamic_head.cgi?loginflag=3";
			}
			else
			{
				//存在跨域问题
				_frame.src = "https://www.tenpay.com/cgi-bin/v1.0/qpay_dynamic_head1.cgi?loginflag=3";
			}
			this.dom.$("main-nav").appendChild(_frame);
			this.dom.$("snNoLog").style.display = "none";
		}
		else//如果非强制登录页面，从cookie中取用户信息
		{
			if(TFL.cookie.get("qltn"))
			{
				this.dom.$("snNoLog").style.display = "none";
				this.dom.$("head_true_name").innerHTML = "欢迎您，" + this.getName() + "";
			}
			else if(TFL.cookie.get("qluin"))
			{
				this.dom.$("snNoLog").style.display = "none";
				this.dom.$("head_true_name").innerHTML = "欢迎您，" + TFL.cookie.get("qluin") + "";
			}
			else
			{
				this.dom.$("snLog").style.display = "none";
			}
		}
		this.getCert();
	},
	chkLogin : function(){
		return TFL.cookie.get("qluin") == "" ? false : true;
	},
	initLogin : function()
	{
		if(!this.getValueByMetaName("unlogin") && !this.chkLogin()){
			top.location.href = "https://www.tenpay.com/zft/login.shtml?u1=" + encodeURIComponent(top.location);
		}
	},
    rewriteName : function(name){
        var userAgent = navigator.userAgent.toLowerCase();
        var msie = userAgent.match(/msie ([\d.]+)/);
        var sysLang = (navigator.systemLanguage || "").toLowerCase();
        var userLang = (navigator.userLanguage || "").toLowerCase();
        var moLang = (navigator.language || "").toLowerCase();
        var isCN = ((("zh-cn" == sysLang) && ("zh-cn" == userLang)) || ("zh-cn" == moLang));
        if(null == msie || false == isCN){
            TFL.cookie.set("xwuiiuwx", escape(name), "tenpay.com", "/", "");
        }
    },
    getName : function(){
        var xw = TFL.cookie.get("xwuiiuwx");
        if(xw){
            xw = unescape(xw);
        }else{
            xw = TFL.cookie.get("qltn");
        }
        return xw;
    }
};
