/*******************************************************
KERNAL
All code by Skyzyx Development Group, unless otherwise noted.
(c) 1997-2002, Skyzyx Technologies
http://www.skyzyx.com
*******************************************************/




/*******************************************************
SKYZYX ELEMENT 3 API DATA
*******************************************************/
// DECLARE THE ARRAY
var api = new Array();

// Basic Project Information
api.codename='Element 3 Project';
api.author='Skyzyx Development Group';
api.company='Skyzyx Technologies';
api.copyright='&#0169; 1997-2002';
api.url='http://www.skyzyx.com';

// License Information
api.license='Skyzyx Public Use License';
api.licenseurl='http://license.skyzyx.com';

// Basic Kernal-specific Information
api.kernalversion='7.62';
api.kernalmodified='September 16, 2002';




/*******************************************************
SIMPLIFY EVERYTHING
*******************************************************/
var ua=navigator.userAgent;



/*******************************************************
SKYZYX DEBUG
*******************************************************/
var skyzyx = new Array();

skyzyx.debug=(ua.toLowerCase().indexOf('skyzyx.com debugger') >0) ? true:false;




/*******************************************************
OPERATING SYSTEMS
*******************************************************/
// DECLARE THE ARRAY
var os = new Array();

// Microsoft Windows Platform
os.windows=(ua.indexOf('Win') != -1) ? true:false;

// Microsoft Windows 16-Bit
os.win16=(navigator.platform.indexOf('Win16') != -1);

// Microsoft Windows 9x
os.windows95=(os.windows && ua.indexOf('95') != -1) ? true:false; // Windows 95
os.windows98=(os.windows && ua.indexOf('98') != -1 && ua.indexOf('4.9') == -1) ? true:false; // Windows 98
os.windowsme=(os.windows && (ua.indexOf('4.9') != -1 || ua.indexOf('ME') != -1)) ? true:false; // Windows Me

// Microsoft Windows NT
var zwinntua=ua.split('NT');
var zwinntstring=parseFloat(zwinntua[1]);
os.windowsnt4=(os.windows && ua.indexOf('NT') != -1 && zwinntstring.toString() == '4') ? true:false; // Windows NT 4.0
os.windows2000=(os.windows && ((ua.indexOf('NT') != -1 && zwinntstring.toString() == '5') || ua.indexOf('2000') != -1)) ? true:false; // Windows 2000
os.windowsnt5=os.windows2000;
os.windowsxp=(os.windows && ((ua.indexOf('NT') != -1 && zwinntstring.toString() == '5.1') || ua.indexOf('XP') != -1)) ? true:false; // Windows XP
os.windowsnt51=os.windowsxp;

// Microsoft Windows 64-Bit
os.win64=(navigator.platform.indexOf('Win64') != -1) ? true:false;

// Apple Mac OS
os.mac=(ua.indexOf('Mac') != -1) ? true:false; // Mac Platform
os.mac68k=(os.mac && (ua.indexOf("68") != -1 || ua.indexOf("68k") != -1)) ? true:false; // 680x0-Based Mac
os.macppc=(os.mac && (ua.indexOf("PPC") != -1 || ua.indexOf("PowerPC") != -1 || ua.indexOf("Power PC") != -1)) ? true:false; // PowerPC-Based Mac
os.macosx=(os.mac && (ua.toLowerCase().indexOf('mac os x') != -1)) ? true:false; // Mac OS X

// BeOS
os.beos=(ua.indexOf('BeOS') != -1) ? true:false; // Be Platform
os.beos3=(os.beos && ua.indexOf(' 3.') != -1) ? true:false; // BeOS 3.x (Only works under Opera)
os.beos4=(os.beos && ua.indexOf(' 4.') != -1) ? true:false; // BeOS 4.0x (Only works under Opera)
os.beos45=(os.beos && ua.indexOf(' 4.5') != -1) ? true:false; // BeOS 4.5x (Only works under Opera)
os.beos5=(os.beos && ua.indexOf(' 5.') != -1) ? true:false; // BeOS 5.0x (Only works under Opera)

// IBM OS/2
os.os2=(ua.toLowerCase().indexOf('os/2') != -1) ? true:false;

// Linux
os.linux=(ua.toLowerCase().indexOf('inux') != -1) ? true:false;

// SunOS, Solaris
os.sun=(ua.toLowerCase().indexOf('sunos') != -1) ? true:false;

// SGI Irix
os.irix=(ua.toLowerCase().indexOf('irix') != -1) ? true:false;

// HP-UX
os.hpux=(ua.toLowerCase().indexOf('hp-ux') != -1) ? true:false;

// Apple AIX
os.aix=(ua.toLowerCase().indexOf('aix') != -1) ? true:false;

// Other UNIX
os.unix=(os.linux || os.sun || os.irix || os.hpux || os.aix || ua.toLowerCase().indexOf('sco') != -1 || ua.toLowerCase().indexOf('unix') != -1 || ua.toLowerCase().indexOf('ncr') != -1 || ua.toLowerCase().indexOf('dec') != -1 || ua.toLowerCase().indexOf('osfl') != -1 || ua.toLowerCase().indexOf('alpha') != -1 || ua.toLowerCase().indexOf('ultrix') != -1 || ua.toLowerCase().indexOf('sinix') != -1 || ua.toLowerCase().indexOf('bsd') != -1) ? true:false;

