var hub;

/* NB: font size */
function fontSizer(){
	if(!d.getElementById("articleTools") || d.getElementById("fontSize")){ return; };
	
	var fS = parseInt(checkFontSize());
	newSize(fS);
	
	var fsHolder = d.createElement("li");
	fsHolder.id = "fontSize";
	
	var smallerObj = createFontSizer("fsSmaller");
	var largerObj = createFontSizer("fsLarger");
	
	d.getElementById("articleTools").appendChild(fsHolder);
	fsHolder.appendChild(smallerObj);
	fsHolder.appendChild(d.createTextNode("Text Size"));
	fsHolder.appendChild(largerObj);

	function checkFontSize(){
		function convertFontSize(){
			var cookie = getCookie("gam_style");
			if(cookie==null){ return; }
			cookie = cookie.split(";");
			for(x=0;cookie.length>x;x++){
				if(cookie[x].indexOf("fS")!=-1) {	
					switch(cookie[x].split("fS=")[1]){
						case -2:
							fS = 0;
							break;
						case 0:
							fS = 2;
							break;
						case 1:
							fS = 3;
							break;
						case 2:
							fS = 4;
							break;
						default:
							fS = 1;
							break;
					}
				}
			}
			deleteCookie("gam_style");
			setCookie("TGAM-fontSize", "fS="+fS+";");	
		}
		convertFontSize(); 
		
		var cookie = getCookie("TGAM-fontSize");
		if(cookie==null){ cookie = "fS=1;"; }
		cookie = cookie.split(";");
		for(x=0;cookie.length>x;x++){
			if(cookie[x].indexOf("fS")!=-1) {	
				var fS = cookie[x].split("fS=")[1];
				if(isNaN(fS)) { fS = 1; }
				setCookie("TGAM-fontSize", "fS="+fS+";");	
			}
		}
		return fS; 
	}
	
	function createFontSizer(v){
		switch(v){
			case "fsSmaller":
				var parms = [smallerObj,"Decrease","\u2212","minus",0];
				var smallerObj = d.createElement("img");
				break;
			case "fsLarger":
				var parms = [largerObj,"Increase","+","plus",4];
				var largerObj = d.createElement("img");
				break;
		}
		parms[0] = d.createElement("img");
		parms[0].src = "http://images.theglobeandmail.com/v5/images/icon/icon-"+parms[3]+".gif";
		parms[0].width = 12;
		parms[0].height = 11;
		parms[0].alt = parms[3];
		parms[0].id = v;
		parms[0].style.verticalAlign = "-1px";
		parms[0].style.margin = "0 2px";
		if(parms[4]!=fS) {
			addEvent(parms[0],"click",changeSize);
			parms[0].title = parms[1] +" the text size";
			parms[0].style.cursor = (d.all) ? "hand" : "pointer";
			parms[0].style.opacity = "1";
		} else {
			parms[0].title = "You cannot " + parms[1].toLowerCase() + " the text size any further";
			parms[0].style.cursor = "default";
			parms[0].style.opacity = "0.2";
		}
		return parms[0];
	}
	
	function changeSize(){
		switch(this.id){
			case "fsSmaller":
				var parms = [smallerObj,largerObj,"Decrease","Increase","\u2212","minus",0,-1];
				break;
			case "fsLarger":
				var parms = [largerObj,smallerObj,"Increase","Decrease","+","plus",4,1];
				break;
		}
		var fS = checkFontSize();
		var nfS =	eval(parseInt(fS)+parms[7]);
		if(parms[6]!=nfS){
			newSize(nfS);
			addEvent(parms[1],"click",changeSize);
			parms[1].title = parms[3] +" the text size";
			parms[1].style.opacity = "1";
			parms[1].style.cursor = (d.all) ? "hand" : "pointer";
		} else {
			newSize(nfS);
			removeEvent(parms[0],"click",changeSize);
			parms[0].title = "You cannot " + parms[2].toLowerCase() +" the text size any further";
			parms[0].style.opacity = "0.2";
			parms[0].style.cursor = "default";
		}
		
		if(d.getElementById("skyRHolder") && d.getElementById("skyR") ) {
			placeAC("skyR");
		}	
		if(d.getElementById("boxRHolder") && d.getElementById("boxR") ) {
			placeAC("boxR");
		}		
		
	}
	
	function newSize(fS){
		switch(fS) {
			case 0:
				size = 85;
				break;
			case 2:
				size = 115;
				break;
			case 3:
				size = 130;
				break;
			case 4:
				size = 150;
				break;
			default:
				size = 100;
				break;
		}
		if(d.getElementById("article")) { d.getElementById("article").style.fontSize = size+"%"; }
		setCookie("TGAM-fontSize", "fS="+fS+";");	
	}

}

