Browser = function()
{
	this.engine = {version:null,name:null}
	
	this.ie=false;
	this.ns=false;
	this.moz=false;
	this.safari=null;
	this.firefox=null;
 	
	this.version=null;
	
	this.pc = (navigator.userAgent.indexOf("Windows") != -1); 
	this.mac = (navigator.userAgent.indexOf("Mac") != -1); 
	this.winxp = navigator.userAgent.indexOf("Windows NT 5.1") != -1
	this.win2k= navigator.userAgent.indexOf("Windows NT 5.0") != -1
	
	var engi = navigator.userAgent.toString().substring(0, navigator.userAgent.indexOf(" ") )
	this.engine.name = engi.split("/")[0]
	this.engine.version = getNumber(engi.split("/")[1])
	
	if ( this.moz = (navigator.userAgent.indexOf("Mozilla") != -1) && this.engine.version >= 5)
	{
		var spl = getArrayFormIndexOf (navigator.userAgent.toString(),"Mozilla/", "(");
		this.version = getNumber ( spl[1] );
		this.browser =  spl[0];
	}
	
	if ( this.firefox = (navigator.userAgent.indexOf("Firefox") != -1))
	{
		var spl = getArrayFormIndexOf (navigator.userAgent.toString(),"Firefox/");
		this.version = getNumber(spl[1]) ;
		this.browser =  spl[0]
	}
	
	if ( this.ns = ( ( navigator.appName == "Netscape" ) ) && ( this.engine.version <5 || navigator.userAgent.indexOf("Netscape") != -1 ) && navigator.userAgent.indexOf("Safari") == -1 )
	{
		if (navigator.userAgent.indexOf("Netscape") == -1)
			var spl = getArrayFormIndexOf (navigator.userAgent.toString(),"Mozilla/", "[")
		else
			var spl = getArrayFormIndexOf (navigator.userAgent.toString(),"Netscape");
		this.version = getNumber ( spl[1] );
		this.browser =  "Netscape";
	}

	if ( this.safari = (navigator.userAgent.indexOf("Safari") != -1))
	{ 
		var spl = getArrayFormIndexOf (navigator.userAgent.toString(),"Safari");
		this.version = getNumber ( spl[1]  );
		this.browser =  spl[0];
	}
	
	if ( this.ie = ((navigator.userAgent.indexOf("MSIE") != -1) && (navigator.userAgent.indexOf("Opera") == -1)) )
	{
		var sbstr = navigator.userAgent.toString().substring(navigator.userAgent.indexOf("MSIE") + 5);
		this.version = getNumber ( sbstr.substring(0,sbstr.indexOf(";")) );
		this.browser = "Internet Explorer";
	}
	
	if ( this.opera = (navigator.userAgent.indexOf("Opera") != -1))
	{
			var sbstr = navigator.userAgent.toString().substring(navigator.userAgent.indexOf("Opera") + 6);
			this.version = getNumber ( sbstr.substring(0,sbstr.indexOf(" ")) );
			this.browser = "Opera";
	}
	
	//alert("Browser: " + this.browser + "\nVersion: " + this.version + "\n Motor:\n\tNombre: " + this.engine.name + "\n\tVersion: " + this.engine.version)
	
	return;
	function getArrayFormIndexOf(str,sstr,s2str)
	{	
		var sbstr = str.substring(str.indexOf(sstr) );
		if (s2str) str = sbstr.substring( 0 , sbstr.indexOf(s2str) );
		return spl = str.substring(str.indexOf(sstr)).split("/");
	}
	
	function getNumber(str)
	{	
		var spl = str.length
		if (str.indexOf(".")!=-1)
		{
			var sstr = str.substring(str.indexOf(".")+1)
			if (sstr.indexOf(".") !=-1 )
			spl = str.indexOf(".") + sstr.indexOf(".")+1
		}
		return str.substring(0,spl);
	}
}
DOM.browser = new Browser();