// "Or Newer"
os.windows95up=(os.windows95 || os.windows98 || os.windowsme || os.windowsxp || os.win64) ? true:false;
os.windows98up=(os.windows98 || os.windowsme || os.windowsxp || os.win64) ? true:false;
os.windowsmeup=(os.windowsme || os.windowsxp || os.win64) ? true:false;
os.windowsnt4up=(os.windowsnt4 || os.windows2000 || os.windowsxp || os.win64) ? true:false;
os.windows2000up=(os.windows2000 || os.windowsxp || os.win64) ? true:false;
os.windowsnt5up=os.windows2000up;
os.windowsxpup=(os.windowsxp || os.win64) ? true:false;
os.windowsnt51up=os.windowsxpup;
os.win64up=(os.win64);

// Manufacturer's Web Address
if (os.windows95) os.url='http://www.microsoft.com/windows95';
else if (os.windows98) os.url='http://www.microsoft.com/windows98';
else if (os.windowsme) os.url='http://www.microsoft.com/windowsme';
else if (os.windowsnt4) os.url='http://www.microsoft.com/ntworkstation';
else if (os.windows2000) os.url='http://www.microsoft.com/windows2000';
else if (os.windowsxp) os.url='http://www.microsoft.com/windowsxp';
else if (os.win64) os.url='http://www.microsoft.com/windows.netserver';
else if (os.mac) os.url='http://www.apple.com/macosx';
else if (os.beos) os.url='http://www.openbeos.org';
else if (os.linux) os.url='http://www.linux.com';
else if (os.sun) os.url='http://www.sun.com';
else if (os.os2) os.url='http://www.ibm.com';
else if (os.irix) os.url='http://www.sgi.com';
else if (os.hpux) os.url='http://www.hp.com';
else os.url='#';

// OS Version Name
if (os.windowsme) os.version = 'Windows Me';
else if (os.windowsxp) os.version = 'Windows XP';
else if (os.windows2000) os.version = 'Windows 2000';
else if (os.windowsnt4) os.version = 'Windows NT 4.0';
else if (os.windows98) os.version = 'Windows 98';
else if (os.windows95) os.version = 'Windows 95';
else if (os.macosx) os.version = 'Mac OS X';
else if (os.macppc) os.version = 'Mac OS';
else if (os.mac68k) os.version = 'Mac OS';
else if (os.beos3) os.version = 'BeOS r3';
else if (os.beos4) os.version = 'BeOS r4';
else if (os.beos45) os.version = 'BeOS r4.5';
else if (os.beos5) os.version = 'BeOS 5';
else if (os.beos) os.version = 'BeOS';
else if (os.linux) os.version = 'Linux';
else if (os.os2) os.version = 'OS/2';
else if (os.sun) os.version = 'SunOS/Solaris';
else if (os.irix) os.version = 'Irix';
else if (os.hpux) os.version = 'HP-UX';
else if (os.aix) os.version = 'AIX';
else if (os.unix) os.version = 'UNIX';
else os.version = 'Unknown OS';




/*******************************************************
BROWSERS
We tried to stay away from things like document.all, document.layers
and document.getElementById.  Later versions of a browser may 
support these elements that it didn't before, causing much confusion.
*******************************************************/
// DECLARE THE ARRAY
var browser = new Array();

// Opera Browser
browser.opera=(ua.indexOf('Opera') != -1) ? true:false;
browser.ver=0;
if (ua.indexOf('Opera ') != -1)
{
	browser.split=ua.split('Opera ');
	browser.ver=parseInt(browser.split[1]);
}
else if (ua.indexOf('Opera/') != -1)
{
	browser.split=ua.split('Opera/');
	browser.ver=parseInt(browser.split[1]);
}
browser.opera3=(browser.opera && browser.ver == 3) ? true:false;
browser.opera4=(browser.opera && browser.ver == 4) ? true:false;
browser.opera5=(browser.opera && browser.ver == 5) ? true:false;
browser.opera6=(browser.opera && browser.ver == 6) ? true:false;
browser.opera7=(browser.opera && browser.ver == 7) ? true:false;
browser.opera8=(browser.opera && browser.ver == 8) ? true:false;
browser.opera9=(browser.opera && browser.ver == 9) ? true:false;

// Opera "Or Newer"
browser.opera3up=(browser.opera && browser.ver >= 3) ? true:false;
browser.opera4up=(browser.opera && browser.ver >= 4) ? true:false;
browser.opera5up=(browser.opera && browser.ver >= 5) ? true:false;
browser.opera6up=(browser.opera && browser.ver >= 6) ? true:false;
browser.opera7up=(browser.opera && browser.ver >= 7) ? true:false;
browser.opera8up=(browser.opera && browser.ver >= 8) ? true:false;
browser.opera9up=(browser.opera && browser.ver >= 9) ? true:false;

// Internet Explorer
browser.ie=(ua.indexOf('MSIE') != -1 && !browser.opera);
browser.split=ua.split('MSIE');
browser.ver=parseInt(browser.split[1]);
browser.verFloat=parseFloat(browser.split[1]);
browser.ie4=(browser.ie && browser.ver == 4) ? true:false;
browser.ie5=(browser.ie && browser.ver == 5) ? true:false;
browser.ie55=(browser.ie && browser.verFloat == 5.5) ? true:false;
browser.ie6=(browser.ie && browser.ver == 6) ? true:false;
browser.ie7=(browser.ie && browser.ver == 7) ? true:false;
browser.ie8=(browser.ie && browser.ver == 8) ? true:false;
browser.ie9=(browser.ie && browser.ver == 9) ? true:false;

// IE "Or Newer"
browser.ie4up=(browser.ie && browser.ver >= 4) ? true:false;
browser.ie5up=(browser.ie && browser.ver >= 5) ? true:false;
browser.ie55up=(browser.ie && browser.verFloat >= 5.5) ? true:false;
browser.ie6up=(browser.ie && browser.ver >= 6) ? true:false;
browser.ie7up=(browser.ie && browser.ver >= 7) ? true:false;
browser.ie8up=(browser.ie && browser.ver >= 8) ? true:false;
browser.ie9up=(browser.ie && browser.ver >= 9) ? true:false;

