// get the user agent string
   var ua = navigator.userAgent.toLowerCase();

// determine if DOM capable browser
   var DOM = document.getElementById ? true : false;

// internet explorer
   var IE5 = (ua.indexOf("msie 5") > -1 && !O5 && !O6);
   var IE5_5 = (IE5 && ua.indexOf("msie 5.5") > -1);
   var IE6 = (ua.indexOf("msie 6") > -1 && !O5 && !O6);
   var IE4 = (ua.indexOf("msie") > -1 && document.all && !O5 && !O6 && !IE5 && !IE6);

// netscape
   var N6 = (ua.indexOf("netscape/6") > -1 || ua.indexOf("netscape6") > -1 && ua.indexOf("gecko") > -1);
   var N7 = (ua.indexOf("netscape/7") > -1 && ua.indexOf("gecko"));
   var N4 = (!DOM && document.layers) ? true : false;

// opera
   var O5 = (ua.indexOf("opera 5") > -1 || ua.indexOf("opera5") > -1 || ua.indexOf("opera/5") > -1);
   var O6 = (ua.indexOf("opera 6") > -1 || ua.indexOf("opera6") > -1 || ua.indexOf("opera/6") > -1);
   var O7 = (ua.indexOf("opera 7") > -1 || ua.indexOf("opera7") > -1 || ua.indexOf("opera/7") > -1);

// rationalise opera
   if (O5 || O6 || O7) {
       IE4 = false;
       IE5 = false;
       IE5_5 = false;
       IE6 = false;
   }

// set browser brand
   if (IE4 || IE5 || IE5_5 || IE6) {
       var IE = true;
   } else if (N4 || N6 || N7) {
       var NN = true;
   } else if (O5 || O6 || O7) {
       var OP = true;
   } else {
       var OTHER = true;
   }

var agent = navigator.userAgent.toLowerCase();
var flash_version = 0;
var show_flash = 0;

// NS3 needs flash_version to be a local variable
   if (agent.indexOf("mozilla/3") != -1 && agent.indexOf("msie") == -1) flash_version = 0;

// NS3+, Opera3+, IE5+ Mac (support plugin array):  check for Flash plugin in plugin array
   else if (navigator.plugins != null && navigator.plugins.length > 0)
       {
         var flashPlugin = navigator.plugins['Shockwave Flash'];
         if (typeof flashPlugin == 'object')
             {
                 if (flashPlugin.description.indexOf('7.') != -1) flash_version = 7;
                 else if (flashPlugin.description.indexOf('6.') != -1) flash_version = 6;
                 else if (flashPlugin.description.indexOf('5.') != -1) flash_version = 5;
                 else if (flashPlugin.description.indexOf('4.') != -1) flash_version = 4;
                 else if (flashPlugin.description.indexOf('3.') != -1) flash_version = 3;
              }
       }

 // IE4+ Win32:  attempt to create an ActiveX object using VBScript
 else if (agent.indexOf("msie") != -1 && parseInt(navigator.appVersion) >= 4 && agent.indexOf("win")!=-1 && agent.indexOf("16bit")==-1)
     {
        document.write('<script language="VBScript"\> \n');
        document.write('on error resume next \n');
        document.write('dim obFlash \n');
        document.write('set obFlash = CreateObject("ShockwaveFlash.ShockwaveFlash.7") \n');
        document.write('if IsObject(obFlash) then \n');
        document.write('flash_version = 7 \n');
        document.write('else set obFlash = CreateObject("ShockwaveFlash.ShockwaveFlash.6") end if \n');
        document.write('if flash_version < 7 and IsObject(obFlash) then \n');
        document.write('flash_version = 6 \n');
        document.write('else set obFlash = CreateObject("ShockwaveFlash.ShockwaveFlash.5") end if \n');
        document.write('if flash_version < 6 and IsObject(obFlash) then \n');
        document.write('flash_version = 5 \n');
        document.write('else set obFlash = CreateObject("ShockwaveFlash.ShockwaveFlash.4") end if \n');
        document.write('if flash_version < 5 and IsObject(obFlash) then \n');
        document.write('flash_version = 4 \n');
        document.write('else set obFlash = CreateObject("ShockwaveFlash.ShockwaveFlash.3") end if \n');
        document.write('if flash_version < 4 and IsObject(obFlash) then \n');
        document.write('flash_version = 3 \n');
        document.write('end if');
        document.write('</script\> \n');
     }

 // WebTV 2.5 supports flash 3
    else if (agent.indexOf("webtv/2.5") != -1) flash_version = 3;

 // older WebTV supports flash 2
    else if (agent.indexOf("webtv") != -1) flash_version = 2;

 // Can't detect in all other cases
    else flash_version = 0;

// set show flash var
   flash_version >= 5 ? show_flash = 1 : show_flash = 0;

