fxExtendNavigator();

function fxExtendNavigator(){navigator.unknown=1;navigator.ie=2;navigator.netscape=4;navigator.opera=8;navigator.type=null;navigator.version=null;navigator.os=null;navigator.jsVersion=1.0;navigator.vbScriptEnabled=false;navigator.hasPlugin=fxHasPlugin;navigator.selectPluginDetectType=fxSelectPluginDetectType;navigator.setCookie=fxSetCookie;

navigator.hasFlash=fxHasFlash;
navigator.hasQuickTime=fxHasQuicktime;
navigator.hasRealPlayer=fxHasRealPlayer;
navigator.hasWindowsMediaPlayer=fxHasWindowsMediaPlayer;
navigator.hasAcrobat=fxHasAcrobat;

fxInit();

function fxInit()
 {
    var strBrowserCookie=ieat.cookie.get("BrowserSniffer");

   if (strBrowserCookie)
      {
       eval(strBrowserCookie);
       navigator.selectPluginDetectType();
      }

   else
      {
       fxParseUserAgent();
       document.write("<scr"+"ipt language=\"JavaScript1.1\">navigator.jsVersion = 1.1;</s"+"cript>");
       document.write("<scr"+"ipt language=\"JavaScript1.2\">navigator.jsVersion = 1.2;</s"+"cript>");
       document.write("<scr"+"ipt language=\"JavaScript1.3\">navigator.jsVersion = 1.3;</s"+"cript>");
       document.write("<scr"+"ipt language=\"JavaScript1.4\">navigator.jsVersion = 1.4;</s"+"cript>");
       document.write("<scr"+"ipt language=\"JavaScript1.5\">navigator.jsVersion = 1.5;</s"+"cript>");
       document.write("<scr"+"ipt language=\"JavaScript1.6\">navigator.jsVersion = 1.6;</s"+"cript>");
       document.write("<scr"+"ipt language=\"JavaScript2.0\">navigator.jsVersion = 2.0;</s"+"cript>");
       document.write("<scr"+"ipt language=\"VBScript\">navigator.vbScriptEnabled = true</s"+"cript>");
       document.write("<scr"+"ipt language=\"JavaScript\">navigator.selectPluginDetectType();navigator.setCookie();</s"+"cript>");
      }
 }

function fxParseUserAgent()
 {
    var version;
    
    switch (navigator.appName)
           {
            case "Microsoft Internet Explorer": navigator.type=navigator.ie;
                                                navigator.version=fxGetIEVersion();
                                                navigator.os=fxGetIEOS();
                                                
                                                break;

            case "Netscape":                    navigator.type=navigator.netscape;
                                                navigator.version=fxGetNetscapeVersion();
                                                navigator.os=fxGetNetscapeOS();

                                                break;

            case "Opera":                       navigator.type=navigator.opera;navigator.version=fxGetOperaVersion();navigator.os=fxGetOperaOS();break;default:navigator.type=navigator.unknown;navigator.version=parseFloat(navigator.appVersion);navigator.os="Unknown";}}function fxGetIEVersion(){var strUserAgent=new String(navigator.userAgent);var arrUA=strUserAgent.split("MSIE ");return parseFloat(arrUA[1]);}function fxGetNetscapeVersion(){var strUserAgent=new String(navigator.userAgent);var version,arrUA;if(strUserAgent.indexOf("Gecko")<0){version=parseFloat(navigator.appVersion);}else if(strUserAgent.indexOf("Firefox")>-1){arrUA=strUserAgent.split("Firefox");arrUA=arrUA[1].split("/");version=parseFloat(arrUA[1]);}else if(strUserAgent.indexOf("Safari")>-1){arrUA=strUserAgent.split("Safari");arrUA=arrUA[1].split("/");version=parseFloat(arrUA[1]);}else{arrUA=strUserAgent.split("Netscape");arrUA=arrUA[1].split("/");version=parseFloat(arrUA[1]);}return version;}function fxGetOperaVersion(){var strUserAgent=new String(navigator.userAgent);var arrUA=strUserAgent.split("Opera/");return parseFloat(arrUA[1]);}function fxGetIEOS(){var strUserAgent=new String(navigator.userAgent);var arrUA=strUserAgent.split(";");return arrUA[2].substr(0,arrUA[2].length);}function fxGetNetscapeOS(){var strOS;var strUserAgent=new String(navigator.userAgent);var arrUA=strUserAgent.split("(");arrUA=arrUA[1].split(";");if(this.version<6){strOS=arrUA[0];}else{strOS=arrUA[2];}return strOS;}function fxGetOperaOS(){var strUserAgent=new String(navigator.userAgent);var arrUA=strUserAgent.split("(");arrUA=(new String(arrUA[1])).split(";");return arrUA[0];}function fxHasPlugin(strPluginName,strPluginObject){var blnHasPlugin=false;switch(navigator.pluginDetectType){case "plugins array":for(var i=0;i<navigator.plugins.length;i++){if(navigator.plugins[i].name.indexOf(strPluginName)>=0){blnHasPlugin=true;break;}}break;case "detectPlugin function":blnHasPlugin=fxDetectPlugin(strPluginObject);break;}return blnHasPlugin;}function fxSelectPluginDetectType(){if((navigator.plugins)&&(navigator.plugins.length>0)){navigator.pluginDetectType="plugins array";}else if(navigator.type=navigator.ie){if(navigator.jsVersion>=1.3){navigator.pluginDetectType="detectPlugin function";document.write("<scr"+"ipt language=\"JavaScript1.3\">\n");document.write("	function fxDetectPlugin(strPluginName){\n");document.write("		var blnHasPlugin = false;\n");document.write("		try{\n");document.write("			var obj = new ActiveXObject(strPluginName);\n");document.write("			blnHasPlugin = true;\n");document.write("		}   // try\n");document.write("		catch(Exception){");document.write("		}\n");document.write("		return blnHasPlugin;\n");document.write("	}   // fxCheckPlugin\n");document.write("</s"+"cript>\n");}else if(navigator.vbScriptEnabled){navigator.pluginDetectType="detectPlugin function";document.write("<scr"+"ipt language=\"VBScript\">\n");document.write("	function fxDetectPlugin(strPluginName)\n");document.write("		on error resume next\n");document.write("		if (IsObject(CreateObject(strPluginName))) then\n");document.write("			fxDetectPlugin = true\n");document.write("		else\n");document.write("			fxDetectPlugin = false\n");document.write("		end If\n");document.write("	end function\n");document.write("</s"+"cript>\n");}else{navigator.pluginDetectType="none";}}}function fxSetCookie(){var strCookieValue="navigator.type="+navigator.type+";\n"+"navigator.version="+navigator.version+";\n"+"navigator.os=\""+navigator.os+"\";\n"+"navigator.jsVersion="+navigator.jsVersion+";\n"+"navigator.vbScriptEnabled="+navigator.vbScriptEnabled+";\n";ieat.cookie.set("BrowserSniffer",strCookieValue,null,"/");}


function fxHasFlash( fltVersion )
 {
    var blnHasFlash=false;
    var strVersion;

    if (fltVersion)
       {
        switch(navigator.pluginDetectType)
              {
               case "plugins array":    for (var i=0;  i<navigator.plugins.length;  i++)
                                            {
                                             if (navigator.plugins[i].name.indexOf("Shockwave Flash")>=0)
                                                {
                                                 strVersion=navigator.plugins[i].description.substr(16,navigator.plugins[i].description.length);
                                                 
                                                 if (parseFloat(strVersion) >= fltVersion)
                                                    {
                                                     blnHasFlash=true;
                                                     break;
                                                    }
                                                }
                                            }
                                        break;
               
               case "detectPlugin function":
                                              blnHasFlash=fxDetectPlugin("ShockwaveFlash.ShockwaveFlash."+parseInt(fltVersion));
                                              break;
             }
       }
   else
       {
        blnHasFlash=navigator.hasPlugin("Shockwave Flash","ShockwaveFlash.ShockwaveFlash");
       }
  return blnHasFlash;
 }

function fxHasQuicktime()
 {
  return navigator.hasPlugin("QuickTime","QuickTimeCheckObject.QuickTimeCheck.1");
 }

function fxHasRealPlayer()
 {
  return navigator.hasPlugin("RealPlayer","RealPlayer.RealPlayer(tm) ActiveX Control (32-bit).1");
 }
 
function fxHasWindowsMediaPlayer()
 {
  return navigator.hasPlugin("Windows Media Player","MediaPlayer.MediaPlayer.1");
 }

function fxHasAcrobat()
 {
  return navigator.hasPlugin("Adobe Acrobat","PDF.PdfCtrl.1");
 }


}