/* NB: widen page on finance sites */
function writeWidenPage(){
	if(d.getElementsByTagName("BODY")[0].className.indexOf("globeinvestor")!=-1 || d.getElementsByTagName("BODY")[0].className.indexOf("globefund")!=-1){ 
		var pt = d.getElementById("articleTools");
		var li = d.createElement("LI");
		var an = d.createElement("A");
		li.className = "widen";
		an.href = "#";
		addEvent(an,"click",function () { widenPage(this); return false; });
		an.appendChild(d.createTextNode("Widen this Page"));
		li.appendChild(an);
		pt.appendChild(li);
	}

	function widenPage(el){
		var nObj = d.getElementById("articleTools").childNodes;
		var text = el.firstChild.nodeValue;
	
		if(text.indexOf("Widen")!=-1){
			d.getElementById("content").className = "widen";
			el.firstChild.nodeValue = "Narrow this Page";
			d.getElementById("boxRHolder").style.visibility = "hidden";		
			d.getElementById("skyRHolder").style.visibility = "hidden";	
			el.parentNode.className = "narrow";
		} else {		
			d.getElementById("content").className = "";
			d.getElementById("boxRHolder").style.visibility = "";			
			d.getElementById("skyRHolder").style.visibility = "";	
			el.firstChild.nodeValue = "Widen this Page";
			el.parentNode.className = "widen";
		}
	}
}



/* NB: duplicate tools within aricles */
function addArticleTools(){
	if(d.getElementById("articleBottomTools")) { return; }
	var aTools = d.getElementById("articleTools").cloneNode(true);
	aTools.id = "articleBottomTools";
	aToolsLinks = aTools.getElementsByTagName("a");
	
	if(d.getElementById("articleBottomToolsHolder")){ aToolsHolder = d.getElementById("articleBottomToolsHolder"); }
		for(x=0;aToolsLinks.length>x;x++){
		if(aToolsLinks[x].parentNode.className=="comment" && d.getElementById("commentRSS")) { 
			if(aToolsLinks[x].className=="closed"){
				commentvalue = aToolsLinks[x].firstChild.nodeValue.replace(/Comments \(([0-9]+)/,"Follow conversation ($1");
			} else if(aToolsLinks[x].firstChild.nodeValue.search(/Comment(|[s]) \(([0-9]+)/)!=-1){
				commentvalue = aToolsLinks[x].firstChild.nodeValue.replace(/Comment(|[s]) \(([0-9]+)/,"Join conversation ($2");
			} else {
				commentvalue = aToolsLinks[x].firstChild.nodeValue.replace(/Comment/,"Leave the first comment");
			}
			aToolsLinks[x].firstChild.nodeValue=commentvalue;
		}
	}	
	if(d.getElementById("articleBottomToolsHolder") && aToolsHolder) { aToolsHolder.appendChild(aTools); }
}


/* NB: get stories, and hide if listed */
function getSLinks(i,s_id,count){
	var s_links = d.getElementById(i).getElementsByTagName("a");
	for(x=0;s_links.length>x;x++){
		if((s_links[x].href.indexOf(s_id)>1) || (x>=count)){
			nObj = ((i=="relatedNewsNav" || i=="wiseNav") && s_links[x].parentNode.parentNode.nodeName=="LI") ? s_links[x].parentNode.parentNode : s_links[x].parentNode;
			nObj.style.display = "none";
			return;
		}
	}
}

/* NB: init */
function articleInit(){
	if(d.getElementById("articleTools") && location.href.indexOf("CommentStory")==-1) { 
		addArticleTools();
		if(window.print){ 
			printThis(d.getElementById("articleTools"));
			if(d.getElementById("articleBottomTools")) { printThis(d.getElementById("articleBottomTools")); }
		}	
	}
	if((location.href.indexOf("PPVStoryOwn")==-1) && (d.getElementsByTagName("BODY")[0].className.indexOf("bundle")==-1)) { fontSizer();  }
	if(d.getElementById("feedsAvailable")) { makeRSSLink("feedsAvailable","A"); }
	
	var shareLinks = getElementsByClassName(d.getElementById("chewy"), "A", "share-article");
	if(shareLinks.length > 0) {
		for(var i=0; i<shareLinks.length; i++)	{
			addEvent(shareLinks[i], "click", function() {
				return showHelp("shareThisPost",this,"switch","close-shareThisPost","","",40,40);
			});
		}
	}
		
	writeWidenPage();
	globalNav();
	tagInit();
}

function tagInit() {
	var storyType = location.href.split("/")[6];
	//console.log(storyType);
	if(storyType == "BNStory" || storyType == "GAStory" || storyType == "WBStory" || storyType == "CommentStory") {  
		/* avoid JS errors on other story template files like GFStory */
		if(d.getElementById("showWhatAreTags")) {
			addEvent(d.getElementById("showWhatAreTags"), "click", function() {
				return showHelp("whatAreTags",this,"switch","close-whatAreTags","","",60,20);
			});
		}
	} 
}



if(typeof init != "function"){ function init(){ articleInit(); } }
/*@cc_on @*/
/*@if (@_win32);
    d.write("<script defer src='/v5/scripts/onLoad-ie.js'><"+"/script>");
/*@end @*/