/*
PLATFORM SNIFFER
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Object name: PlatformSniff()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Overview:
Provides simple to use properties that summerize the
user's platform.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
API Properties:
.agent (string)			the HTTP_USER_AGENT
.browser (string)		the common name for the browser
.browVer (number)		integer value sepcifying the full version of the browser
.browVerEx (string)		the full version of the browser
.os (string)			the common name for the Operating System
.isDHTML (boolean)		if the browser supports some form of DHTML
.isDOM (boolean)		if the browser is W3C-DOM compliant
.isAll (boolean)		if the browser supports the document.all object
.isLayers (boolean)		if the browser supports the document.layers object
.isAOL (boolean)		if the browser is an AOL bastardization
.isUnknown (boolean)	if the browser is unknown
.px (string)			the CSS pixel unit specifier used by the browser
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Created by:	Dan Fields (dfields@macdirect.com) DSF
On:			Friday, November 5, 2004
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
History:
20041105	DSF		Created script
*/

function PlatformSniff() {

	this.agent = navigator.userAgent;
	this.isDOM = (document.getElementById);
	this.isAll = (document.all);
	this.isLayers = (document.layers);
	this.isDHTML = (this.isDOM || this.isAll || this.isLayers);
	this.isAOL = (this.agent.indexOf("AOL") > -1);
	this.os = "";
	this.isUnknown = true;
	this.browser = "";
	this.browVer = -1;
	this.browVerEx = "";

	// determine the OS
	if (this.agent.indexOf("Win") > -1) {
		this.os = "Windows";
	} else if (this.agent.indexOf("Linux") > -1) {
		this.os = "Linux";
	} else if (this.agent.indexOf("Mac") > -1) {
		this.os = "Mac";
	} else if (this.agent.indexOf("FreeBSD") > -1) {
		this.os = "FreeBSD";
	} else if (this.agent.indexOf("SunOS") > -1) {
		this.os = "SunOS";
	} else if (this.agent.indexOf("HP-UX") > -1) {
		this.os = "HP";
	} else if (this.agent.indexOf("Unix") > -1) {
		this.os = "Unix";
	}

	// MSIE based browsers
	var idxIE = this.agent.indexOf("MSIE");
	var idxCB = this.agent.indexOf("Crazy Browser");
	var idxNN = this.agent.indexOf("Netscape");
	var idxWTV = this.agent.indexOf("WebTV");
	// Gecko browsers
	var idxCompat = this.agent.indexOf("(compatible");
	var idxGek = this.agent.indexOf("Gecko");
	var idxPhx = this.agent.indexOf("Phoenix");
	var idxFf = this.agent.indexOf("Firefox");
	var idxFb = this.agent.indexOf("Firebird");
	// Gecko compatible
	var idxSaf = this.agent.indexOf("Safari");
	var idxOW = this.agent.indexOf("OmniWeb");
	var idxGal = this.agent.indexOf("Galeon");
	var idxChim = this.agent.indexOf("Chimera");
	var idxBeon = this.agent.indexOf("Beonex");
	var idxEpip = this.agent.indexOf("Epiphany");
	var idxNaud = this.agent.indexOf("Nautilus");
	var idxCam = this.agent.indexOf("Camino");
	var idxKm = this.agent.indexOf("K-Meleon");
	// Other browsers
	var idxOP = this.agent.indexOf("Opera");
	var idxICab = this.agent.indexOf("iCab");
	var idxAm = this.agent.indexOf("Amiga");
	var idxBeos = this.agent.indexOf("NetPositive");
	var idxKon = this.agent.indexOf("Konqueror");

	/*if (idxCompat == -1 && idxGek > -1) {
		if () {
			
		}
	}

	if (this.isUnknown) {
		
	}*/

	this.px = (this.browser.toLowerCase() == "opera") ? "" : "px";

}
