/*
        sniffer()
        c| 2001 im stall gmbh

        DESCRIPTION
        browser and os class

        USAGE
        is.linux                        os is linux
        is.win                        os is windows
        win95                                os is windows 95
        win98                                os is windows 98
        winme                                os is windows me
        win2k                                os is windows 2000
        winnt                                os is windows nt
        is.mac                        os is macos
        is.msd                        microsoft-dom1
        is.w3d                        w3c-dom1
        is.version                browserversion (float)
        is.v                                browserversion (int)
        is.ns                                browser is netscape navigator 4 and higher
        is.ns4                        browser is netscape navigator 4.*
        is.ns40                        browser is netscape navigator 4.0
        is.ns45                        browser is netscape navigator 4.5
        is.ns6                        browser is netscape navigator 6
        is.ie                                browser is ms internet explorer 4 and higher
        is.ie4                        browser is ms internet explorer 4
        is.ie5                        browser is ms internet explorer 5.*
        is.ie55                        browser is ms internet explorer 5.5
        is.ie6                        browser is ms internet explorer 6
        is.op                                browser is opera 3 and higher
        is.op4                        browser is opera 4.*
        is.op5                        browser is opera 5.*

        CHANGES
        2001-08-07        added opera-versions
                                        added linux-os
                                        deleted other os (no win, no mac)
                                        added w3d
        2001-09-18  added win-versions
*/

function sniffer() {
        ua=navigator.userAgent.toLowerCase();
        this.linux = (ua.indexOf("linux")>0) ? true : false;
        this.win = (ua.indexOf("win")>0) ? true : false;
        this.win = (ua.indexOf("win")>0) ? true : false;
        this.win95 = ((ua.indexOf("win95")!=-1) || (ua.indexOf("windows 95")!=-1));
        this.win98 = ((ua.indexOf("win98")!=-1) || (ua.indexOf("windows 98")!=-1));
        this.winme = ((ua.indexOf("win 9x 4.90")!=-1));
        this.win2k = ((ua.indexOf("windows nt 5.0")!=-1));
        this.winnt = ((ua.indexOf("winnt")!=-1) || (ua.indexOf("windows nt")!=-1));
        this.mac = (ua.indexOf("mac")>0) ? true : false;
        this.msd = (document.all) ? true : false;
        this.w3d = (document.getElementById) ? true : false;
        b=navigator.appName;
        if (b=="Netscape") this.b="ns";
        else if ((b=="Opera") || (navigator.userAgent.indexOf("Opera")>0)) this.b = "op";
        else if (b=="Microsoft Internet Explorer") this.b="ie";
        //if (!b) alert('Unidentified browser./nThis browser is not supported,');
        this.version=navigator.appVersion;
        this.v=parseInt(this.version);
        this.v10=parseInt(parseFloat(this.version)*10);
        this.ns=(this.b=="ns" && this.v>=4) ? true : false;
        this.ns4=(this.b=="ns" && this.v==4) ? true : false;
        this.ns40=(this.b=="ns" && this.v10==40) ? true : false;
        this.ns45=(this.b=="ns" && this.v10==45) ? true : false;
        this.ns6=(this.b=="ns" && this.v==5) ? true : false;
        this.ie=(this.b=="ie" && this.v>=4) ? true : false;
        this.ie4=(this.version.indexOf('MSIE 4')>0 || (this.ie && this.mac)) ? true : false;
        this.ie45=(this.version.indexOf('MSIE 4.5')>0) ? true : false;
        this.ie5=(this.version.indexOf('MSIE 5')>0) ? true : false;
        this.ie55=(this.version.indexOf('MSIE 5.5')>0) ? true : false;
        this.ie6=(this.version.indexOf('MSIE 6')>0) ? true : false;
        this.op=(this.b=="op" && this.v>=3) ? true : false;
        this.op4=(this.b=="op" && this.v==4) ? true : false;
        this.op5=(this.b=="op" && this.v==5) ? true : false;
}
var is = new sniffer();
