//01-08-2008 Cuma, Muharrem Karakaž
/****************
start from flash_detect.vbs

The following script determines the existence and version information of the Flash Player plug-in.
This applies to Netscape, Firefox, Mozilla, Safari, Opera, and all other browsers 
that support the Netscape Plug-in API and a way to interrogate it using browser scripting:
****************/

// Detect Client Browser type
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;

// 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];
                  if ( descArray[3] != "" ) {
                        tempArrayMinor = descArray[3].split("r");
                  } else {
                        tempArrayMinor = descArray[4].split("r");
                  }
                        versionMinor = tempArrayMinor[1] > 0 ? tempArrayMinor[1] : 0;
                        flashVer = parseFloat(versionMajor + "." + versionMinor);
            } 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;
}

/********************
After you determine which browser your script is running, run through each of these scripts
until you find the latest version of the player installed.

The following script starts with a high version number (25) and runs through the proper script
for each potential version to determine if it exists on the client. Once the script gets a valid return value,
it sets the value of versionStr to the installed version:

At this point you can take this value and make sure your content can be displayed properly in the browser.
For example, if your content requires Flash Player 6r65, you could use the following script
in conjunction with the scripts above to determine if the client has Flash Player and the proper version:
*********************/


// If called with no parameters this function returns a floating point value 
// which should be the version of the Flash Player or 0.0 
// ex: Flash Player 6r65 returns 6.65
// If called with reqMajorVer, reqMinorVer this function returns true if that version or greater is installed
function DetectFlashVer(reqMajorVer, reqMinorVer) 
{
      reqVer = parseFloat(reqMajorVer + "." + reqMinorVer);
      // loop backwards through the versions until we find the newest version      
      for (i=25;i>0;i--) {      
            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(",");
                        
                        versionMajor = versionArray[0];
                        versionMinor   = versionArray[2];
                        
                        versionString = versionMajor + "." + versionMinor;
                        versionNum = parseFloat(versionString);
                  } else {
                         versionNum = versionStr;
                  }
                  return (versionNum >= reqVer ? true : false );            
            }
      }
      
      return (reqVer ? false : 0.0);
}