//////////////////////////////////////////////////////
// source: juxtinteractive.com
// Author: anthony@juxtinteractive.com
// credits: netscape communications (client sniff)
// Permission granted to reuse and distribute
// Last Modified: 10-03-00
//////////////////////////////////////////////////////

/////////////////////////////////////////
// Convert userAgent string to Lowercase
/////////////////////////////////////////

var agt=navigator.userAgent.toLowerCase();

///////////////////
// Browser Version
///////////////////

var is_major = parseInt(navigator.appVersion);
var is_minor = parseFloat(navigator.appVersion);
var is_ns  = ((agt.indexOf('mozilla')!=-1) && (agt.indexOf('spoofer')==-1) && (agt.indexOf('compatible') == -1) && (agt.indexOf('opera')==-1) && (agt.indexOf('webtv')==-1));
var is_ns2 = (is_ns && (is_major == 2));
var is_ns3 = (is_ns && (is_major == 3));
var is_ns4 = (is_ns && (is_major == 4));
var is_ns4up = (is_ns && (is_major >= 4));
var is_ns5 = (is_ns && (is_major == 5));
var is_ns5up = (is_ns && (is_major >= 5));
var is_ie   = (agt.indexOf("msie") != -1);
var is_ie3  = (is_ie && (is_major < 4));
var is_ie4  = (is_ie && (is_major == 4) && (agt.indexOf("msie 5.0")==-1) && (agt.indexOf("msie 5.5")==-1));
var is_ie4up  = (is_ie  && (is_major >= 4));
var is_ie5  = (is_ie && (is_major == 4) && (agt.indexOf("msie 5.0")!=-1) || (agt.indexOf("msie 5.5")!=-1));
var is_ie5up  = (is_ie  && !is_ie3 && !is_ie4);
var is_aol   = (agt.indexOf("aol") != -1);
var is_aol3  = (is_aol && is_ie3);
var is_aol4  = (is_aol && is_ie4);
var is_opera = (agt.indexOf("opera") != -1);
var is_webtv = (agt.indexOf("webtv") != -1);

////////////
// Platform
////////////

var is_win   = ( (agt.indexOf("win")!=-1) || (agt.indexOf("16bit")!=-1) );
var is_win95 = ((agt.indexOf("win95")!=-1) || (agt.indexOf("windows 95")!=-1));
var is_win16 = ((agt.indexOf("win16")!=-1) || (agt.indexOf("16bit")!=-1) || (agt.indexOf("windows 3.1")!=-1) || (agt.indexOf("windows 16-bit")!=-1) );
var is_win31 = ((agt.indexOf("windows 3.1")!=-1) || (agt.indexOf("win16")!=-1) || (agt.indexOf("windows 16-bit")!=-1));
var is_win98 = ((agt.indexOf("win98")!=-1) || (agt.indexOf("windows 98")!=-1));
var is_winnt = ((agt.indexOf("winnt")!=-1) || (agt.indexOf("windows nt")!=-1));
var is_win32 = (is_win95 || is_winnt || is_win98 || ((is_major >= 4) && (navigator.platform == "Win32")) || (agt.indexOf("win32")!=-1) || (agt.indexOf("32bit")!=-1));
var is_os2   = ((agt.indexOf("os/2")!=-1) || (navigator.appVersion.indexOf("OS/2")!=-1) || (agt.indexOf("ibm-webexplorer")!=-1));
var is_mac   = (agt.indexOf("mac")!=-1);
var is_mac68k = (is_mac && ((agt.indexOf("68k")!=-1) || (agt.indexOf("68000")!=-1)));
var is_macppc = (is_mac && ((agt.indexOf("ppc")!=-1) || (agt.indexOf("powerpc")!=-1)));

/////////////////////////////////////
// Detect IE 4.5 on the mac
// Mucho Problemos with this browser
/////////////////////////////////////

var is_ie45mac  = (is_mac && is_ie && (agt.indexOf("msie 5.0")==-1) && (agt.indexOf("msie 5.5")==-1) && (agt.indexOf("msie 4.5")!=-1));

if (is_ie45mac)
{

}

//////////////////////
// Screen Resolution
//////////////////////

var clientWidth = (window.screen.width);
var clientHeight = (window.screen.Height);

//////////////////////////////////////////
// Flash 3, 4 AND 5 Detection
// Last Modified: 10-03-00
// NOT checking for enabledPlugin (buggy)
//////////////////////////////////////////

var is_flash5 = 0;
var is_flash4 = 0;
var is_flash3 = 0;

if (navigator.plugins["Shockwave Flash"]) {
	var plugin_version = 0;
	var plugin_description = navigator.plugins["Shockwave Flash"].description.split(" ");

	for (var i = 0; i < plugin_description.length; ++i) {
	if (isNaN(parseInt(plugin_description[i])))
	continue;
	plugin_version = plugin_description[i];
		}
	}
	if (plugin_version >= 5) {
	is_flash5 = 1;

	}

	if (plugin_version >= 4) {
	is_flash4 = 1;

	}

	if (plugin_version >= 3) {
	is_flash3 = 1;

	}

if (is_ie && is_win32) { // Check IE on windows for flash 3, 4 AND 5 using VB Script
	document.write('<SCRIPT LANGUAGE="VBScript"\>\n');
	document.write('on error resume next\n');
	document.write('is_flash5 = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.5")))\n');
	document.write('on error resume next\n');
	document.write('is_flash4 = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.4")))\n');
	document.write('on error resume next\n');
	document.write('is_flash3 = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.3")))\n');
	document.write('<'+'/SCRIPT> \n');
}

