/* ------------------------------------------------
  Original Script by Plus Five.
  Author : tak@
  URL    : http://plus-5.com
  Version: 1.0
	Update : 2004. 9.12
	Copyright(C) Plus Five, All rights Reserved.
-------------------------------------------------*/
document.userSystem = new PF_getUserSystem(navigator.userAgent);
/*
  BROWSER CHECK MAIN
-------------------------------------------------*/
function PF_getUserSystem() {
	var key, index, keyIndex, keyIndexEnd, versionKey, i, j;
	var uaString = PF_getUserSystem.arguments[0].toUpperCase();
	this.browserLongName = "---";
	this.browserShortName = "---";
	this.browserVersion = "-99.0";
	var BROWSERS = new Object();
	BROWSERS['MZ'] = new PF_setBrowser('Mozilla','mz','GECKO');
	BROWSERS['IE'] = new PF_setBrowser('Internet Explorer','ie','MSIE');
	BROWSERS['AO'] = new PF_setBrowser('AOL','ao','AOL');
	BROWSERS['SF'] = new PF_setBrowser('Safari','sf','SAFARI');
	BROWSERS['OP'] = new PF_setBrowser('Opera','op','OPERA');
	BROWSERS['OW'] = new PF_setBrowser('OmniWeb','ow','OMNIWEB');
	BROWSERS['IC'] = new PF_setBrowser('iCab','ic','ICAB');
	BROWSERS['NS'] = new PF_setBrowser('Netscape','ns','NETSCAPE,NETSCAPE6');
	BROWSERS['NN'] = new PF_setBrowser('Netscape Navigator','nn','MOZILLA');
	BROWSERS['FF'] = new PF_setBrowser('Firefox','ff','FIREFOX');
	var checkVersionExp01 = new Array(' ', '/', '-', '');
	var checkVersionExp02 = new Array(';', ' ', '(', '[', ')', '+', '-', '/');
	uaString = " " + uaString + ";";
	index = 0;
	for (key in BROWSERS) {
		for (i=0; i<BROWSERS[key].keyword.length; i++) {
			keyIndex = uaString.indexOf(BROWSERS[key].keyword[i].toUpperCase());
			if (keyIndex > index) {
				this.browserLongName = BROWSERS[key].longName;
				this.browserShortName = BROWSERS[key].shortName;
				versionKey = BROWSERS[key].keyword[i].toUpperCase();
				index = keyIndex;
			}
		}
	}
	// Navigator is reary?
	if (this.browserShortName == "nn" && uaString.indexOf("COMPATIBLE")>0) {
		this.browserLongName = "---";
		this.browserShortName = "---";
	}
	// Version Check
	if (this.browserShortName != "---") {
		for (i=0; i<checkVersionExp01.length; i++) {
			key = versionKey + checkVersionExp01[i];
			if ( ( keyIndex = uaString.indexOf(key) ) > 0 ) break;
		}
		// Mozilla
		if ( key == 'GECKO/' ) {
			key = 'RV:';
			keyIndex = uaString.indexOf(key);
		}
		keyIndex = keyIndex + key.length;
		index = uaString.length;
		for (i=0; i<checkVersionExp02.length; i++) {
			if ((key = uaString.indexOf(checkVersionExp02[i], keyIndex)) > 0) {
				if (key < index) {
					keyIndexEnd = key;
					index = keyIndexEnd;
				}
			}
		}
		this.browserVersion = uaString.substring(keyIndex, keyIndexEnd);
	}
}
/* Setting BROWSER Object
-------------------------------------------------*/
function PF_setBrowser(longName,shortName,keyWord) {
	this.longName = longName;
	this.shortName = shortName;
	this.keyword = keyWord.split(",");
}

/*-------------------------------------------------*/
/*   Google Maps 動作可否      */
/*   Author : ARAYA            */
function mGBrowserIsCompatible() {
	var strBrName = document.userSystem.browserShortName;
	var sngBrVer = document.userSystem.browserVersion;
	sngBrVer = Number(sngBrVer.substring(0,sngBrVer.indexOf(".")+2));
	if (((strBrName == "mz") && (sngBrVer >= 1.4)) || ((strBrName == "ie") && (sngBrVer >= 6.0)) || ((strBrName == "sf") && (sngBrVer >= 1.2)) || ((strBrName == "op") && (sngBrVer >= 8.2)) || ((strBrName == "ns") && (sngBrVer >= 7.1)) || ((strBrName == "nn") && (sngBrVer >= 7.1)) || ((strBrName == "ff") && (sngBrVer >= 0.8))) {
		return true;
	} else {
		return false;
	}
}