// MSN Explorer
browser.msn=(ua.indexOf('MSN') != -1 && !browser.opera);
browser.split=ua.split('MSN');
browser.ver=parseInt(browser.split[1]);
browser.msn6=(browser.msn && browser.ver == 6) ? true:false;
browser.msn7=(browser.msn && browser.ver == 7) ? true:false;
browser.msn8=(browser.msn && browser.ver == 8) ? true:false;
browser.msn9=(browser.msn && browser.ver == 9) ? true:false;

// MSN "Or Newer"
browser.msn6up=(browser.msn && browser.ver >= 6) ? true:false;
browser.msn7up=(browser.msn && browser.ver >= 7) ? true:false;
browser.msn8up=(browser.msn && browser.ver >= 8) ? true:false;
browser.msn9up=(browser.msn && browser.ver >= 9) ? true:false;

// Netscape Navigator/Communicator
browser.netscape=((ua.indexOf('Netscape') != -1 && !browser.opera) || document.layers) ? true:false;
browser.split=ua.split('Mozilla/');
browser.ver=parseInt(browser.split[1]);
browser.netscape4=(browser.netscape && browser.ver == 4) ? true:false;
browser.split=ua.split('Netscape6/');
browser.ver=parseInt(browser.split[1]);
browser.verFloat=parseFloat(browser.split[1]);
browser.netscape6=(browser.netscape && browser.ver == 6) ? true:false;
browser.netscape62=(browser.netscape && browser.verFloat == 6.2) ? true:false;
browser.split=ua.split('Netscape/');
browser.ver=parseInt(browser.split[1]);
browser.netscape7=(browser.netscape && browser.ver == 7) ? true:false;
browser.netscape8=(browser.netscape && browser.ver == 8) ? true:false;
browser.netscape9=(browser.netscape && browser.ver == 9) ? true:false;

// Netscape "Or Newer"
browser.split=ua.split('Mozilla/');
browser.ver=parseInt(browser.split[1]);
browser.netscape4up=(browser.netscape && browser.ver >= 4) ? true:false;
browser.split=ua.split('Netscape6/');
browser.ver=parseInt(browser.split[1]);
browser.verFloat=parseFloat(browser.split[1]);
browser.netscape6up=(browser.netscape && browser.ver >= 6) ? true:false;
browser.netscape62up=(browser.netscape && browser.verFloat >= 6.2) ? true:false;
browser.split=ua.split('Netscape/');
browser.ver=parseInt(browser.split[1]);
browser.netscape7up=(browser.netscape && browser.ver >= 7) ? true:false;
browser.netscape8up=(browser.netscape && browser.ver >= 8) ? true:false;
browser.netscape9up=(browser.netscape && browser.ver >= 9) ? true:false;
if (browser.netscape && browser.ver >= 7)
{
	browser.netscape6up=true;
	browser.netscape62up=true;
}

// Gecko-based browsers
browser.gecko = (ua.indexOf('Gecko') != -1 && !browser.opera) ? true:false;

// America Online/AOL
browser.aol=(ua.indexOf('AOL') != -1 && !browser.opera) ? true:false;
if (browser.gecko && browser.aol) // If AOL with embedded Gecko
{
	browser.split=ua.split('AOL/');
	browser.ver=parseInt(browser.split[1]);
	browser.aolie=false;
}
else // If AOL with embedded Internet Explorer
{
	browser.split=ua.split('AOL');
	browser.ver=parseInt(browser.split[1]);
	browser.aolie=true;
}
browser.aol5=(browser.aol && browser.ver == 5) ? true:false;
browser.aol6=(browser.aol && browser.ver == 6) ? true:false;
browser.aol7=(browser.aol && browser.ver == 7) ? true:false;
browser.aol8=(browser.aol && browser.ver == 8) ? true:false;
browser.aol9=(browser.aol && browser.ver == 9) ? true:false;

// AOL "Or Newer"
browser.aol5up=(browser.aol && browser.ver >= 5) ? true:false;
browser.aol6up=(browser.aol && browser.ver >= 6) ? true:false;
browser.aol7up=(browser.aol && browser.ver >= 7) ? true:false;
browser.aol8up=(browser.aol && browser.ver >= 8) ? true:false;
browser.aol9up=(browser.aol && browser.ver >= 9) ? true:false;

// Mozilla browsers
browser.mozilla=(navigator.appName.indexOf('Netscape') != -1 && !browser.netscape && !browser.opera && !browser.aol);
if (browser.mozilla)
{
	browser.split=ua.split('rv:');
	browser.ver=parseInt(browser.split[1]);
}
browser.mozilla0=(browser.mozilla && browser.ver == 0) ? true:false;
browser.mozilla1=(browser.mozilla && browser.ver == 1) ? true:false;

// Mozilla "Or Newer"
browser.mozilla1up=(browser.mozilla && browser.ver >= 1) ? true:false;

// Internet Explorer-based browsers
browser.iebased=(browser.ie || browser.msn) ? true:false;

// TV-Based Internet
browser.webtv=(ua.indexOf('webtv') != -1) ? true:false;
browser.tvnavio=(ua.indexOf('navio') != -1) ? true:false;
browser.aoltv=browser.tvnavio;
browser.msntv=browser.webtv;

