var flash2Installed = false; 
var flash3Installed = false;   
var flash4Installed = false;    
var flash5Installed = false;  
var flash6Installed = false;   
var flash7Installed = false;   
var flash8Installed = false;    
var flash9Installed = false; 
var maxver = 9;

function checkBrowser() {
	this.ver=navigator.appVersion
	this.agent=navigator.userAgent;
	this.netscape4=document.layers;
	this.browserCheckArray = this.agent.split(" ");
 	this.mozMac=this.agent.indexOf("Mozilla")>-1 && this.dom && this.mac?1:0;
 	this.macSafari=this.mac>-1&&this.agent.indexOf("Safari")>-1&&(this.dom)>-1?1:0;
	this.isopera = browserCheckArray[0].split("/");
	return this;
}

var br = checkBrowser();

function CreateControl(DivID, CLSID, ObjectID, VERSION, WIDTH, HEIGHT, SRC, FLASHVARS, BGCOLOR, CONTEXTMENU, NOFLASHHTML)
{
	var showFlash = false;
	required_version=VERSION.split(",")[0];
	required_version = parseInt(required_version);
	if (br.browserCheckArray[4]=="Symbian") {
		showFlash=false;
	} else {
		
		if (br.isopera[0]=="Opera" || br.browserCheckArray[7]=="Opera" || br.browserCheckArray[0]=="Mozilla/5.0" || br.mozMac==1 || br.macSafari==1 || (br.browserCheckArray[2]=="MSIE" && navigator.appVersion.indexOf("Win")==-1)) {
		//
		//	Detection for Mac Internet Explorer, Safari, Opera (7.x) and Gecko (Mozilla, Netscape 6.x, 7.x) based browsers.
		//	Detects also version of Flash player and compares value to "required_version" variable.
		//
			if (navigator.plugins['Shockwave Flash']) {
				var description = navigator.plugins['Shockwave Flash'].description;
				var description_array = description.split(" ");
				var version_array = description_array[2].split(".");
				if (version_array[0]<required_version) {
					showFlash=false;
				} else {
					showFlash=true;
				}
			} else {
				showFlash=false;
			}
		} else if (br.browserCheckArray[7]!="Opera" && br.browserCheckArray[2]=="MSIE" && navigator.appVersion.indexOf("Win") != -1) {
		//
		//	Detection for Microsoft Internet Explorer 5.x and 6.x PC browsers.
		//	Does not detect flash version, just checks if plugin exists.
		//
		  var ie_true = false;
		  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('flash7Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.7"))) \n');
		  document.write('flash8Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.8"))) \n');
		  document.write('flash9Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.9"))) \n');
		  document.write('<\/SCR' + 'IPT\> \n'); // break up end tag so it doesn't end our script

		  for (var i=2;i<=maxver;i++) {
		  		if (i==required_version) {
					if (eval("flash" + i + "Installed") == true) {
						ie_true = true;
					}
				}
		  }

		  if (!ie_true) {
			showFlash=false;
		  } else {
			showFlash=true;
		  }
				
		} else if (br.netscape4) {
		//
		//	Detection for old Netscape 4.x browsers. 
		//
			ns_flash = false;
			for (var i=0;i<=navigator.plugins.length;i++) {
				var plugin = navigator.plugins[i];
				if (plugin.name=="Shockwave Flash") {
					ns_flash = true;
					var description = plugin.description;
					var description_array = description.split(" ");
					var version_array = description_array[2].split(".");
					if (version_array[0]>=required_version) {
						showFlash=true;
					} else {
						showFlash=false;
					}
				}
			}
			if (!ns_flash) {
				showFlash=false;
			}
		} 
	}
	
	var d = getObj(DivID);
	if (showFlash) {
		d.style.lineHeight="0px";
		d.style.fontSize="0px";
		d.innerHTML = '<object classid="clsid:' + CLSID + '" id="' + ObjectID + '" width="' + WIDTH + '" height="' + HEIGHT + '" codeBase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=' + VERSION + '" VIEWASTEXT>' +
		'<param name="src" value="' + SRC + '">' +
		'<param name="allowScriptAccess" value="sameDomain" />' +
		'<param name="quality" value="high" />' +
		'<param name="menu" value="' + CONTEXTMENU + '">' +
		'<param name="bgcolor" value="' + BGCOLOR + '">' +
		'<param name="FlashVars" value="' + FLASHVARS + '">' +
		'<embed src="' + SRC + '" quality="high" allowScriptAccess="sameDomain" width="' + WIDTH + '" height="' + HEIGHT + '" menu="' + CONTEXTMENU + '" name="" bgcolor="' + BGCOLOR + '" type="application/x-shockwave-flash" FlashVars="' + FLASHVARS + '" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>';
	} else {
		//document.write(NOFLASHHTML);
		d.innerHTML = NOFLASHHTML
	}
}

function getObj(name) {
    if (document.getElementById) {
        return document.getElementById(name);
    } else if (document.all) {
        return document.all[name];
    } else if (document.layers) {
        return getObjNN4(document,name);
    }
}

function getObjNN4(obj,name) {
    var x = obj.layers;
    var foundObject;
    //Recursive searching for a layer
    for (var i=0;i<x.length;i++) {
        if (x[i].id == name) {
           foundObject = x[i];
        } else if (x[i].layers.length) {
           var tmp = getObjNN4(x[i],name);
        }
        if (tmp) {
			foundObject = tmp;
		}
    }
    return foundObject;
}
