﻿
    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",
                        versionSearch: "Version"
                    },
                    {
                        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: "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.userAgent,
                        subString: "iPhone",
                        identity: "iPhone/iPod"
                    },
                    {
                        string: navigator.platform,
                        subString: "Linux",
                        identity: "Linux"
                    }
              ]
};

BrowserDetect.init();

if (BrowserDetect.OS == "Mac") {
    if (BrowserDetect.browser == "Safari") {
        document.write('<link rel="stylesheet" type="text/css" href="styles/overrideMacSafari.css" />');
    }
    else if (BrowserDetect.browser == "Firefox") {
        document.write('<link rel="stylesheet" type="text/css" href="styles/overrideMacFirefox.css" />');
    }
}
else {
    // probably windows...could also do a Linux detection here if required.
    switch (BrowserDetect.browser) {
        case "Chrome":
            document.write('<link rel="stylesheet" type="text/css" href="styles/overrideWinChrome.css" />');
            break;
        case "Firefox":
            document.write('<link rel="stylesheet" type="text/css" href="styles/overrideWinFirefox.css" />');
            break;
        case "Explorer":
            var sheet = "styles/overrideWinIE";
            sheet = sheet + BrowserDetect.version;
            document.write('<link rel="stylesheet" type="text/css" href="' + sheet + '.css" />');
            
            break;
        case "Safari":
            document.write('<link rel="stylesheet" type="text/css" href="styles/overrideWinSafari.css" />');
            break;
       
    }
}



