/**
 * TurboTax Banner Control
 * by: Paul McLanahan <paul dot mclanahan at digitalinsight>
 * copyright: 2008 Digital Insight Inc. All Rights Reserved
 */
var tt = {
	domains : {},
	banners : [],

	addBanner : function(bArr){
		tt.banners[tt.banners.length] = bArr;
	},

	addDomain : function(dName,dInfo){
		tt.domains[dName] = dInfo;
	},

	show : function(site, banner, elem){
		if(!site || !document.getElementsByTagName || !document.getElementById)return;
		tt.site = site;
		tt.banner = typeof banner == 'undefined' ? 0 : banner;
        tt.elem = elem || 'ttBanner';
        if(tt.domains[tt.site]){
            tt.init();
        }
        else{
            tt.require(tt.getLibName());
        }
	},

	init : function(){
		var el = document.getElementById(tt.elem);
		if(!el)return;
		var doDisplay = true, content = '';
		if(tt.siteIsActive(tt.site) && tt.isActive){
			content = tt.getBannerCode();
		}
		else doDisplay = false;
		if(doDisplay && content){
			el.innerHTML = content;
			el.style.display = '';
		}
	},

    getLibName : function(){
        return 'ttDomains_'+(/^[a-z]/i.test(tt.site)?tt.site.charAt(0):0)+'.js';
    },

	getBannerCode : function(){
		var d = tt.domains[tt.site];
		if(tt.banners[d.campaign][tt.banner]){
			var b = tt.banners[d.campaign][tt.banner];
			var out = '', aTag = false;
			out += '<a style="margin:0;padding:0" target="_blank" href="'+tt.affiliateURL+d.urlid+'">';
			out += '<img style="margin:0;padding:0" src="'+tt.path+'images/'+b+'" alt="TurboTax" border="0" />';
			out += '</a>';
			return out;
		}
		return false;
	},

	siteIsActive : function(site){
		var enabled = false;
		if(tt.domains[site]){
			enabled = tt.domains[site].enabled;
		}
		return enabled;
	},

	require: function(sLib){
		if(!tt.path){
			if(!document.getElementsByTagName)return;
			scripts = document.getElementsByTagName('script');
			for(var s=0;s < scripts.length;s++){
				if(scripts[s].src.match(/js\/tt\.js$/)){
					var ttScriptSrc = scripts[s].src;
					break;
				}
			}
			tt.path = ttScriptSrc.replace(/js\/tt\.js$/,'');
		}
		document.write('<scr'+'ipt type="text/javascript" src="'+tt.path+'js/'+sLib+'"></scr'+'ipt>');
	}
}
tt.require('ttDomains.js');
