//<script language="JavaScript">
<!--

/*
Flash Plugin Detector()
Source: Webmonkey Code Library
(http://www.hotwired.com/webmonkey/javascript/code_library/)
Author: Nadav Savio
Author Email: webmonkey@giantant.com
*/


// this is where we write out the VBScript for MSIE Windows
var WM_startTagFix = '</';
var msie_windows = 0;
if ((navigator.userAgent.indexOf('MSIE') != -1) && (navigator.userAgent.indexOf('Win') != -1))
{
	msie_windows = 1;
	document.writeln('<script language="VBscript">');
	document.writeln('\'This will scan for plugins for all versions of Internet Explorer that have a VBscript engine version 2 or greater.');
	document.writeln('\'This includes all versions of IE4 and beyond and some versions of IE 3.');
	document.writeln('Dim WM_detect_through_vb');
	document.writeln('WM_detect_through_vb = 0');
	document.writeln('If ScriptEngineMajorVersion >= 2 then');
	document.writeln('  WM_detect_through_vb = 1');
	document.writeln('End If');
	document.writeln('Function WM_activeXDetect(activeXname)');
	document.writeln('  on error resume next');
	document.writeln('  If ScriptEngineMajorVersion >= 2 then');
	document.writeln('     WM_activeXDetect = False');
	document.writeln('     WM_activeXDetect = IsObject(CreateObject(activeXname))');
	document.writeln('     If (err) then');
	document.writeln('        WM_activeXDetect = False');
	document.writeln('     End If');
	document.writeln('   Else');
	document.writeln('     WM_activeXDetect = False');
	document.writeln('   End If');
	document.writeln('End Function');
	document.writeln(WM_startTagFix+'script>');
}

function bPluginDetect(plugindescription, pluginxtension, pluginmime, activeXname)
/* Naam			: 	bPluginDetect */
/* Doel			: 	detecteert of een (voorgedefinieerde) pluging aanwezig is */
/* Input		: 	beschrijving van plugin */
/* Voorwaarden	: 	plugin moet zijn voorgedefinieerd */
/* Returnwaarde	: 	true indien gedetecteerd */
{
	//This script block will test all user agents that have a real plug-in array
	//(i.e. Netscape) and set the variables, otherwise it directs the routine
	// to WM_activeXDetect to detect the activeX control.

	// First define some variables
	var i;
	var bPluginUndetectable=0;
	var bDetected=0;
	var aPlugin=new Object();
	var numPlugins;

	// Then we check to see if it's an MSIE browser that you can actually
	// check for the plugin in question. 
	bPluginUndetectable = !(msie_windows && WM_detect_through_vb);

	// If it has a real plugins or mimetypes array, we look there for the plugin first
	if(navigator.plugins)
	{
		numPlugins = navigator.plugins.length;
		if (numPlugins > 1)
		{
			if (navigator.mimeTypes && navigator.mimeTypes[pluginmime] && navigator.mimeTypes[pluginmime].enabledPlugin && (navigator.mimeTypes[pluginmime].suffixes.indexOf(pluginxtension) != -1))
			{
				// seems like we have it, let's just make sure and check the version (if specified)
				if ((navigator.appName == 'Netscape') && (navigator.appVersion.indexOf('4.0') != -1))
				{
					// stupid, stupid Netscape can't handle the references to navigator.plugins by number, sooo...
					for(i in navigator.plugins)
					{
					    if ((navigator.plugins[i].description.indexOf(plugindescription) != -1) ||
							(i.indexOf(plugindescription) != -1))
					    {
							// some versions of quicktime have no description. feh!
							bDetected=1;
							break;
					    }
					}
				}
				else
				{
					for (i = 0; i < numPlugins; i++)
					{
					    aPlugin = navigator.plugins[i];
					    if ((aPlugin.description.indexOf(plugindescription) != -1) ||
							(aPlugin.name.indexOf(plugindescription) != -1))
					    {
						  bDetected=1;
						  break;
					    }
					}
				}

				// Mac weirdness
				if (navigator.mimeTypes[pluginmime] == null)
					bDetected = 0;
			}
			return bDetected;
		}
		else
			if ((msie_windows == 1) && !bPluginUndetectable)
				return WM_activeXDetect(activeXname);
			else
				return 0;
	}
	else
		return 0;
}

function bHasFlashPlugin()
/* Naam			: 	bHasFlashPlugin */
/* Doel			: 	detecteert of een flash pluging aanwezig is */
/* Input		: 	nvt */
/* Voorwaarden	: 	nvt */
/* Returnwaarde	: 	true indien gedetecteerd */
{
	return bPluginDetect('Flash', 'swf', 'application/x-shockwave-flash', 'ShockwaveFlash.ShockwaveFlash');
}

function nFlashVersion()
/* Naam			: 	nFlashVersion */
/* Doel			: 	detecteerd versie nummer van een eventuele flash plugin */
/* Input		: 	nvt */
/* Voorwaarden	: 	alleen versie 3 & 4 worden gedetecteerd */
/* Returnwaarde	: 	versienummer, 0 indien plugin versie 3 & 4 niet aanwezig */
{
	if (bPluginDetect('Flash 8', 'swf', 'application/x-shockwave-flash','ShockwaveFlash.ShockwaveFlash.8'))
		return 8;
	else if (bPluginDetect('Flash 7', 'swf', 'application/x-shockwave-flash','ShockwaveFlash.ShockwaveFlash.7'))
		return 7;
	else if (bPluginDetect('Flash 6', 'swf', 'application/x-shockwave-flash','ShockwaveFlash.ShockwaveFlash.6'))
		return 6;
	else if (bPluginDetect('Flash 5', 'swf', 'application/x-shockwave-flash','ShockwaveFlash.ShockwaveFlash.5'))
		return 5;
	else if (bPluginDetect('Flash 4', 'swf', 'application/x-shockwave-flash','ShockwaveFlash.ShockwaveFlash.4'))
		return 4;
	else if (bPluginDetect('Flash 3', 'swf','application/x-shockwave-flash', 'ShockwaveFlash.ShockwaveFlash.3'))
		return 3;
	else
		return 0;
}

// -->

//</script>
