var BrowserDetect = { 
	init: function () { 
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser"; 
		this.version = this.searchVersion(navigator.userAgent) 
			|| this.searchVersion(navigator.appVersion) 
			|| "an unknown version"; 
		this.OS = this.searchString(this.dataOS) || "an unknown OS"; 
	}, 

	searchString: function (data) { 
		for (var i=0;i<data.length;i++) { 
			var dataString = data[i].string; 
			var dataProp = data[i].prop; 
			this.versionSearchString = data[i].versionSearch || data[i].identity; 
			if (dataString) { 
				if (dataString.indexOf(data[i].subString) != -1) 
					return data[i].identity; 
			} 
			else if (dataProp) 
				return data[i].identity; 
		} 
	}, 

	searchVersion: function (dataString) { 
		var index = dataString.indexOf(this.versionSearchString); 
		if (index == -1) return; 
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1)); 
	}, 

	dataBrowser: [ 
		{ 
			string: navigator.userAgent, 
			subString: "Chrome", 
			identity: "Chrome" 
		}, 
		{ 
			string: navigator.userAgent, 
			subString: "OmniWeb", 
			versionSearch: "OmniWeb/", 
			identity: "OmniWeb" 
		}, 
		{ 
			string: navigator.vendor, 
			subString: "Apple", 
			identity: "Safari" 
		}, 
		{ 
			prop: window.opera, 
			identity: "Opera" 
		}, 
		{ 
			string: navigator.vendor, 
			subString: "iCab", 
			identity: "iCab" 
		}, 
		{ 
			string: navigator.vendor, 
			subString: "KDE", 
			identity: "Konqueror" 
		}, 
		{ 
			string: navigator.userAgent, 
			subString: "Firefox", 
			identity: "Firefox" 
		}, 
		{ 
			string: navigator.vendor, 
			subString: "Camino", 
			identity: "Camino" 
		}, 
		{ 		// for newer Netscapes (6+) 
			string: navigator.userAgent, 
			subString: "Netscape", 
			identity: "Netscape" 
		}, 
		{ 
			string: navigator.userAgent, 
			subString: "MSIE", 
			identity: "Internet Explorer", 
			versionSearch: "MSIE" 
		}, 
		{ 
			string: navigator.userAgent, 
			subString: "Gecko", 
			identity: "Mozilla", 
			versionSearch: "rv" 
		}, 
		{ 		// for older Netscapes (4-) 
			string: navigator.userAgent, 
			subString: "Mozilla", 
			identity: "Netscape", 
			versionSearch: "Mozilla" 
		} 
	], 

	dataOS : [ 
		{ 
			string: navigator.platform, 
			subString: "Win", 
			identity: "Windows" 
		}, 
		{ 
			string: navigator.platform, 
			subString: "Mac", 
			identity: "Mac" 
		}, 
		{ 
			string: navigator.platform, 
			subString: "Linux", 
			identity: "Linux" 
		} 
	] 
}; 

BrowserDetect.init(); 

function isBrowserSupported() {
	// Safari
	if (BrowserDetect.browser == "Safari") {
		if (BrowserDetect.version >= 528)
			return true;
		else 
			return false;
	}
		
	// FireFox
	else if (BrowserDetect.browser == "Firefox") {
		if (BrowserDetect.version >= 2)
			return true;
		else 
			return false;
	}
		
	// Internet Explorer
	else if (BrowserDetect.browser == "Internet Explorer") {
		if (BrowserDetect.version >= 6)
			return true;
		else 
			return false;
	}

	// Chrome
	else if (BrowserDetect.browser == "Chrome") {
		if (BrowserDetect.version >= 3)
			return true;
		else 
			return false;
	}

	else {
		return false;
	}
}
