// Detects which browser we're running on

var windowsInternetExplorer = false;
var isGecko = false;
var isMozilla = false;
var isFirefox = false;
var isCamino = false;
var isSafari = false;
var isNS = false;
var isWebKit = false;
var isOpera = false;
var isiPhone = false;
var isEarlyWebKitVersion = false;
var browserDetected = false;
var listOfIE7FloatsFix = [];

function detectBrowser()
{
    if (browserDetected === false)
    {
        windowsInternetExplorer = false;
        var appVersion = navigator.appVersion;
        if ((appVersion.indexOf("MSIE") != -1) && (appVersion.indexOf("Macintosh") == -1))
        {
            var temp = appVersion.split("MSIE");
            actualBrowserVersion = (document.documentMode ? 8 : parseFloat(temp[1]));
            effectiveBrowserVersion = document.documentMode ? document.documentMode : parseFloat(temp[1]);
            windowsInternetExplorer = true;
        }
        else
        {
            var ua = navigator.userAgent.toLowerCase();
            isGecko = (ua.indexOf('gecko') != -1);
            isMozilla = (this.isGecko && ua.indexOf("gecko/") + 14 == ua.length);
            isFirefox = (this.isGecko && ua.indexOf("firefox") != -1);
            isCamino = (this.isGecko && ua.indexOf("camino") != -1);
            isSafari = (this.isGecko && ua.indexOf("safari") != -1);
            isNS = ((this.isGecko) ? (ua.indexOf('netscape') != -1) : ((ua.indexOf('mozilla') != -1) && (ua.indexOf('spoofer') == -1) && (ua.indexOf('compatible') == -1) && (ua.indexOf('opera') == -1) && (ua.indexOf('webtv') == -1) && (ua.indexOf('hotjava') == -1)));
            isOpera = !! window.opera;
            var matchResult = ua.match(/applewebkit\/(\d+)/);
            if (matchResult)
            {
                isiPhone = (ua.indexOf("mobile/") != -1);
                isWebKit = true;
                webKitVersion = parseInt(matchResult[1]);
                isEarlyWebKitVersion = (webKitVersion < 522);
            }
        }
        browserDetected = true;
    }
}
detectBrowser(); 
