//<![CDATA[


var d = new Date();
var year = d.getFullYear();

function getObj(name)
{
  if (document.getElementById)
  {
  	this.obj = document.getElementById(name);
	this.style = document.getElementById(name).style;
  }
  else if (document.all)
  {
	this.obj = document.all[name];
	this.style = document.all[name].style;
  }
  else if (document.layers)
  {
   	this.obj = document.layers[name];
   	this.style = document.layers[name];
  }
}


/*************************************************************************************/
/* Clear textbox on focus functionality */
/*************************************************************************************/
function clearOnFocus(type)
{
	if (!document.getElementsByTagName) return false;
	
	var fields = document.getElementsByTagName(type);
	
	for (var i=0; i < fields.length; i++)
	{
		if (fields[i].className.match("clearonfocus"))
		{
			if (!fields[i].onfocus)
			{
				fields[i].onfocus = function()
									{
										TextBox_OnFocus(this);
									}
			}
			
			if (!fields[i].onblur)
			{
				fields[i].onblur = function()
									{
										TextBox_OnBlur(this);
									}
			}
		}
	}
}
function TextBox_OnFocus(tb)
{
	var defaultText = tb.getAttribute("defaultText");

	if (!defaultText)
		defaultText = tb.defaultValue;
	
	if (tb.value == defaultText)
	{
		tb.value = "";
		return false;
	}
}
function TextBox_OnBlur(tb)
{
	if (tb.value == "")
	{
		var defaultText = tb.getAttribute("defaultText");
		
		if (!defaultText)
			defaultText = tb.defaultValue;
		
		tb.value = defaultText;
		return false;
	}
}
function TextBox_GetValue(tb)
{
	if (tb.value != "")
	{
		var defaultText = tb.getAttribute("defaultText");
		
		if (defaultText && tb.value == defaultText)
			return "";
	}
	return tb.value;
}
/*************************************************************************************/

// Unobtrusive scroller object
var fdScroller = {
        scrollLoop:false,
        scrollInterval:null,
        currentBlock:null,
        lastY:0,
        requestedY:0,
        init: function() {
                var lnks = document.getElementsByTagName('a');
                var removeLoc = window.location + ' ';

                // strip any #target, force a String cast
                if(removeLoc.indexOf('#') != -1) {
                        removeLoc = removeLoc.substr(0, removeLoc.indexOf('#'));
                } else {
                        removeLoc = removeLoc.substr(0, removeLoc.length - 1);
                }

                for(var i = 0, lnk; lnk = lnks[i]; i++) {
                        tmploc = lnk.href.replace(removeLoc,'');
                        if(tmploc.charAt(0) == '#' && !lnk.onclick) lnk.onclick = fdScroller.initScroll;
                }
        },
        getWindowHeight: function(){
                var myHeight = 0;
                if( typeof( window.innerWidth ) == 'number' ) {
                        //Non-IE
                        myHeight = window.innerHeight;
                } else if( document.documentElement &&
                                ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
                        //IE 6+ in 'standards compliant mode'
                        myHeight = document.documentElement.clientHeight;
                } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
                        //IE 4 compatible
                        myHeight = document.body.clientHeight;
                }
                return myHeight;
        },
        getScrollLeft: function(){
                if(document.all) return (document.documentElement.scrollLeft) ? document.documentElement.scrollLeft : document.body.scrollLeft;
                else return window.pageXOffset;
        },
        getScrollTop: function(){
                if(document.all) return (document.documentElement.scrollTop) ? document.documentElement.scrollTop : document.body.scrollTop;
                else return window.pageYOffset;
        },
        getElementYpos: function(el){
                var y = 0;
                while(el.offsetParent){
                        y += el.offsetTop
                        el = el.offsetParent;
                }
                return y;
        },
        initScroll: function(e){
                var targ;

                if (!e) var e = window.event;
                if (e.target) targ = e.target;
                else if (e.srcElement) targ = e.srcElement;
                if (targ.nodeType == 3) targ = targ.parentNode;

                if(targ.href && targ.href.indexOf('#') != -1) {
                        var where = targ.href.substr(targ.href.indexOf('#')+1,targ.href.length);
                        fdScroller.currentBlock = document.getElementById(where);
                        if(!fdScroller.currentBlock) return;

                        var documentHeight = document.getElementsByTagName('body').offsetHeight;
                        var windowHeight = fdScroller.getWindowHeight();
                        var ypos = fdScroller.getElementYpos(fdScroller.currentBlock);
                        if(ypos > documentHeight - windowHeight) ypos = documentHeight - windowHeight;
                        fdScroller.requestedY = ypos;
                        fdScroller.scroll();
                }

                return false;
        },
        scroll: function(){
                var left = fdScroller.getScrollLeft();
                var top  = fdScroller.getScrollTop();

                if(Math.abs(top-fdScroller.requestedY) <= 1){
                        window.scrollTo(0,fdScroller.requestedY);
                        fdScroller.lastY = -1;
                } else {
                        fdScroller.lastY = top;
                        window.scrollTo(0, Math.round(top+((fdScroller.requestedY-top)/2)));
                        setTimeout(fdScroller.scroll,50);
                }
        }
}

function addClass(element,name) {
  if (!element.className) {
    element.className = name;
  } else {
    element.className+= " "+name;
  }
}

function stripeTables() {
  var tables = document.getElementsByTagName("table");
  for (var i=0; i<tables.length; i++) {
    var rows = tables[i].getElementsByTagName("tr");
    for (var j=0; j<rows.length; j=j+2) {
      addClass(rows[j],"odd");
    }
  }
}

function doPopups()
{
if (!document.getElementsByTagName) return false;
	var anchors = document.getElementsByTagName('a');
	for (var i=0; i<anchors.length; i++){
		var anchor = anchors[i];
		var relAttribute = String(anchor.getAttribute('rel'));
		if (anchor.getAttribute('href') && (relAttribute.toLowerCase().match('popup'))){
			anchor.onclick = function () {window.open(this.href); return false;}
		}
	}
}

window.onload = function ()
{
	clearOnFocus('input');
	clearOnFocus('textarea');
	fdScroller.init();
	stripeTables();
	doPopups();
	
	var exists = false;
	
	try
	{
		if (customOnLoad)
			exists = true;
	}
	catch(e){}

	if (exists)
		customOnLoad();
	
}

//]]>