// Additional Gecko Commands
if (browser.gecko)
{
	var gko=navigator.userAgent.indexOf('Gecko');
	browser.geckobuild=navigator.userAgent.substring(gko+6, gko+14);

	var gkoYR=browser.geckobuild.substring(0,4);
	var gkoMO=browser.geckobuild.substring(4,6);
	var gkoDY=browser.geckobuild.substring(6,8);

	if (gkoMO == '01') gkoMO1='January';
	else if (gkoMO == '02') gkoMO1='February';
	else if (gkoMO == '03') gkoMO1='March';
	else if (gkoMO == '04') gkoMO1='April';
	else if (gkoMO == '05') gkoMO1='May';
	else if (gkoMO == '06') gkoMO1='June';
	else if (gkoMO == '07') gkoMO1='July';
	else if (gkoMO == '08') gkoMO1='August';
	else if (gkoMO == '09') gkoMO1='September';
	else if (gkoMO == '10') gkoMO1='October';
	else if (gkoMO == '11') gkoMO1='November';
	else if (gkoMO == '12') gkoMO1='December';

	browser.geckodate=gkoMO1+' '+gkoDY+', '+gkoYR;
}
else
{
	browser.geckobuild=false;
	browser.geckodate=false;
}

// Manufacturer's Web Address
if (browser.netscape) browser.url='http://www.netscape.com/download';
else if (browser.mozilla) browser.url='http://www.mozilla.org';
else if (browser.opera) browser.url='http://www.opera.com';
else if (browser.msn) browser.url='http://explorer.msn.com';
else if (browser.aol) browser.url='http://www.aol.com';
else if (browser.ie)
{
	if (os.windows) browser.url='http://www.microsoft.com/windows/ie';
	else if (os.mac) browser.url='http://www.microsoft.com/mac/ie';
	else if (os.unix) browser.url='http://www.microsoft.com/unix/ie';
}
else browser.url='#';

// Browser Version Sniffer
function xBrowser()
{
	var name=navigator.appName;
	var version=navigator.appVersion;

	if (browser.opera)
	{
		name="Opera";
		var opVer=navigator.userAgent; // Something to start with
		if (opVer.indexOf('Opera/') != -1) opSplit=opVer.split('Opera/');
		else opSplit=opVer.split('Opera');
		var opVerParsed=parseFloat(opSplit[1]);

		if (opVerParsed.toString().length==1) opVerParsed+=".0";

		version=opVerParsed;
	}
	else if (browser.gecko && browser.aol)
	{
		name="AOL";
		var aolVer=navigator.userAgent; // Something to start with
		aolSplit=aolVer.split('AOL/');
		var aolVerParsed=parseFloat(aolSplit[1]);
		
		if (aolVerParsed.toString().length==1) aolVerParsed+=".0";
			
		version=aolVerParsed;
	}
	else if (browser.mozilla)
	{
		name="Mozilla";
		var mozVer=navigator.userAgent; // Something to start with
		var mozVerIndexStart=mozVer.indexOf('rv:');
		var mozVerIndexEnd=mozVer.indexOf(') ');
		version=mozVer.substring(mozVerIndexStart+3, mozVerIndexEnd);
	}
	else if (browser.netscape)
	{
		name="Netscape";
		ns4ua=ua.split('Mozilla/');

		if (browser.netscape6up)
		{
			if (browser.netscape6)
			{
				var nsVerStart=ua.split('Netscape6/'); // Look for the point where this text starts
				var nsVerEnd=nsVerStart[1].split(' ');
				version=nsVerEnd[0];
			}
			else
			{
				var nsVerStart=ua.split('Netscape/'); // Look for the point where this text starts
				var nsVerEnd=nsVerStart[1].split(' ');
				version=nsVerEnd[0];
			}
		}

		else version=parseFloat(ns4ua[1]); // Save the very beginning of the appVersion
	}
	else if (browser.ie)
	{
		if (browser.msn)
		{
			name="MSN Explorer";
			var msnVer=navigator.userAgent; // Something to start with
			msnSplit=msnVer.split('MSN');
			var msnVerParsed=parseFloat(msnSplit[1]);

			if (msnVerParsed.toString().length==1) msnVerParsed+=".0";

			version=msnVerParsed;
		}
		else if (browser.aol)
		{
			name="AOL";
			var aolVer=navigator.userAgent; // Something to start with
			aolSplit=aolVer.split('AOL');
			var aolVerParsed=parseFloat(aolSplit[1]);
		
			if (aolVerParsed.toString().length==1) aolVerParsed+=".0";
			
			version=aolVerParsed;
		}
		else // If Native Internet Explorer
		{
			name="Internet Explorer";
			var ieVer=navigator.userAgent; // Something to start with
			ieSplit=ieVer.split('MSIE');
			var ieVerParsed=parseFloat(ieSplit[1]);
		
			if (ieVerParsed.toString().length==1) ieVerParsed+=".0";
			
			version=ieVerParsed;
		}
	}

	var browserVersion=name+' '+version;
	return browserVersion;
}

browser.version=xBrowser();




/*******************************************************
PROCESSORS (CPU CLASS)
Internet Explorer/AOL/MSN.  Gecko/Opera values are faked, and not foolproof.
*******************************************************/
// DECLARE THE ARRAY
var cpu = new Array();

if (browser.ie)
{
	cpu.ppc=(navigator.cpuClass.indexOf('ppc') != -1) ? true:false; // Motorola/IBM Power PC
	cpu.m68k=(navigator.cpuClass.indexOf('68k') != -1) ? true:false; // Motorola's 680x0
	cpu.x86=(navigator.cpuClass.indexOf('x86') != -1) ? true:false; // Intel's 80x86 or compatible
	cpu.alpha=(navigator.cpuClass.indexOf('Alpha') != -1) ? true:false; // Digital Processor
	cpu.other=(navigator.cpuClass.indexOf('Other') != -1) ? true:false; // Other Processor, including Sun's SPARC
	cpu.version='false';
}
else // Fake it for other browsers...
{
	cpu.ppc=(os.macppc) ? true:false; // Motorola/IBM Power PC
	cpu.m68k=(os.mac68k) ? true:false; // Motorola's 680x0
	cpu.x86=(os.windows || os.linux || os.beos) ? true:false; // Intel's 80x86 or compatible
	cpu.alpha=false; // Digital Processor
	cpu.other=(os.unix) ? true:false; // Other Processor, including Sun's SPARC
	cpu.version='false';
}

