var runMeOnLoadFirst = Array();
var runMeOnLoadLast = Array();

var fcount = -1;
var lcount = -1;

var runMeOnUnLoadFirst = Array();
var runMeOnUnLoadLast = Array();

var ufcount = -1;
var ulcount = -1;

var agt = navigator.userAgent.toLowerCase();
var browserVersion = 0;
var isWin = 0;
var isIE = ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1));
var isNav = ((agt.indexOf('mozilla')!=-1) && (agt.indexOf('spoofer')==-1)
                    && (agt.indexOf('compatible') == -1) && (agt.indexOf('opera')==-1)
                    && (agt.indexOf('webtv')==-1) && (agt.indexOf('hotjava')==-1));
var isOpera = ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") != -1));
var isNavMac = false;
var hasJavaScript = true;

var isMozillaCompatible = (agt.indexOf('mozilla')!=-1);

var skip_home_page = 1;

var hasJava = isJavaAvailable();

var hasCookies = checkForCookies();

// causes problems in ie 4
//var hasActiveX = checkForActiveX();

if (isIE) {
        var re = /msie ([^;]*);/;
        var matches = re.exec(agt);
        if (matches != null)
            browserVersion = parseFloat(matches[1]);
} else if (isOpera) {
        var re = /opera ([^ ]*) /;
        var matches = re.exec(agt);
        if (matches != null)
            browserVersion = parseFloat(matches[1]);
} else {
        browserVersion = parseFloat(navigator.appVersion);
}

if (isNav && browserVersion >= 5)
    {
        var re = /netscape6\/([\d\.]*)/;
        var matches = re.exec(agt);
        if (matches != null)
            browserVersion = parseFloat(matches[1]);
        else
            browserVersion = 6;
    }

    if (isNav && navigator.platform.substring(0,1) == "M")
    {
        isNav = false;
        isNavMac = true;
    }

isWin = (navigator.appVersion.indexOf("Windows") != -1);

function isJavaAvailable() {
	if (isIE) {
		var hasJava = (navigator.javaEnabled());
	} else {
		var hasJava = (navigator.javaEnabled && navigator.javaEnabled());
	}

	return (hasJava);
}

function checkForActiveX() {
	var hasActiveX = false;
	if (isIE) {
		hasActiveX = true;
		eval("try {var xmlHttp = new ActiveXObject(\"Microsoft.XMLHTTP\");} catch(e){ hasActiveX = false; }");
	}
	return hasActiveX;
}

function getCookie(name) {
	var dc = document.cookie;
	var prefix = name + "=";
	var begin = dc.indexOf("; " + prefix);
	if (begin == -1) {
		begin = dc.indexOf(prefix);
		if (begin != 0)
			return null;
	} else
		begin += 2;
	var end = document.cookie.indexOf(";", begin);
	if (end == -1)
		end = dc.length;
	return unescape(dc.substring(begin + prefix.length, end));
}

function setCookie(name, value, seconds) {
	// fourth argument of domain can be passed if necessary

	var today = new Date();
	var expires = null;
	var domain = null;

	if (arguments.length > 3) {
		domain = arguments[3];
		var first_letter = domain.substr(0,1);
		if (first_letter != ".") {
			domain = "." + domain;
		}
	}

	if (typeof(seconds) != "undefined") {
		expires = new Date();
		expires.setTime(today.getTime() + (seconds * 1000));
	}
	thisCookie = name + "=" + escape(value) + "; path=/"
		+ ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((domain == null) ? "" : ("; domain=" + domain));
	document.cookie = thisCookie;
}

function checkForCookies() {
	var bHasCookies = false;

	setCookie('temp_test_cookies', '1', 3600);
	var cookie_val = getCookie('temp_test_cookies');

	if (cookie_val == '1') {
	    bHasCookies = true;
	}
	return bHasCookies;
}

function setRunMeFirst(function_ref) {
	fcount++;
	runMeOnLoadFirst[fcount] = function_ref;
}

