/* -----------------------------------------------
   Thomas WebTraxs - v.2.2.3
  ------------------------------------------------ */

// ----------------------------------------------------------
// SETTINGS:
// here should be your username you received from www.thomastracking.com
// Do not edit this file manually!! Use the one you got in your
// confirmation-email or the one from PowerPhlogger's settings
// section.
   id = "taosinc";
// If you're using a frameset and are not getting correct 
// referrers, please uncomment the following line:
   // pp_frames = true;
// ----------------------------------------------------------


// define some defaults -------------------------------------
if(showme==null) var showme='n';
if(st==null)     var st='img';    // st means show-type


// get the user agent name ----------------------------------
v = navigator.appName;

// get the screen resolution --------------------------------
c=0;
if (v != "Netscape") c = screen.colorDepth;
else c = screen.pixelDepth;

// get the screen size --------------------------------------
s = screen.width+"x"+screen.height;

// get the document's title ---------------------------------
t = escape(document.title);

// get the document's referrer -------------------------------
var f = "";

// if pp_frames is true then try getting the framed referral (without error checking)
if (typeof(pp_frames) != "undefined")
        if (pp_frames)
                f = top.document.referrer;

// get the referral for non-multi-domained-framed sites using a Netscape browser
if ((f == "") || (f == "[unknown origin]") || (f == "unknown") || (f == "undefined"))
        if (document["parent"] != null) 
                if (parent["document"] != null) // ACCESS ERROR HERE!
                        if (parent.document["referrer"] != null) 
                                if (typeof(parent.document) == "object")
                                        f = parent.document.referrer; 

// get the referral for the current document if a framed referral wasn't found
if ((f == "") || (f == "[unknown origin]") || (f == "unknown") || (f == "undefined"))
        if (document["referrer"] != null) 
                f = document.referrer;

// convert all the unknown's into blank
if ((f == "") || (f == "[unknown origin]") || (f == "unknown") || (f == "undefined"))
        f = "";

// escape the referral
f = escape(f);

// getting data ready to send -------------------------------
r="?id="+id+"&referer="+f+"&r="+s+"&c="+c+"&showme="+showme+"&st="+st+"&title="+t;

// adding logid if called by st='phpjs'
if(jslogid==null) var jslogid = 0;
else r = r + "&jslogid="+jslogid;

function alturl() {
        document.pphLoggerImage.src = "http://alt.webtraxs.com//pixel.gif"+r;
        return false;
}

function altJs(r) {
        document.open();
        document.write("<img src=\"http://alt.webtraxs.com//pixel.gif"+r+
                "\" alt=\"\" border=\"0\" name=pphLoggerImage>");
        document.close();
}

if (st=='js') { // calling logger by JavaScript-tag
        if (v != "Microsoft Internet Explorer") {
                r = r+"&url="+document.URL; // $HTTP_REFERER problem with NS,...
        }
        document.open();
        document.write("<script language=\"JavaScript\" type=\"text/javascript\" src=\"http://db2.webtraxs.com/webtraxs.php"+r+"\" onError=\"altJs('"+r+"');\"></script>");
        document.close();
} else { // calling PowerPhlogger by IMG-tag
        rand = Math.round(1000*Math.random());
        r = r+"&b="+rand;  //force the page to load the IMG
        document.open();
        document.write("<img src=\"http://db2.webtraxs.com/webtraxs.php"+r+"\" onError='alturl();' alt=\"\" border=\"0\" name=pphLoggerImage>");
        document.close();
}


var _browser = new Browser();
var _activeButton = null;
var MenuHorizontalOffset = 15;
var MenuVerticalOffset = -1;
var TimerId = null;
var TimerDelay = 700;

if (!_browser.isIE) MenuVerticalOffset = 3

if (typeof(wmxMenuHorizontalOffset) != "undefined")
{
	var MenuHorizontalOffset = wmxMenuHorizontalOffset;
	var MenuVerticalOffset = wmxMenuVerticalOffset;
}

