﻿// JScript File
var isIE  = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false;
var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;
jsVersion = 1.1;

// JavaScript helper required to detect Flash Player PlugIn version information
function JSGetSwfVer(i){
      // NS/Opera version >= 3 check for Flash plugin in plugin array
      if (navigator.plugins != null && navigator.plugins.length > 0) {
            if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) {
                  var swVer2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
                  var flashDescription = navigator.plugins["Shockwave Flash" + swVer2].description;
                  descArray = flashDescription.split(" ");
                  tempArrayMajor = descArray[2].split(".");
                  versionMajor = tempArrayMajor[0];
                  versionMinor = tempArrayMajor[1];
                  if ( descArray[3] != "" ) {
                        tempArrayMinor = descArray[3].split("r");
                  } else {
                        tempArrayMinor = descArray[4].split("r");
                  }
                  versionRevision = tempArrayMinor[1] > 0 ? tempArrayMinor[1] : 0;
                  flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
            } else {
                  flashVer = -1;
            }
      }
      // MSN/WebTV 2.6 supports Flash 4
      else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4;
      // WebTV 2.5 supports Flash 3
      else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3;
      // older WebTV supports Flash 2
      else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2;
      // Can't detect in all other cases
      else {
            flashVer = -1;
      }
      return flashVer;
} 

function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision) 
{
      reqVer = parseFloat(reqMajorVer + "." + reqRevision);
      for (a=0;a<25;a++) {
            var i = 25 - a    
            if (isIE && isWin && !isOpera) {
                  versionStr = VBGetSwfVer(i);
            } else {
                  versionStr = JSGetSwfVer(i);        
            }
            if (versionStr == -1 ) { 
                  return false;
            } else if (versionStr != 0) {
                  if(isIE && isWin && !isOpera) {
                        tempArray         = versionStr.split(" ");
                        tempString        = tempArray[1];
                        versionArray      = tempString .split(",");                       
                  } else {
                        versionArray      = versionStr.split(".");
                  }
                  versionMajor      = versionArray[0];
                  versionMinor      = versionArray[1];
                  versionRevision   = versionArray[2];
                  versionString     = versionMajor + "." + versionRevision;   
                  versionNum        = parseFloat(versionString);
                  if ( (versionMajor > reqMajorVer) && (versionNum >= reqVer) ) {
                        return true;
                  } else {
                        return ((versionNum >= reqVer && versionMinor >= reqMinorVer) ? true : false );      
                  }
            }
      }     
      return (reqVer ? false : 0.0);
  }
