/*
 * Flash Player Detection Kit
 *
 * Copyright å© 2005 Macromedia, Inc. All rights reserved.
 *
 */

var requiredMajorVersion = 6;
var requiredMinorVersion = 0;
var requiredRevision = 0;
var jsVersion = 1.1;

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;

var noFlashInstalled = false;

function JSGetSwfVer(i) {
	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;
		}
	}
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4;
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3;
	else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2;
	else {
		flashVer = -1;
	}
	return flashVer;
} 

function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision) {
 	reqVer = parseFloat(reqMajorVer + "." + reqRevision);
	for (i=25;i>0;i--) {
		if (isIE && isWin && !isOpera) {
			versionStr = VBGetSwfVer(i);
		} else {
			versionStr = JSGetSwfVer(i);		
		}
		if (versionStr == -1 ) {
			noFlashInstalled = true;
			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);
			}
		}
	}
	noFlashInstalled = true;
	return (reqVer ? false : 0.0);
}