function setRunMeLast(function_ref) {
	lcount++;
	runMeOnLoadLast[lcount] = function_ref;
}

function setRunMeOnUnloadFirst(function_ref) {
	ufcount++;
	runMeOnUnLoadFirst[ufcount] = function_ref;
}

function setRunMeOnUnloadLast(function_ref) {
	ulcount++;
	runMeOnUnLoadLast[ulcount] = function_ref;
}

function runMeOnLoad() {
	for (i=0;i<runMeOnLoadFirst.length;i++) {
		runMeOnLoadFirst[i]();
	}
	for (i=0;i<runMeOnLoadLast.length;i++) {
		runMeOnLoadLast[i]();
	}
}
window.onload = runMeOnLoad;

function runMeOnUnLoad() {
	for (i=0;i<runMeOnUnLoadFirst.length;i++) {
		runMeOnUnLoadFirst[i]();
	}
	for (i=0;i<runMeOnUnLoadLast.length;i++) {
		runMeOnUnLoadLast[i]();
	}
}
window.onunload = runMeOnUnLoad;


// Batmosphere Embedded Media Player, version 2006-05-31
// Written by David Battino, www.batmosphere.com
// OK to use if this notice is included

// This function reads an MP3 URL and title from the referring page and generates embedding code to play back the audio file.
// Windows browsers (except for Internet Explorer) will play back the file with the Windows Media Player *plugin.* Internet Explorer will use Windows Media Player.
// Non-Windows browsers will play back the file with their standard audio handler for the MIME type audio/mpeg. On Macs, that handler will usually be QuickTime.

var audioFolder = ""; // If you have a default audio directory, e.g., http://www.your-media-hosting-site.com/sounds/, you can put it here to make links on the referring page shorter.

function embedPlayer(MP3title, MP3URL, autop) {

  // Get Operating System
  var isWin = navigator.userAgent.toLowerCase().indexOf("windows") != -1
  if (isWin) { // Use MIME type application/x-mplayer2
    visitorOS="Windows";
  } else { // Use MIME type audio/mpeg, audio/x-wav, etc.
    visitorOS="Other";
  }

  var autoplay_f = '0';
  var autoplay_t = 'false';
  var audioURL = audioFolder + MP3URL;

  var objTypeTag = "application/x-mplayer2"; // The  MIME type to load the WMP plugin in non-IE browsers on Windows
  if (visitorOS != "Windows") { objTypeTag = "audio/mpeg"}; // The MIME type for Macs and Linux

  if (autop == '1') {
    autoplay_f = '1';
    autoplay_t = 'true';
  }

  document.writeln("<div>");
  document.writeln("<strong style='font-size:18px; position:relative; top:-28px'>" + MP3title + "&nbsp;</strong>"); // Adjust font style to taste
  document.writeln("<object width='280' height='69'>"); // Width is the WMP minimum. Height = 45(WMP controls) + 24 (WMP status bar)
  document.writeln("<param name='type' value='" + objTypeTag + "'>");
  document.writeln("<param name='src' value='" + audioURL + "'>");
//  document.writeln("<param name='autostart' value='0'>");
  document.writeln("<param name='autostart' value='" + autoplay_f + "'>");
  document.writeln("<param name='showcontrols' value='1'>");
  document.writeln("<param name='showstatusbar' value='1'>");
//  document.writeln("<embed src ='" + audioURL + "' type='" + objTypeTag + "' autoplay='false' autostart='0' width='280' height='69' controller='1' showstatusbar='1' bgcolor='#ffffff'></embed>"); // Firefox and Opera Win require both autostart and autoplay
  document.writeln("<embed src ='" + audioURL + "' type='" + objTypeTag + "' autoplay='" + autoplay_t + "' autostart='" + autoplay_f + "' width='280' height='69' controller='1' showstatusbar='1' bgcolor='#ffffff'></embed>"); // Firefox and Opera Win require both autostart and autoplay
  document.writeln("</object>");
  document.writeln("</div>");
  document.close(); // Finalizes the document
}