if (cpu.ppc) cpu.version='Power PC';
else if (cpu.m68k) cpu.version='680x0';
else if (cpu.x86) cpu.version='x86';
else if (cpu.alpha) cpu.version='Alpha';
else if (cpu.other) cpu.version='Other';




/*******************************************************
ONLINE MODE
Internet Explorer/AOL/MSN Only.  Gecko/Opera not supported.
*******************************************************/
// DECLARE THE ARRAY
var modem = new Array();

if (browser.ie)
{
	// Set as OFFLINE unless changed.
	modem.online=false;
	modem.offline=true;

	modem.online=navigator.onLine;
	modem.offline=!modem.online;
}
else // Fake it for other browsers...
{
	modem.online=true;
	modem.offline=false;
}




/*******************************************************
JAVASCRIPT
*******************************************************/
// DECALRE THE ARRAY
var javascript = new Array();

function jsVersion()
{
	document.write('<script language="JavaScript1.0">');
	document.write('var jsVer=1.0;');
	document.write('</script>');

	document.write('<script language="JavaScript1.1">');
	document.write('var jsVer=1.1;');
	document.write('</script>');

	document.write('<script language="JavaScript1.2">');
	document.write('var jsVer=1.2;');
	document.write('</script>');

	document.write('<script language="JavaScript1.3">');
	document.write('var jsVer=1.3;');
	document.write('</script>');

	document.write('<script language="JavaScript1.4">');
	document.write('var jsVer=1.4;');
	document.write('</script>');

	document.write('<script language="JavaScript1.5">');
	document.write('var jsVer=1.5;');
	document.write('</script>');

	document.write('<script language="JavaScript1.6">');
	document.write('var jsVer=1.6;');
	document.write('</script>');

	document.write('<script language="JavaScript1.7">');
	document.write('var jsVer=1.7;');
	document.write('</script>');

	document.write('<script language="JavaScript1.8">');
	document.write('var jsVer=1.8;');
	document.write('</script>');

	document.write('<script language="JavaScript1.9">');
	document.write('var jsVer=1.9;');
	document.write('</script>');

	document.write('<script language="JavaScript2.0">');
	document.write('var jsVer=2.0;');
	document.write('</script>');

	return jsVer;
}

javascript.version=jsVersion();

// Equal Levels
javascript.is10=(javascript.version == 1.0) ? true:false;
javascript.is11=(javascript.version == 1.1) ? true:false;
javascript.is12=(javascript.version == 1.2) ? true:false;
javascript.is13=(javascript.version == 1.3) ? true:false;
javascript.is14=(javascript.version == 1.4) ? true:false;
javascript.is15=(javascript.version == 1.5) ? true:false;
javascript.is16=(javascript.version == 1.6) ? true:false;
javascript.is17=(javascript.version == 1.7) ? true:false;
javascript.is18=(javascript.version == 1.8) ? true:false;
javascript.is19=(javascript.version == 1.9) ? true:false;
javascript.is20=(javascript.version == 2.0) ? true:false;

// Minimum Levels.  JS Support Must Be At Least...
javascript.min10=(javascript.version >= 1.0) ? true:false;
javascript.min11=(javascript.version >= 1.1) ? true:false;
javascript.min12=(javascript.version >= 1.2) ? true:false;
javascript.min13=(javascript.version >= 1.3) ? true:false;
javascript.min14=(javascript.version >= 1.4) ? true:false;
javascript.min15=(javascript.version >= 1.5) ? true:false;
javascript.min16=(javascript.version >= 1.6) ? true:false;
javascript.min17=(javascript.version >= 1.7) ? true:false;
javascript.min18=(javascript.version >= 1.8) ? true:false;
javascript.min19=(javascript.version >= 1.9) ? true:false;
javascript.min20=(javascript.version >= 2.0) ? true:false;




/*******************************************************
SCREEN RESOLUTION
*******************************************************/
// DECLARE THE ARRAY
var resolution = new Array();

var wide=screen.width;
var high=screen.height;

function xRes()
{
	var wide=screen.width; // How wide is your screen? (Larger number than Height)
	var high=screen.height; // How tall is your screen? (Smaller number than Width)
	var display=wide+' x '+high;

	return display;
}

resolution.is640x480=(wide==640 && high==480) ? true:false;
resolution.is800x600=(wide==800 && high==600) ? true:false;
resolution.is832x624=(wide==832 && high==624) ? true:false;
resolution.is1024x768=(wide==1024 && high==768) ? true:false;
resolution.is1152x870=(wide==1152 && high==870) ? true:false;
resolution.is1280x1024=(wide==1280 && high==1024) ? true:false;
resolution.is1600x1200=(wide==1600 && high==1200) ? true:false;

resolution.min640x480=(wide>=640 && high>=480) ? true:false;
resolution.min800x600=(wide>=800 && high>=600) ? true:false;
resolution.min832x624=(wide>=832 && high>=624) ? true:false;
resolution.min1024x768=(wide>=1024 && high>=768) ? true:false;
resolution.min1152x870=(wide>=1152 && high>=870) ? true:false;
resolution.min1280x1024=(wide>=1280 && high>=1024) ? true:false;
resolution.min1600x1200=(wide>=1600 && high>=1200) ? true:false;

resolution.size=xRes();




