var reqVer          = 3;
var flashVer        = 0;
var haveFlash       = '0';		
var haveQT          = '0';
var flash3Installed = false;		// boolean. true if flash 3 is installed
var flash4Installed = false;		// boolean. true if flash 4 is installed
var flash5Installed = false;		// boolean. true if flash 5 is installed
var flash6Installed = false;		// boolean. true if flash 6 is installed

var quickTimeName = "none";
var quickTimeVer = 0;
var flashDesc = "none";
var isFlash2 = false;


// Write vbscript detection if Windows and IE
if (appName=='ie' && appOS=='win') {
	document.writeln('<scr' + 'ipt language=VBScript\>');
	document.writeln('on error resume next');

  // Check for Flash
  	document.writeln('flash3Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.3")))');
	document.writeln('flash4Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.4")))');
	document.writeln('flash5Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.5")))');
	document.writeln('flash6Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.6")))');	

  // Check for QuickTime
  document.writeln('Set theObject = CreateObject("QuickTimeCheckObject.QuickTimeCheck.1")');
  document.writeln('On Error goto 0');
  document.writeln('If IsObject(theObject) Then');
  document.writeln('If theObject.IsQuickTimeAvailable(0) Then');
  document.writeln('haveQT = "1"');
  document.writeln('Else');
  document.writeln('haveQT = "0"');
  document.writeln('End If');
  document.writeln('End If');

	document.writeln('</scr' + 'ipt\>');
}

// Check for NS plug-ins
function checkPlugIns() {	
	if (navigator.plugins) {


    // Check for Flash
		if (navigator.plugins['Shockwave Flash 2.0'] || navigator.plugins['Shockwave Flash']) {
      // Check for Flash 2.x and make description
			isFlash2 = navigator.plugins['Shockwave Flash 2.0'] ? ' 2.0' : '';
			flashDesc = navigator.plugins['Shockwave Flash' + isFlash2].description;
			flashVer = parseInt(flashDesc.charAt(flashDesc.indexOf('.') - 1));
			flashRevision = parseInt(flashDesc.substring(flashDesc.indexOf('r')+1));
		}

    // Check for QuickTime
    if (appVer > 3) {
      for (i=0; i < navigator.plugins.length; i++ ) {
        if (navigator.plugins[i].name.indexOf('QuickTime') != -1) {
          haveQT = '1';
          quickTimeName = navigator.plugins[i].name;
          quickTimeVer = parseInt(quickTimeName.charAt(quickTimeName.indexOf('.') - 1));
        }
      }
    }
	}
	
	// Check for Web TV
  if (navigator.userAgent.indexOf('WebTV') != -1) {
    flashVer = 2;
  } 
	
  if(flash6Installed){
  	flashVer = 6;
	flashRevision = 40;
  }	else if (flash5Installed) {
    flashVer = 5;
  } else if (flash4Installed) {
    flashVer = 4;
  } else if (flash3Installed) {
    flashVer = 3;
  }

	if (flashVer >= reqVer) {
    haveFlash = '1';
  } else {
    haveFlash = '0';
  }
}

checkPlugIns();