/////////////////////////////////////////
// Layer Functions (show, hide and move)
// Last Modified: 08-18-00
// Works with all 4.0 and up browsers
// Netscape/Mozilla 6.0 Compatable
/////////////////////////////////////////

var layerRef = '';
var styleRef = '';

if (is_ns5up || is_ie5up) {
	layerRef = 'document.getElementById';
	styleRef = '.style';

} else if (is_ns4) {
	layerRef = 'document.layers';
	styleRef = '';

} else {
	layerRef = 'document.all';
	styleRef = '.style';

}

function showLayer(theLayer) {
	if (is_ns5up || is_ie5up) {
	eval(layerRef + '("' +theLayer+ '")' + styleRef + '.visibility="visible"');

	} else {

	eval(layerRef + '["' +theLayer+ '"]' + styleRef + '.visibility="visible"');
	}
}

function hideLayer(theLayer) {
	if (is_ns5up || is_ie5up) {
	eval(layerRef + '("' +theLayer+ '")' + styleRef + '.visibility="hidden"');

	} else {

	eval(layerRef + '["' +theLayer+ '"]' + styleRef + '.visibility="hidden"');
	}
}

function moveLayer(theLayer,L,T) {

	if (is_ns4) {

	eval(layerRef + '["' +theLayer+ '"]' + styleRef + '.moveTo(L,T)');

	} else if (is_ns5up || is_ie5up) {

	eval(layerRef + '("' +theLayer+ '")' + styleRef + '.left=L');
	eval(layerRef + '("' +theLayer+ '")' + styleRef + '.top=T');

	} else {

	eval(layerRef + '["' +theLayer+ '"]' + styleRef + '.pixelLeft=L');
	eval(layerRef + '["' +theLayer+ '"]' + styleRef + '.pixelTop=T');

	}
}

///////////////////////
// Netscape Resize Fix
///////////////////////


/*function resizeFix() {
	if (widthCheck != window.innerWidth || heightCheck != window.innerHeight) {
		window.alert("resize fix");
		document.location.href = document.location.href;
	}
}*/
if (typeof(origWidth) == "undefined") {	var origWidth = 0, origHeight = 0; }
function reload() { statusBar("reloading due to resize.."); window.location.reload(); }
function check() { if (origWidth <= 0) { origWidth = window.innerWidth; origHeight = window.innerHeight; } /*window.alert("innerWidth: " + window.innerWidth + " (" +origWidth+"), innerHeight: " + window.innerHeight+" (" +origHeight+")");*/ if (window.innerWidth != origWidth || window.innerHeight != origHeight) setTimeout("reload()", 100); else setTimeout("check()", 1000); }
if ((is_ns4 || document.layers)) { setTimeout("check()", 2000); }

//////////////////////
// Status Bar Massage
//////////////////////

function statusBar(msg) {
	window.status = msg;
	return true;
}

/////////////////
// Pop Up Window
/////////////////

function openWin(theURL,winName,features) {
	newWin = window.open(theURL,winName,features);

}

function MM_findObj(n, d) { //v4.0
  n = new String(n);
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_controlShockwave(objStr,x,cmdName,frameNum) { //v3.0
	var obj=MM_findObj(objStr);
	if (obj) eval('obj.'+cmdName+'('+((cmdName=='GotoFrame')?frameNum:'')+')');
}

function popDemo() {
	newWin = window.open('flash-demo.html','Demo','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,width=500,height=300');
}

function samplePop(URL) {
	window.open(URL,'Sample','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=580,height=500');
}


////

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
	var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
	if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function showOnly(layerID)
{
	showLayer( layerID );

	for (var i = 0; i < layerIDs.length; i++)
	{
		if (layerIDs[i] != layerID)
			hideLayer(layerIDs[i]);
	}
}

var layerIDs = new Array("sub1", "sub2", "sub3", "sub4", "sub5", "sub6", "sub7", "sub8");

var click = -1;

function swapImage() {
   var a = swapImage.arguments;
   var imgObj = MM_findObj(a[0]);
   if ( imgObj != null ) {
	var source = imgObj.src.substr(0,imgObj.src.indexOf('images/')) + a[1];
	if (imgObj.src != source)
		imgObj.src = source;
   }
}

function changer( num ) {
	var temp = click;
	click = -1;
	if (temp != -1) {
		setTimeout("img_inact ("+temp+");", 200);
	}
	//setTimeout("img_inact ("+temp+");", 250);
	//img_act (num);
	click = num;
	//if ( num >= 0 && num <= imgIDs.length )
		setTimeout("swapImage(imgIDs["+num+"], '/images/' + imgNames["+num+"] + '_current.gif');", 250);
}

function img_act( num ) {
	if (num <= imgIDs.length && click != num)
	{
		swapImage(imgIDs[num],"/images/" + imgNames[num] + "_on.gif");
	}
}

function img_inact( num ) {
	if (num <= imgIDs.length && click != num)
	{
		swapImage(imgIDs[num],"/images/" + imgNames[num] + ".gif");
	}
}

function defAnim () {
	MM_controlShockwave("/flash2","","GotoFrame", 9);
}

var timeOut = -1;

function updateTopNav (layer, over, original)
{
	if (layer == original)
	{
		timeOut = -1;
		showLayer(layer);
		return;
	}

	if (over)
	{
		showLayer(layer);
		hideLayer(original);
		timeOut = -1;
	} else {
		hideLayer(layer);

		timeOut = (new Date()).getTime() + 400;
		setTimeout("checkTopNav('" + original + "');", 500);
	}
}

function checkTopNav (original)
{
	if (timeOut == -1)
		return;

	var time = (new Date()).getTime();

	if (time >= timeOut)
	{
		showLayer(original);
		timeOut = -1;
	}
}