/*******************************************************
MAINSTREAM PLUG-INS
Original source code by Frederic - fw4@tvd.be
Modified by Skyzyx Development Group
*******************************************************/
// DECLARE THE ARRAY
var plugin = new Array();

// CREATE FUNCTION FOR INTERNET EXPLORER
function detectIE(ClassID,name)
{
	result = false;
	document.write('<SCRIPT LANGUAGE=VBScript>\n ');
	document.write('on error resume next \n ');
	document.write('result = IsObject(CreateObject("' + ClassID + '"))');
	document.write('</SCRIPT>\n');
	if (result) return name+',';
	else return '';
}

// CREATE FUNCTION FOR NETSCAPE
function detectNS(ClassID,name)
{
	n = "";
	if (nse.indexOf(ClassID) != -1)
	{
		if (navigator.mimeTypes[ClassID].enabledPlugin != null) n = name+",";
		return n;
	}
}

if (browser.iebased && os.windows)
{
	//pluginlist = detectIE("Adobe.SVGCtl","SVG Viewer") + detectIE("SWCtl.SWCtl.1","Shockwave Director") + detectIE("rmocx.RealPlayer G2 Control.1","RealPlayer") + detectIE("MediaPlayer.MediaPlayer.1","Windows Media Player") + detectIE("PDF.PdfCtrl.5","Acrobat Reader");
}

else if (!os.windows || (os.windows && !browser.ie))
{
	if (navigator.plugins.length > 0)
	{
		nse = "";
		for (var i=0;i<navigator.mimeTypes.length;i++) nse += navigator.mimeTypes[i].type.toLowerCase();
		//pluginlist = detectNS("image/svg-xml","SVG Viewer") + detectNS("application/x-director","Shockwave Director") + detectNS("audio/x-pn-realaudio-plugin","RealPlayer") + detectNS("application/x-mplayer2","Windows Media Player") + detectNS("application/pdf","Acrobat Reader");
	}
	else pluginlist='';
}

else pluginlist='';

//if (pluginlist.length > 0) pluginlist = pluginlist.substring(0,pluginlist.length-1);

//plugin.svg=(pluginlist.indexOf("SVG Viewer")!=-1);
//plugin.shockwave=(pluginlist.indexOf("Shockwave Director")!=-1);
//plugin.windowsmedia=(pluginlist.indexOf("Windows Media Player")!=-1);
//plugin.acrobat=(pluginlist.indexOf("Acrobat Reader")!=-1);
//plugin.real=(pluginlist.indexOf("RealPlayer")!=-1);




/*******************************************************
ACROBAT
Netscape/Mozilla/Opera Only.  Not yet compatible with Internet Explorer.
*******************************************************/
var numPlugs=navigator.plugins.length;
if (numPlugs)
{
	plugin.acrobatversion='0.0'; // Default Value

	for (var x=0; x<numPlugs; x++)
	{
		var pluginacro = navigator.plugins[x];

		if (pluginacro.name.toLowerCase().indexOf('adobe acrobat') != -1)
		{
			var acroVer=pluginacro.description.toLowerCase().split('version ');
			var acroParsedVer=parseFloat(acroVer[1]);
			if (acroParsedVer.toString().length == 1) acroParsedVer+='.0';
			plugin.acrobatversion=acroParsedVer;
			break;
		}
	}
}
else plugin.acrobatversion='0.0'; // For Internet Explorer

plugin.acrobat3=(plugin.acrobat && parseInt(plugin.acrobatversion) == 3) ? true:false;
plugin.acrobat3up=(plugin.acrobat && parseInt(plugin.acrobatversion) >= 3) ? true:false;
plugin.acrobat4=(plugin.acrobat && parseInt(plugin.acrobatversion) == 4) ? true:false;
plugin.acrobat4up=(plugin.acrobat && parseInt(plugin.acrobatversion) >= 4) ? true:false;
plugin.acrobat5=(plugin.acrobat && parseInt(plugin.acrobatversion) == 5) ? true:false;
plugin.acrobat5up=(plugin.acrobat && parseInt(plugin.acrobatversion) >= 5) ? true:false;
plugin.acrobat6=(plugin.acrobat && parseInt(plugin.acrobatversion) == 6) ? true:false;
plugin.acrobat6up=(plugin.acrobat && parseInt(plugin.acrobatversion) >= 6) ? true:false;
plugin.acrobat7=(plugin.acrobat && parseInt(plugin.acrobatversion) == 7) ? true:false;
plugin.acrobat7up=(plugin.acrobat && parseInt(plugin.acrobatversion) >= 7) ? true:false;
plugin.acrobat8=(plugin.acrobat && parseInt(plugin.acrobatversion) == 8) ? true:false;
plugin.acrobat8up=(plugin.acrobat && parseInt(plugin.acrobatversion) >= 8) ? true:false;
plugin.acrobat9=(plugin.acrobat && parseInt(plugin.acrobatversion) == 9) ? true:false;
plugin.acrobat9up=(plugin.acrobat && parseInt(plugin.acrobatversion) >= 9) ? true:false;