function popPlayer(filedesc, filepath, WindowNumber, autop) {
  var autoplay_f = '0';
  var autoplay_t = 'false';
  // Get Operating System
  var isWin = navigator.userAgent.toLowerCase().indexOf("windows") !=-1
  if (isWin) { // Use MIME type = "application/x-mplayer2"
     visitorOS="Windows";
  } else { // Use MIME type = "audio/mpeg"; // or audio/x-wav or audio/x-ms-wma, etc.
     visitorOS="Other";
  }

  if (autop == '1') {
    autoplay_f = '1';
    autoplay_t = 'true';
  }

  // Get the MIME type of the audio file from its extension (for non-Windows browsers)
  var mimeType = "audio/mpeg"; // assume MP3/M3U
  var objTypeTag = "application/x-mplayer2"; // The Windows MIME type to load the WMP plug-in in Firefox, etc.
  var theExtension = filepath.substr(filepath.lastIndexOf('.')+1, 3); // truncates .aiff to aif
  if (theExtension.toLowerCase() == "wav") { mimeType = "audio/x-wav"};
  if (theExtension.toLowerCase() == "aif") { mimeType = "audio/x-aiff"};
  if (theExtension.toLowerCase() == "wma") { mimeType = "audio/x-ms-wma"};
  if (theExtension.toLowerCase() == "mid") { mimeType = "audio/mid"};
  // Add additional MIME types as desired

  if (visitorOS != "Windows") {
    objTypeTag = mimeType; // audio/mpeg, audio/x-wav, audio/x-ms-wma, etc.
  };

  PlayerWin = window.open('',WindowNumber,'width=320,height=217,top=0,left=0,screenX=0,screenY=0,resizable=0,scrollbars=0,titlebar=0,toolbar=0,menubar=0,stat us=0,directories=0');
  PlayerWin.focus();
  PlayerWin.document.writeln("<html><head><title>" + filedesc + "</title></head>");
  PlayerWin.document.writeln("<body bgcolor='#9999ff'>"); // specify background img if desired
  PlayerWin.document.writeln("<div align='center'>");
  PlayerWin.document.writeln("<b style ='font-size:18px;font-family:Lucida,sans-serif;line-height:1.6'>" + filedesc + "</b><br />");
  PlayerWin.document.writeln("<object width='280' height='69'>");
  PlayerWin.document.writeln("<param name='src' value='" + filepath + "'>");
  PlayerWin.document.writeln("<param name='type' value='" + objTypeTag + "'>");
//  PlayerWin.document.writeln("<param name='autostart' value='1'>");
  PlayerWin.document.writeln("<param name='autostart' value='" + autoplay_f + "'>");
  PlayerWin.document.writeln("<param name='showcontrols' value='1'>");
  PlayerWin.document.writeln("<param name='showstatusbar' value='1'>");
//  PlayerWin.document.writeln("<embed src ='" + filepath + "' type='" + objTypeTag + "' autoplay='true' width='280' height='69' controller='1' showstatusbar='1' bgcolor='#9999ff' kioskmode='true'>");
  PlayerWin.document.writeln("<embed src ='" + filepath + "' type='" + objTypeTag + "' autoplay='" + autoplay_t + "' autostart='" + autoplay_f + "' width='280' height='69' controller='1' showstatusbar='1' bgcolor='#9999ff' kioskmode='true'>");
  PlayerWin.document.writeln("</embed></object></div>");
  PlayerWin.document.writeln("<p style='font-size:12px;font-family:Lucida,sans-serif;text-align:center'><a href='" + filepath +"'>Download this file</a> <span style='font-size:10px'>(right-click or Control-click)</span></p>");
  PlayerWin.document.writeln("<form><div align='center'><input type='button' value='Close this window' onclick='javascript:window.close();'></div></form>");
  PlayerWin.document.writeln("</body></html>");
  PlayerWin.document.close(); // "Finalizes" new window
}

