/* TMP Worldwide - Global JavaScript Functions */

// Check Browser CSS Compatibility
	
// alert(document.compatMode);
	
// Supress BOM Script Errors	

function errorsuppressor(){
return true;
}

if(location.href.indexOf("localhost") == -1){
window.onerror = errorsuppressor
}

// Multiple OnLoad Function

function addLoadEvent(func) {

	var oldonload = window.onload;
	
	if (typeof window.onload != 'function') {
		window.onload = func;
	} else {
		window.onload = function() {
		oldonload();
		func();
		}
	}
}

// Toggle, Show/Hide Element(s)

function toggleElement(val, obj){

	if(document.getElementById(val).style.display == "none") { 

		obj.className = "expandon";
		document.getElementById(val).style.display = "block";
	
	} else {

		obj.className = "expand";
		document.getElementById(val).style.display = "none";
	}
}

// Global Pop-up (parse through DOM, if viewpage class exists, append event)

function newWinLinks() {

	var hosturl = window.location.hostname;
	var hostdomain = hosturl.replace(/www./i, "");

	for (var i=0; i<document.links.length; i++) {

		if (document.links[i].className == "viewpage") {
							
			// If domain is not equal to "tmp.com
			
			if (hostdomain != "tmp.com") {
			
			// then eliminate "http://www.tmp.com/"	
		
			var linkvalue = document.links[i].getAttribute("href");
			var currentlink = linkvalue.replace(/http:\/\/www.tmp.com\//, "");
			
			document.links[i].setAttribute("href", currentlink);
		
			}
			
			// carry on...
		
			document.links[i].onclick = displayWindow;
		
		}
	} 
}

addLoadEvent(newWinLinks);

addLoadEvent(newWinLinks);

function displayWindow() {

	var pageWindow = window.open(this.href,"win", 'toolbar=1,location=0,directories=0,status=0,menubar=1,scrollbars=yes,resizable=1,top=300,left=400,width=820,height=500');
	pageWindow.focus();
	return false;
}

// CLOSE WINDOW - MORE UNOBTRUSIVE LOVELYNESS

function closePage() {
  window.close();
  return false;
}

function closePopUp() {
	
if (!document.createElement) return false;
if (!document.createTextNode) return false;
if (!document.getElementById) return false;

var para = document.createElement("p");
var href = document.createElement("a");
href.setAttribute("href", "#");
href.setAttribute("onclick", closePage);
var strtxt = document.createTextNode("Close Window");

para.appendChild(href);
href.appendChild(strtxt);

var pagefunction = document.getElementById ("pagefunction");
pagefunction.appendChild(para);
}

// addLoadEvent(closePopUp);

function closeRefresh(pageID) {

opener.top.location = pageID;
self.close();
return false;
}

// Tertiary Navigation Scroll

var timer;
var scrollspeed = 3;
		
function scrollup(){
		
if (document.all){
	document.all.supplementalnavigation.scrollTop -= scrollspeed;
		
} else {
		
	document.getElementById('supplementalnavigation').scrollTop -= scrollspeed;
		
	}
}
		
function scrolldown(){
		
if (document.all){
	document.all.supplementalnavigation.scrollTop += scrollspeed;
		
} else {
		
document.getElementById('supplementalnavigation').scrollTop += scrollspeed;
		
	}
}
		
function startUpScroll(){
timer = setInterval(scrollup,2);
}

function startDownScroll(){
timer = setInterval(scrolldown,2);
}

function stopScroll(){
clearInterval(timer);
}

function rollElemnt() {

if (!document.getElementById("supplementalnavigation-wrapper")) return false;

var scrolldn = document.getElementById("scrolldn");
var scrollup = document.getElementById("scrollup");

	scrolldn.onmouseover = function() {
	startDownScroll();
	}

	scrolldn.onmouseout = function() {
	stopScroll();
	}

	scrollup.onmouseover = function() {
	startUpScroll();
	}

	scrollup.onmouseout = function() {
	stopScroll();
	}

}

addLoadEvent(rollElemnt);

// Hide Article Elements/Links based on referrer  

function articleFunctions() {

if (!document.getElementById) return false;
if (!document.getElementsByTagName) return false;
if (!document.getElementById("pagefunction")) return false;

var currenthost = window.location.hostname;	
var currentdomain = currenthost.replace(/www./i, "");
var closewindow = document.getElementById("pagefunction").getElementsByTagName("p")[0];
var learnmore = document.getElementById("pagefunction").getElementsByTagName("p")[1];

if (document.referrer.indexOf(currentdomain) == -1){
	closewindow.style.display = "none";
	} else {
		learnmore.style.display = "none";
	}
	
}	
		
// addLoadEvent(articleFunctions);

// Inline Page Jump

function pageJump(pageto) {
	
	window.history.go(pageto);

}

// Inline Close Window

function closewindow() {
	
	window.close();
	return false;
}

// Row clicker

function gridRowClick() {
	
	if (!document.getElementsByTagName) return false;
	if (!document.getElementById("events")) return false;

	var get_grid = document.getElementsByTagName("table");

	for (var i=0; i < get_grid.length; i++) {

		if (get_grid[i].className ==  "datagrid") {

			var rows = get_grid[i].getElementsByTagName("tr");

			for (j=0; j < rows.length; j++) {

				if (rows[j].className ==  "even" || rows[j].className ==  "odd") {

					rows[j].onclick = function() {

						var cell = this.getElementsByTagName("td")[0];

						if (cell.getElementsByTagName("a").length > 0) {

							var link = cell.getElementsByTagName("a")[0];
							location.href = link.getAttribute("href");

						}
					}
				}
			}

		}
	}
}

addLoadEvent(gridRowClick);

function appendAddThis() {
	
if (!document.getElementById) return false;
if (!document.getElementById("addthis")) return false;
	
// var list_addthis = document.getElementById("addthis").getElementsByTagName("a")[0];
var list_addthis = document.getElementById("addthis");
	
list_addthis.onmouseover = function() {
	return addthis_open(this, '', '[URL]', '[TITLE]');
}
			
list_addthis.onmouseout = function() {
	addthis_close();
}
			
list_addthis.onclick = function() {
	return addthis_sendto();
	return false;
}
	
}
	
addLoadEvent(appendAddThis);

// AddThis Variables

var addthis_pub  = "tmpapplications";
var addthis_brand = "tmp.com";
var addthis_options = "delicious, digg, email, favorites, facebook, fark, furl, google, live, myweb, newsvine, reddit, stumbleupon, technorati, twitter, more";