/*******************************************************
QUICKTIME-SPECIFIC
VB Script code by Henrik Gemal; http://www.gemal.dk
Everything else by Skyzyx Development Group
*******************************************************/
var i_quicktime=false;
var v_quicktime='0.0';
/*
var numPlugs=navigator.plugins.length;
if (numPlugs)
{
	plugin.quicktimeversion='0.0';

	for (var x=0; x<numPlugs; x++)
	{
		var pluginQT = navigator.plugins[x];

		if (pluginQT.name.toLowerCase().indexOf('quicktime plug-in') != -1)
		{
			var QTVer=pluginQT.name.toLowerCase().split('quicktime plug-in ');
			i_quicktime=true;
			v_quicktime=QTVer[1];
			break;
		}
	}
}
else plugin.quicktimeversion=''; // For Internet Explorer

document.write('<script language="vbscript"> \n ');
document.write('on error resume next \n ');
document.write('set obj_qt = CreateObject("QuickTimeCheckObject.QuickTimeCheck.1") \n ');
document.write('if IsObject(obj_qt) then \n ');
document.write('i_quicktime = obj_qt.IsQuickTimeAvailable(0) \n ');
document.write('v_quicktime = hex(obj_qt.QuickTimeVersion) \n ');
document.write('end if \n ');
document.write('</script>');

plugin.quicktime=i_quicktime;
var zQTVerProcess3=v_quicktime;

if (browser.iebased && os.windows) // For Internet Explorer, AOL or MSN Explorer
{
	var zQTVerProcess1=v_quicktime.substring(0,3); // For 5.0.1, returns 5018000.  Only look for first 3 digits, "501"
	var zQTVerProcess2=zQTVerProcess1.substring(0,1) + '.' + zQTVerProcess1.substring(1,2) + '.' + zQTVerProcess1.substring(2,3); // Place periods between the first three digits, "5.0.1"

	if (zQTVerProcess2.substring(4,5) == "0") var zQTVerProcess3=zQTVerProcess2.substring(0,3);
	else zQTVerProcess3=zQTVerProcess2;
}

if (plugin.quicktime) plugin.quicktimeversion=zQTVerProcess3;
else plugin.quicktimeversion='0.0';

plugin.quicktime2=(parseInt(zQTVerProcess3) == 2) ? true:false;
plugin.quicktime2up=(parseInt(zQTVerProcess3) >= 2) ? true:false;
plugin.quicktime3=(parseInt(zQTVerProcess3) == 3) ? true:false;
plugin.quicktime3up=(parseInt(zQTVerProcess3) >= 3) ? true:false;
plugin.quicktime4=(parseInt(zQTVerProcess3) == 4) ? true:false;
plugin.quicktime4up=(parseInt(zQTVerProcess3) >= 4) ? true:false;
plugin.quicktime5=(parseInt(zQTVerProcess3) == 5) ? true:false;
plugin.quicktime5up=(parseInt(zQTVerProcess3) >= 5) ? true:false;
plugin.quicktime6=(parseInt(zQTVerProcess3) == 6) ? true:false;
plugin.quicktime6up=(parseInt(zQTVerProcess3) >= 6) ? true:false;
plugin.quicktime7=(parseInt(zQTVerProcess3) == 7) ? true:false;
plugin.quicktime7up=(parseInt(zQTVerProcess3) >= 7) ? true:false;
plugin.quicktime8=(parseInt(zQTVerProcess3) == 8) ? true:false;
plugin.quicktime8up=(parseInt(zQTVerProcess3) >= 8) ? true:false;
plugin.quicktime9=(parseInt(zQTVerProcess3) == 9) ? true:false;
plugin.quicktime9up=(parseInt(zQTVerProcess3) >= 9) ? true:false;

*/


/*******************************************************
JAVA-SPECIFIC
Netscape/Mozilla/Opera Only.  Not yet compatible with Internet Explorer.
*******************************************************/
// This part IS compatible with Internet Explorer
plugin.java=navigator.javaEnabled() ? true:false;

// This part IS NOT compatible with Internet Explorer
var numPlugs=navigator.plugins.length;
if (numPlugs)
{
	plugin.javaversion='0.0';

	for (var x=0; x<numPlugs; x++)
	{
		var pluginjava = navigator.plugins[x];

		if (pluginjava.name.toLowerCase().indexOf('java plug-in') != -1)
		{
			var javaVer=pluginjava.description.toLowerCase().split('java plug-in ');
			var javaVer2=javaVer[1].split(' for');
			plugin.javaversion=javaVer2[0];
			break;
		}
	}
}
else plugin.javaversion='0.0'; // For Internet Explorer




/*******************************************************
FLASH-SPECIFIC
Original source code by Macromedia; http://www.macromedia.com
Modified by Skyzyx Development Group
*******************************************************/
var zFlashExist=false;
var zFlash3=false;
var zFlash4=false;
var zFlash5=false;
var zFlash6=false;
var zFlash7=false;
var zFlash8=false;
var zFlash9=false;
var testMime=false;
var testVB=false;

var pluginExist = (navigator.mimeTypes && navigator.mimeTypes["application/x-shockwave-flash"]) ? navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin : 0;

if (navigator.plugins.length > 0) testMime=true;

if (pluginExist)
{
	var words = navigator.plugins["Shockwave Flash"].description.split(" ");
	for (var i = 0; i < words.length; ++i)
	{
		if (isNaN(parseInt(words[i])))
		continue;
		var flashVersion = words[i]; 
		var zFlashExist = true;
	}
}

