// javascript library of functions

function showIt(div) {
	var c = $(div);
	if(c.style.display == 'none'){
		c.style.display = 'inline';
	}
}
function hideIt(div) {
	var c = $(div);
	if(c.style.display != 'none'){
		c.style.display = 'none'
	}
}

// Get base url
var url = document.location.href;
xend = url.lastIndexOf("/") + 1;
var base_url = url.substring(0, xend);


function ajax_do (url) {
		    // Does URL begin with http?
        if (url.substring(0, 4) != 'http') {
                url = base_url + url;
        }

        // Create new JS element
        var jsel = document.createElement('SCRIPT');
        jsel.type = 'text/javascript';
        jsel.src = url;
		
        // Append JS element (therefore executing the 'AJAX' call)
        document.body.appendChild (jsel);
}

function preload(img) {
	var newImage = new Image();
	newImage.src = img;	
}

function getFlashMovieObject(movieName)
{
  if (window.document[movieName]) 
  {
      return window.document[movieName];
  }
  if (navigator.appName.indexOf("Microsoft Internet")==-1)
  {
    if (document.embeds && document.embeds[movieName])
      return document.embeds[movieName]; 
  }
  else // if (navigator.appName.indexOf("Microsoft Internet")!=-1)
  {
    return document.getElementById(movieName);
  }
}

function insertFlash( src, width, height, version, name, FlashVars )
{
	var output = '';
	
	output += '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=' + version + ',0,0,0" width="' + width + '" height="' + height + '" id="' + name + '" align="middle">';
	output += '<param name="allowScriptAccess" value="sameDomain" />';
	output += '<param name="movie" value="' + src + '" />';
	output += '<param name="quality" value="high" />';
	output += '<param name="bgcolor" value="#ffffff" />';
	output += '<param name="wmode" value="transparent" />';
	output += '<param name="scale" value="noscale" />';
	output += '<param name="FlashVars" value="' + FlashVars + '" />';
	
	output += '<embed src="' + src + '" quality="high" FlashVars="' + FlashVars + '" wmode="transparent" bgcolor="#ffffff" width="' + width + '" height="' + height + '" name="' + name + '" scale="noscale" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />';
	output += '</object>';

	return output;
}
function writeFlash( src, width, height, version, name, FlashVars )
{
	document.write( insertFlash( src, width, height, version, name, FlashVars ) );
}
function $() {
  var elements = new Array();

  for (var i = 0; i < arguments.length; i++) {
    var element = arguments[i];
    if (typeof element == 'string')
      element = document.getElementById(element);

    if (arguments.length == 1)
      return element;

    elements.push(element);
  }

  return elements;
}
function addEvent( obj, type, fn ) {
	if (obj.addEventListener) {
		obj.addEventListener( type, fn, false );
		EventCache.add(obj, type, fn);
	}
	else if (obj.attachEvent) {
		obj["e"+type+fn] = fn;
		obj[type+fn] = function() { obj["e"+type+fn]( window.event ); }
		obj.attachEvent( "on"+type, obj[type+fn] );
		EventCache.add(obj, type, fn);
	}
	else {
		obj["on"+type] = obj["e"+type+fn];
	}
}

var EventCache = function(){
	var listEvents = [];
	return {
		listEvents : listEvents,
		add : function(node, sEventName, fHandler){
			listEvents.push(arguments);
		},
		flush : function(){
			var i, item;
			for(i = listEvents.length - 1; i >= 0; i = i - 1){
				item = listEvents[i];
				if(item[0].removeEventListener){
					item[0].removeEventListener(item[1], item[2], item[3]);
				};
				if(item[1].substring(0, 2) != "on"){
					item[1] = "on" + item[1];
				};
				if(item[0].detachEvent){
					item[0].detachEvent(item[1], item[2]);
				};
				item[0][item[1]] = null;
			};
		}
	};
}();
addEvent(window,'unload',EventCache.flush);