var userAgent = navigator.userAgent.toLowerCase();
var is_opera  = (userAgent.indexOf('opera') != -1);
var is_saf    = ((userAgent.indexOf('applewebkit') != -1) || (navigator.vendor == "Apple Computer, Inc."));
var is_webtv  = (userAgent.indexOf('webtv') != -1);
var is_ie     = ((userAgent.indexOf('msie') != -1) && (!is_opera) && (!is_saf) && (!is_webtv));
var is_ie4    = ((is_ie) && (userAgent.indexOf("msie 4.") != -1));
var is_moz    = ((navigator.product == 'Gecko') && (!is_saf));
var is_kon    = (userAgent.indexOf('konqueror') != -1);
var is_ns     = ((userAgent.indexOf('compatible') == -1) && (userAgent.indexOf('mozilla') != -1) && (!is_opera) && (!is_webtv) && (!is_saf));
var is_ns4    = ((is_ns) && (parseInt(navigator.appVersion) == 4));

var is_regexp = (window.RegExp) ? true : false;

var DOMtype = '';
if (document.getElementById)
{
	DOMtype = "std";
}
else if (document.all)
{
	DOMtype = "ie4";
}
else if (document.layers)
{
	DOMtype = "ns4";
}

var objects = new Array();

function fetch_object(idname, forcefetch)
{
	if (forcefetch || typeof(objects[idname]) == "undefined")
	{
		switch (DOMtype)
		{
			case "std":
			{
				objects[idname] = document.getElementById(idname);
			}
			break;

			case "ie4":
			{
				objects[idname] = document.all[idname];
			}
			break;

			case "ns4":
			{
				objects[idname] = document.layers[idname];
			}
			break;
		}
	}
	return objects[idname];
}

function iif(condition, trueval, falseval)
{
	return condition ? trueval : falseval;
}

function open_window(url, width, height)
{
	var dimensions = '';
	
	if (width)
	{
		dimensions += ',width=' + width;
	}
	
	if (height)
	{
		dimensions += ',height=' + height;
	}
	
	var rand = new Number(Math.floor(99999999 * Math.random()) + 1);
	
	window.open(url, 'AdvPopup' + rand, 'statusbar=no,menubar=no,toolbar=no,scrollbars=yes,resizable=yes' + dimensions);
	
	return false;
}

function fetch_object_posleft(elm)
{
	var left = elm.offsetLeft;
	
	while((elm = elm.offsetParent) != null)
	{
		left += elm.offsetLeft;
	}
	return left;
}

function fetch_object_postop(elm)
{
	var top = elm.offsetTop;
	
	while((elm = elm.offsetParent) != null)
	{
		top += elm.offsetTop;
	}
	return top;
}

function do_an_e(eventobj)
{
	if (!eventobj || is_ie)
	{
		window.event.returnValue = false;
		window.event.cancelBubble = true;
		
		return window.event;
	}
	else
	{
		eventobj.stopPropagation();
		eventobj.preventDefault();
		
		return eventobj;
	}
}

function init()
{
	if (is_webtv)
	{
		return true;
	}
	
	var h2s = null;
	var imgs = null;
	
	switch (DOMtype)
	{
		case 'std':
			h2s = document.getElementsByTagName('h2');
			imgs = document.getElementsByTagName('img');
			break;
		case 'ie4':
			h2s = document.all.tags('h2');
			imgs = document.all.tags('img');
			break;
		default:
			h2s = false;
			imgs = false;
			break;
	}
	
	if (h2s)
	{
		var headings = [];
		
		for (var i = 0; i < h2s.length; i++)
		{
			headings[i] = h2s[i];
		}
	
		for (var i = 0; i < headings.length; i++)
		{
			var outerh2 = document.createElement('h2');
			var middleh2 = document.createElement('h2');
			
			outerh2.innerHTML = headings[i].innerHTML;
			middleh2.innerHTML = headings[i].innerHTML;
			
			headings[i].parentNode.replaceChild(outerh2, headings[i]);
			
			outerh2.appendChild(middleh2);
			middleh2.appendChild(headings[i]);
			
			outerh2.style.color = '#999999';
		}
	}
	
	if (imgs)
	{
		for (var i = 0; i < imgs.length; i++)
		{
			if (!imgs[i].title && imgs[i].alt != '')
			{
				imgs[i].title = imgs[i].alt;
			}
		}
	}
	
	return true;
}