function Browser() {
	this.isIE = false;
	this.isNS = false;
	this.version = null;
	this.platform = navigator.platform.substr(0, 3);
	var browserName;
	browserName = "MSIE";
	var index = navigator.userAgent.indexOf(browserName);
	if (index >= 0) {
		this.isIE = true;
		this.version = parseFloat(navigator.userAgent.substr(index + browserName.length));
		return;
	}
	browserName = "Netscape6/";
	index = navigator.userAgent.indexOf(browserName)
	if (index >= 0) {
		this.isNS = true;
		this.version = parseFloat(navigator.userAgent.substr(index + browserName.length));
		return;
	}
	browserName = "Gecko";
	index = navigator.userAgent.indexOf(browserName)
	if (index >= 0) {
		this.isNS = true;
		this.version = 6.1;
		return;
	}
}
function buttonClick(button, event, menuId) 
{
	var button;
	if (_browser.isIE) {
		button = window.event.srcElement;
	} else {
		button = event.currentTarget;
	}
	button = getContainer(button, "DIV", "MenuItem");
	//button.blur();  Firefox didn't like this line.
	if (button.menu == null) {
		button.menu = document.getElementById(menuId);
		if (button.menu.isInitialized == null) {
			menuInit(button.menu);
		}
	}
	if (button.onmouseout == null) {
		button.onmouseout = menuMouseout;
	}
	if (button == _activeButton) {
		return false;
	}
	if (_activeButton != null) {
		resetButton(_activeButton);
	}
	if (button != _activeButton) {
		depressButton(button);
		_activeButton = button;
	} else {
		_activeButton = null;
	}
	return false;
}
function buttonMouseover(button, event, menuId) 
{
	if (TimerId != null)
	{
		window.clearTimeout(TimerId);
		TimerId = null;
	}
	if (_activeButton == null) {
		buttonClick(button, event, menuId);
		return;
	}
	var button = null;
	if (_browser.isIE) {
		button = window.event.srcElement;
	} else {
		button = event.currentTarget;
	}
	if (_activeButton != null && _activeButton != button) {
		buttonClick(button, event, menuId);
	}
}
function depressButton(button) {
	if (button.onmouseout == null) {
		button.onmouseout = menuMouseout;
	}
	if (button.menu.onmouseout == null) {
		button.menu.onmouseout = menuMouseout;
	}
	var x = getPageOffsetLeft(button);
	var y = getPageOffsetTop(button) + button.offsetHeight - 2;
	if (_browser.isIE) {
		x += button.offsetParent.clientLeft;
		y += button.offsetParent.clientTop;
	}
	button.menu.style.left = x + MenuHorizontalOffset + "px";
	button.menu.style.top  = (y + MenuVerticalOffset) + "px";
	var buttonMenuAnchors = button.menu.getElementsByTagName("A");
	if (buttonMenuAnchors.length > 0) {
		button.menu.style.visibility = "visible";
		if (_browser.isIE) {
			hideElement(button.menu);
		}
	}
}
function resetButton(button) {
	if (button.menu != null) {
		closeSubMenu(button.menu);
		button.menu.style.visibility = "hidden";
		if (_browser.isIE) {
			showElement();
		}
	}
	button.className = "MenuItem";
}
function menuMouseover(event) {
	var menu;
	if (TimerId != null)
	{
		window.clearTimeout(TimerId);
		TimerId = null;
	}
	if (_browser.isIE) {
		menu = getContainer(window.event.srcElement, "DIV", "menu");
	} else {
		menu = event.currentTarget;
	}
	if (menu.activeItem != null) {
		closeSubMenu(menu);
	}
}
function menuItemMouseover(event, menuId) {
	var item;
	if (TimerId != null)
	{
		window.clearTimeout(TimerId);
		TimerId = null;
	}
	if (_browser.isIE) {
		item = getContainer(window.event.srcElement, "A", "menuItem");
	} else {
		item = event.currentTarget;
	}
	var menu = getContainer(item, "DIV", "menu");
	if (menu.activeItem != null) {
		closeSubMenu(menu);
	}
	menu.activeItem = item;
	if (item.subMenu == null) {
		item.subMenu = document.getElementById(menuId);
		if (item.subMenu.isInitialized == null) {
			menuInit(item.subMenu);
		}
	}
	if (item.subMenu.onmouseout == null) {
		item.subMenu.onmouseout = menuMouseout;
	}
	var x = getPageOffsetLeft(item) + item.offsetWidth;
	var y = getPageOffsetTop(item);
	var maxX = 0;
	var maxY = 0;
	if (_browser.isNS) {
		maxX = window.scrollX + window.innerWidth;
		maxY = window.scrollY + window.innerHeight;
	}
	if (_browser.isIE) {
		if (_browser.platform != "Mac") {
			maxX = Math.max(document.documentElement.scrollLeft, document.body.scrollLeft) + (document.documentElement.clientWidth != 0 ? document.documentElement.clientWidth : document.body.clientWidth);
			maxY = Math.max(document.documentElement.scrollTop, document.body.scrollTop) + (document.documentElement.clientHeight != 0 ? document.documentElement.clientHeight : document.body.clientHeight);
		} else {
			maxX = document.body.scrollLeft + document.body.clientWidth;
			maxY = document.body.scrollTop + document.body.clientHeight;
		}
	}
	maxX -= item.subMenu.offsetWidth;
	maxY -= item.subMenu.offsetHeight;
	if (_browser.isIE && _browser.platform == "Mac") {
		x -= 11;
	}
	if (x > maxX) {
		x = Math.max(0, x - item.offsetWidth - item.subMenu.offsetWidth + (menu.offsetWidth - item.offsetWidth));
	}
	y = Math.max(0, Math.min(y, maxY));
	item.subMenu.style.left = x + "px";
	item.subMenu.style.top  = y + "px";
	item.subMenu.style.visibility = "visible";
	if (_browser.isIE) {
		hideElement(item.subMenu);
	}
	if (_browser.isIE) {
		window.event.cancelBubble = true;
	} else {
		event.stopPropagation();
	}
}
function closeSubMenu(menu) {
	if (menu == null || menu.activeItem == null) {
		return;
	}
	if (menu.activeItem.subMenu != null) {
		closeSubMenu(menu.activeItem.subMenu);
		menu.activeItem.subMenu.style.visibility = "hidden";
		menu.activeItem.subMenu = null;
	}
	menu.activeItem = null;
}
function menuMouseout(event)
{
	var el;
	if (_activeButton == null) {
		return;
	}
	if (_browser.isIE) {
		el = window.event.toElement;
		//alert(el.tagName + " - " + el.className);
	} else if (event.relatedTarget != null) {
		el = (event.relatedTarget.tagName ? event.relatedTarget : event.relatedTarget.parentNode);
	}
	if (getContainer(el, "DIV", "menu") == null) 
	{
		//alert("bang");
		if (TimerId != null)
			window.clearTimeout(TimerId)
		
		TimerId = window.setTimeout("doResetButton()", TimerDelay);
	}
}
function doResetButton()
{
	resetButton(_activeButton);
	_activeButton = null;
}
function menuInit(menu) {
	var anchorList = menu.getElementsByTagName("A");
	if (anchorList.length <= 0) {
		return;
	}
	if (_browser.isIE) {
		if (_browser.platform != "Mac") {
			var menuWidth = anchorList[0].offsetWidth;
			anchorList[0].style.width = menuWidth + "px";
			var calculatedWidth = anchorList[0].offsetWidth - menuWidth;
			menuWidth -= calculatedWidth;
			anchorList[0].style.width = menuWidth + "px";
		} else {
			menu.style.width = "200px";
			menu.style.whiteSpace = "nowrap";
		}
	}
	if (_browser.isIE) {
		menu.style.lineHeight = "12px";
		var spanList = menu.getElementsByTagName("SPAN");
		for(var i = 0; i < spanList.length; i++) {
			if (hasClassName(spanList[i], "menuitemarrow")) {
				spanList[i].style.fontFamily = "Webdings";
				spanList[i].firstChild.nodeValue = "4";
			}
		}
	}
	menu.isInitialized = true;
}
function getContainer(node, tagName, className) {
	while(node != null) {
		if (node.tagName != null && node.tagName == tagName && hasClassName(node, className)) {
			return node;
		}
		node = node.parentNode;
	}
	return node;
}
function hasClassName(el, name) {
	var list;
	list = el.className.split(" ");
	for(var i = 0; i < list.length; i++) {
		if (list[i] == name) {
			return true;
		}
	}
	return false;
}
function getPageOffsetLeft(el) 
{
	var _left = 0;
	while (el.offsetParent != null)
	{
		_left += el.offsetLeft;
		el = el.offsetParent;
	}
	_left += document.body.offsetLeft;
	return _left;
}
function getPageOffsetTop(el) 
{
	var _top = 0;
	while (el.offsetParent != null)
	{
		_top += el.offsetTop;
		el = el.offsetParent;
	}
	_top += document.body.offsetTop;
	return _top;
}
function hideElement(button) {
	var element = "SELECT";
	var currentElement = null;
	for (i = 0; i < document.all.tags(element).length; i++) 
	{
		currentElement = document.all.tags(element)[i];
		if (((elementTop(currentElement) > parseInt(button.style.top) + button.offsetHeight) || 
			(elementLeft(currentElement) > parseInt(button.style.left) + button.offsetWidth) ||
			(elementLeft(currentElement) + currentElement.offsetWidth < parseInt(button.style.left)) || 
			(elementTop(currentElement) + currentElement.offsetHeight < parseInt(button.style.top))))
			//&& _activeButton == null) 
		{
			currentElement.style.visibility = "";
		} 
		else 
		{
			currentElement.style.visibility = "hidden";
		}
	}
}
function showElement() {
	var element = "SELECT";
	var currentElement = null;
	for (i = 0; i < document.all.tags(element).length; i++) {
		currentElement = document.all.tags(element)[i];
		currentElement.style.visibility = "";
	}
}
function elementTop(elementSource) {
	var top = 0;
	while (elementSource.tagName.toUpperCase() != "BODY") {
		top += elementSource.offsetTop;
		elementSource = elementSource.offsetParent;
	}
	return top;
}
function elementLeft(elementSource) {
	var left = 0;
	while (elementSource.tagName.toUpperCase() != "BODY") {
		left += elementSource.offsetLeft;
		elementSource = elementSource.offsetParent;
	}
	return left;
}
