
      // This script was downloaded from http://www.moock.org/webdesign/flash/detection/moockfpi/
      // 05/24/2001 and added directly to the page source in order to minimize calls to the servers
      // comments excluded for size reduction
      // see files in directory /www/subs2/js/shared/flash_det/ for original comments
      
      // version: 1.3.5
      // written by colin moock
      // code maintained at: http://www.moock.org/webdesign/flash/detection/moockfpi/
      // terms of use posted at: http://www.moock.org/terms/
      
      // #############################################
      // from fpi-init.js
      // #############################################
      // These are the user defined globals.
      
      var requiredVersion = 2; // (max 6, min 2)
      var useRedirect = false;   
      
      var flashPage = "";
      var noFlashPage = "";
      var upgradePage = ""; 
      // #############################################
      
      // System globals
      var flash2Installed = false; 
      var flash3Installed = false;
      var flash4Installed = false;
      var flash5Installed = false;
      var flash6Installed = false;
      var maxVersion = 6;
      var actualVersion = 0; 
      var hasRightVersion = false;  
      var jsVersion = 1.0;

      // from fpi-writevb.js
      // #############################################
      // Check the browser...we're looking for ie/win
      var isIE = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false; 
      var isWin = (navigator.appVersion.indexOf("Windows") != -1) ? true : false;
      
      jsVersion = 1.1;
      
      if(isIE && isWin){
        document.write('<SCR' + 'IPT LANGUAGE=VBScript> \n');
        document.write('on error resume next \n');
        document.write('flash2Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.2"))) \n');
        document.write('flash3Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.3"))) \n');
        document.write('flash4Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.4"))) \n');
        document.write('flash5Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.5"))) \n');  
        document.write('flash6Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.6"))) \n');  
        document.write('<\/SCR' + 'IPT> \n');
      }

      // from fpi-main.js
      // #############################################
      // Next comes the standard javascript detection that uses the 
      // navigator.plugins array. 
      
      function detectFlash() {  
        if (navigator.plugins) {
          if (navigator.plugins["Shockwave Flash 2.0"]
              || navigator.plugins["Shockwave Flash"]) {
      
            var isVersion2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
            var flashDescription = navigator.plugins["Shockwave Flash" + isVersion2].description;
      
            // DEBUGGING: uncomment next line to see the actual description.
            // alert("Flash plugin description: " + flashDescription);
            
            var flashVersion = parseInt(flashDescription.charAt(flashDescription.indexOf(".") - 1));
           
            flash2Installed = flashVersion == 2;    
            flash3Installed = flashVersion == 3;
            flash4Installed = flashVersion == 4;
            flash5Installed = flashVersion == 5;
            flash6Installed = flashVersion >= 6;
          }
        }
        
        for (var i = 2; i <= maxVersion; i++) {  
          if (eval("flash" + i + "Installed") == true) actualVersion = i;
        }
        
        if(navigator.userAgent.indexOf("WebTV") != -1) actualVersion = 3;  
        
        // DEBUGGING: uncomment next line to display flash version
        // alert("version detected: " + actualVersion);
      
      
        if (actualVersion >= requiredVersion) {
          if (useRedirect) {
            if(jsVersion > 1.0) {
              window.location.replace(flashPage);  
            } else {
              window.location = flashPage;
            }
          }
          
          hasRightVersion = true;                
        } else {  
          if (useRedirect) {
            if(jsVersion > 1.0) {
              window.location.replace((actualVersion >= 2) ? upgradePage : noFlashPage);
            } else {
              window.location = (actualVersion >= 2) ? upgradePage : noFlashPage;
            }
          }
        }
      }
      
      detectFlash(); 