else if (browser.ie && os.windows)
{
	document.write('<SCRIPT LANGUAGE=VBScript\> \n');
	document.write('on error resume next \n');
	document.write('testVB = true\n');
	document.write('</SCRIPT\> \n');

	var thisVersion=3;
	document.write('<SCRIPT LANGUAGE=VBScript\> \n');
	document.write('on error resume next \n');
	document.write('zFlash3 = ( IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash." & thisVersion)))\n');
	document.write('zFlashExist = true \n');
	document.write('</SCRIPT\> \n');

	var thisVersion=4;
	document.write('<SCRIPT LANGUAGE=VBScript\> \n');
	document.write('on error resume next \n');
	document.write('zFlash4 = ( IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash." & thisVersion)))\n');
	document.write('zFlashExist = true \n');
	document.write('</SCRIPT\> \n');

	var thisVersion=5;
	document.write('<SCRIPT LANGUAGE=VBScript\> \n');
	document.write('on error resume next \n');
	document.write('zFlash5 = ( IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash." & thisVersion)))\n');
	document.write('zFlashExist = true \n');
	document.write('</SCRIPT\> \n');

	var thisVersion=6;
	document.write('<SCRIPT LANGUAGE=VBScript\> \n');
	document.write('on error resume next \n');
	document.write('zFlash6 = ( IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash." & thisVersion)))\n');
	document.write('zFlashExist = true \n');
	document.write('</SCRIPT\> \n');

	var thisVersion=7;
	document.write('<SCRIPT LANGUAGE=VBScript\> \n');
	document.write('on error resume next \n');
	document.write('zFlash7 = ( IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash." & thisVersion)))\n');
	document.write('zFlashExist = true \n');
	document.write('</SCRIPT\> \n');

	var thisVersion=8;
	document.write('<SCRIPT LANGUAGE=VBScript\> \n');
	document.write('on error resume next \n');
	document.write('zFlash8 = ( IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash." & thisVersion)))\n');
	document.write('zFlashExist = true \n');
	document.write('</SCRIPT\> \n');

	var thisVersion=9;
	document.write('<SCRIPT LANGUAGE=VBScript\> \n');
	document.write('on error resume next \n');
	document.write('zFlash9 = ( IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash." & thisVersion)))\n');
	document.write('zFlashExist = true \n');
	document.write('</SCRIPT\> \n');
}

if (testMime)
{
	// I love MimeType versions.  They're so easy.
	plugin.flash=zFlashExist;

	if (plugin.flash) plugin.flashversion=flashVersion;
	else plugin.flashversion='0.0';

	plugin.flash3=(plugin.flash && parseInt(flashVersion) == 3) ? true:false;
	plugin.flash4=(plugin.flash && parseInt(flashVersion) == 4) ? true:false;
	plugin.flash5=(plugin.flash && parseInt(flashVersion) == 5) ? true:false;
	plugin.flash6=(plugin.flash && parseInt(flashVersion) == 6) ? true:false;
	plugin.flash7=(plugin.flash && parseInt(flashVersion) == 7) ? true:false;
	plugin.flash8=(plugin.flash && parseInt(flashVersion) == 8) ? true:false;
	plugin.flash9=(plugin.flash && parseInt(flashVersion) == 9) ? true:false;

	plugin.flash3up=(plugin.flash && parseInt(flashVersion) >= 3) ? true:false;
	plugin.flash4up=(plugin.flash && parseInt(flashVersion) >= 4) ? true:false;
	plugin.flash5up=(plugin.flash && parseInt(flashVersion) >= 5) ? true:false;
	plugin.flash6up=(plugin.flash && parseInt(flashVersion) >= 6) ? true:false;
	plugin.flash7up=(plugin.flash && parseInt(flashVersion) >= 7) ? true:false;
	plugin.flash8up=(plugin.flash && parseInt(flashVersion) >= 8) ? true:false;
	plugin.flash9up=(plugin.flash && parseInt(flashVersion) >= 9) ? true:false;
}

else if (testVB)
{
	// Value set from within VB Scripting
	plugin.flash=zFlashExist;

	// Use if-else statements to break after a TRUE value.
	if (zFlash9) zFlashVersion = "9.0";
	else if (zFlash8) zFlashVersion = "8.0";
	else if (zFlash7) zFlashVersion = "7.0";
	else if (zFlash6) zFlashVersion = "6.0";
	else if (zFlash5) zFlashVersion = "5.0";
	else if (zFlash4) zFlashVersion = "4.0";
	else if (zFlash3) zFlashVersion = "3.0";
	else zFlashVersion='0.0';
	plugin.flashversion=zFlashVersion;

	// VB Scripting automatically sets flashXup values.
	plugin.flash3up=(zFlash3) ? true:false;
	plugin.flash4up=(zFlash4) ? true:false;
	plugin.flash5up=(zFlash5) ? true:false;
	plugin.flash6up=(zFlash6) ? true:false;
	plugin.flash7up=(zFlash7) ? true:false;
	plugin.flash8up=(zFlash8) ? true:false;
	plugin.flash9up=(zFlash9) ? true:false;

	// Set all as false, unless changed.
	plugin.flash3=false;
	plugin.flash4=false;
	plugin.flash5=false;
	plugin.flash6=false;
	plugin.flash7=false;
	plugin.flash8=false;
	plugin.flash9=false;

	// Change whatever is TRUE
	if (zFlash9) plugin.flash9=true;
	else if (zFlash8) plugin.flash8=true;
	else if (zFlash7) plugin.flash7=true;
	else if (zFlash6) plugin.flash6=true;
	else if (zFlash5) plugin.flash5=true;
	else if (zFlash4) plugin.flash4=true;
	else if (zFlash3) plugin.flash3=true;
}

else
{
	plugin.flash=false;

	plugin.flashversion='0.0';

	plugin.flash3=false;
	plugin.flash4=false;
	plugin.flash5=false;
	plugin.flash6=false;
	plugin.flash7=false;
	plugin.flash8=false;
	plugin.flash9=false;

	plugin.flash3up=false;
	plugin.flash4up=false;
	plugin.flash5up=false;
	plugin.flash6up=false;
	plugin.flash7up=false;
	plugin.flash8up=false;
	plugin.flash9up=false;
}




/*******************************************************
COPYRIGHT
********************************************************
This file is copyright (c) 1997-2002 by Skyzyx Technologies

The contents and source code for this file are distributed under the 
Skyzyx Public Use License, which can be found at:

http://license.skyzyx.com

Be sure to read these before using this file.

*******************************************************/
