oh yes!!
let's make broswer.js three time larger!!
Why didn't I think of that..
(note heavy sense of sarcasm)
----- Original Message -----
From: "nobody" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Monday, March 12, 2001 3:34 AM
Subject: [Dynapi-Dev] [ dynapi-Patches-407882 ] Browser.js Recommended
Upgrade
> Patches #407882, was updated on 2001-03-12 03:34
> You can respond by visiting:
>
http://sourceforge.net/tracker/?func=detail&atid=305757&aid=407882&group_id=
5757
>
> Category: DynAPI-Core
> Group: None
> Status: Open
> Priority: 5
> Submitted By: Nobody/Anonymous
> Assigned to: Nobody/Anonymous
> Summary: Browser.js Recommended Upgrade
>
> Initial Comment:
> The following is a recommendation for changing the
> Browser.js code. This should fix several bugs which
> currently exist which affect the detection of Opera,
> MSIE, win32, and mac systems. It would obviously
> require making changes throughout the API system due
> to changes being made in variables.
>
> -----Code Follows-----
>
>
> /*
> DynAPI Distribution
> Browser Class
>
> The DynAPI Distribution is distributed under the
> terms of the GNU LGPL license.
> */
>
> function Browser ()
> { // convert all characters to lowercase to simplify
> testing
> var agt=navigator.userAgent.toLowerCase();
>
> // *** BROWSER VERSION ***
> this.major = parseInt(navigator.appVersion);
> this.minor = parseFloat(navigator.appVersion);
>
> // Note: Opera and WebTV spoof. Perform strict
> client detection to prevent this.
> this.nav = ((agt.indexOf('mozilla')!=-1) &&
> (agt.indexOf('spoofer')==-1)
> && (agt.indexOf('compatible') == -1) &&
> (agt.indexOf('opera')==-1)
> && (agt.indexOf('webtv')==-1) &&
> (agt.indexOf('hotjava')==-1));
> this.nav4 = (this.nav && (this.major == 4));
> this.nav6 = (this.nav && (this.major == 5));
> this.gecko = (agt.indexOf('gecko') != -1); // Test
> for Gecko Engine
>
> this.ie = ((agt.indexOf("msie") != -1) &&
> (agt.indexOf("opera") == -1));
> this.ie4 = (this.ie && (this.major == 4) &&
> (agt.indexOf("msie 5")==-1) );
> this.ie5 = (this.ie && (this.major == 4) &&
> (agt.indexOf("msie 5.0")!=-1) );
> this.ie5_5 = (this.ie && (this.major == 4) &&
> (agt.indexOf("msie 5.5") !=-1));
> this.ie5up = (this.ie && !this.ie3 && !
> this.ie4); //Recommend using this for loops to detect
> msie 5+
>
> this.opera = (agt.indexOf("opera") != -1);
>
> // *** PLATFORM ***
> this.win = ( (agt.indexOf("win")!=-1) ||
> (agt.indexOf("16bit")!=-1) );
> // NOTE: On Opera 3.0, the userAgent string
> includes "Windows 95/NT4" on all
> // Win32, so you can't distinguish between
> Win95 and WinNT.
> this.win95 = ((agt.indexOf("win95")!=-1) ||
> (agt.indexOf("windows 95")!=-1));
>
> // is this a 16 bit compiled version?
> this.win16 = ((agt.indexOf("win16")!=-1) ||
> (agt.indexOf("16bit")!=-1) ||
> (agt.indexOf("windows 3.1")!=-1) ||
> (agt.indexOf("windows 16-bit")!=-
> 1) );
>
> this.win31 = ((agt.indexOf("windows 3.1")!=-1) ||
> (agt.indexOf("win16")!=-1) ||
> (agt.indexOf("windows 16-bit")!=-1));
>
> // NOTE: Reliable detection of Win98 may not be
> possible. It appears that:
> // - On Nav 4.x and before you'll get
> plain "Windows" in userAgent.
> // - On Mercury client, the 32-bit version
> will return "Win98", but
> // the 16-bit version running on Win98 will
> still return "Win95".
> this.win98 = ((agt.indexOf("win98")!=-1) ||
> (agt.indexOf("windows 98")!=-1));
> this.winnt = ((agt.indexOf("winnt")!=-1) ||
> (agt.indexOf("windows nt")!=-1));
>
> this.winme = ((agt.indexOf("win 9x 4.90")!=-1));
> this.win2k = ((agt.indexOf("windows nt 5.0")!=-1));
>
> this.win32 = (this.winme || this.win2k ||
> this.win95 || this.winnt || this.win98 ||
> ((this.major >= 4) &&
> (navigator.platform == "Win32")) ||
> (agt.indexOf("win32")!=-1) ||
> (agt.indexOf("32bit")!=-1));
>
> this.os2 = ((agt.indexOf("os/2")!=-1) ||
> (navigator.appVersion.indexOf("OS/2")!
> =-1) ||
> (agt.indexOf("ibm-webexplorer")!=-1));
>
> this.mac = (agt.indexOf("mac")!=-1);
> this.mac68k = (this.mac && ((agt.indexOf("68k")!=-
> 1) ||
> (agt.indexOf("68000")!=-1)));
> this.macppc = (this.mac && ((agt.indexOf("ppc")!=-
> 1) ||
> (agt.indexOf("powerpc")!=-1)));
> this.macos = (this.mac || this.mac68k ||
> this.macppc);
>
> this.sun = (agt.indexOf("sunos")!=-1);
> this.sun4 = (agt.indexOf("sunos 4")!=-1);
> this.sun5 = (agt.indexOf("sunos 5")!=-1);
> this.suni86= (this.sun && (agt.indexOf("i86")!=-1));
> this.irix = (agt.indexOf("irix") !=-1); // SGI
> this.irix5 = (agt.indexOf("irix 5") !=-1);
> this.irix6 = ((agt.indexOf("irix 6") !=-1) ||
> (agt.indexOf("irix6") !=-1));
> this.hpux = (agt.indexOf("hp-ux")!=-1);
> this.hpux9 = (this.hpux && (agt.indexOf("09.")!=-
> 1));
> this.hpux10= (this.hpux && (agt.indexOf("10.")!=-
> 1));
> this.aix = (agt.indexOf("aix") !=-1); // IBM
> this.aix1 = (agt.indexOf("aix 1") !=-1);
> this.aix2 = (agt.indexOf("aix 2") !=-1);
> this.aix3 = (agt.indexOf("aix 3") !=-1);
> this.aix4 = (agt.indexOf("aix 4") !=-1);
> this.linux = (agt.indexOf("inux")!=-1);
> this.sco = (agt.indexOf("sco")!=-1) ||
> (agt.indexOf("unix_sv")!=-1);
> this.unixware = (agt.indexOf("unix_system_v")!=-1);
> this.mpras = (agt.indexOf("ncr")!=-1);
> this.reliant = (agt.indexOf("reliantunix")!=-1);
> this.dec = ((agt.indexOf("dec")!=-1) ||
> (agt.indexOf("osf1")!=-1) ||
> (agt.indexOf("dec_alpha")!=-1) ||
> (agt.indexOf("alphaserver")!=-1) ||
> (agt.indexOf("ultrix")!=-1) ||
> (agt.indexOf("alphastation")!=-1));
> this.sinix = (agt.indexOf("sinix")!=-1);
> this.freebsd = (agt.indexOf("freebsd")!=-1);
> this.bsd = (agt.indexOf("bsd")!=-1);
> this.unix = ((agt.indexOf("x11")!=-1) || this.sun
> || this.irix || this.hpux ||
> this.sco ||this.unixware || this.mpras
> || this.reliant ||
> this.dec || this.sinix || this.aix ||
> this.linux || this.bsd || this.freebsd);
>
> this.vms = ((agt.indexOf("vax")!=-1) ||
> (agt.indexOf("openvms")!=-1));
> }
>
> is = DynAPI.browser = new Browser();
>
>
> ----------------------------------------------------------------------
>
> You can respond by visiting:
>
http://sourceforge.net/tracker/?func=detail&atid=305757&aid=407882&group_id=
5757
>
> _______________________________________________
> Dynapi-Dev mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/dynapi-dev
---
Outgoing mail is certified Virus Free by AVG Free Edition
Download at: http://www.grisoft.com/html/us_index.cfm
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.237 / Virus Database: 115 - Release Date: 3/7/01
_______________________________________________
Dynapi-Dev mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/dynapi-dev