
var oWindowsT = new Object();
var alertString = ""
var alertFlash = ""
var alertPopUp = "";
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 WM_pluginDetect(plugindescription, pluginxtension, pluginmime, activeXname){

  //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.

	 var i,plugin_undetectable=0,detected=0, daPlugin=new Object();


  // e check to see if it's an MSIE browser that you can actually

  // check for the plugin in question. 

	 if (msie_windows && WM_detect_through_vb)
	 {
		 plugin_undetectable = 0;
     } 
     else 
     {
	    plugin_undetectable = 1;
	 }



  // If it has a real plugins or mimetypes array,  look  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!
			  detected=1;
			
			  break;
		      }
		  }
	      } else {
		  for (i = 0; i < numPlugins; i++) {
		      daPlugin = navigator.plugins[i];
		      if ((daPlugin.description.indexOf(plugindescription) != -1) || (daPlugin.name.indexOf(plugindescription) != -1)) {
			  
			  detected=1;
			  break;
		      }
		  }
	      }

	      // Mac weirdness
      if (navigator.mimeTypes[pluginmime] == null) {
      
		  detected = 0;
	      }
	  }
	 
	  return detected;
      } else if((msie_windows == 1) && !plugin_undetectable){
	  return WM_activeXDetect(activeXname);
      } else { 		
	  return 0;
      }
  } else {
      return 0;
  }
}



/*******************************************************************************
' Function Name		FlashDetect
'
' Description		This  function just makes it easy to detect the Flash plugins 
'					
'					
' Modification Log
'
'       Date                Author                           Modification 
' 	28-Jul-2006          Renita Lopes[Infosys]             Initial Version
'*******************************************************************************/

function FlashDetect() 
{
	var isFlashAvail = 0;
	isFlashAvail = WM_pluginDetect('Flash', 'swf', 'application/x-shockwave-flash', 'ShockwaveFlash.ShockwaveFlash');
	if (isFlashAvail == 0)
	 {
		 alertFlash = "This site requires Flash Plug-ins."
	 }
	 else
	 {
		alertFlash = ""
	 }
}


//check whether pop-up blocked is enabled
function PopUpDetect() 
{
	//set window properties
	var sPar = "width=100,height=50,top=5000,left=5000";
	handle = window.open("","",sPar);
	if(handle==null||handle=="undefined")
	{
		alertPopUp = "If you have enabled a popup blocker, you may not have access to all areas of the site.";
	}
	else
	{
		alertPopUp = ""
		handle.close();
	}
}

/*******************************************************************************
' Function Name		fnFlashPopUpDetect
'
' Description		Calls the function to detect flash plug-ins and Pop-Ups. 
'					and displays an alert message accordingly. 
'					
' Modification Log
'
'       Date                Author                           Modification 
' 	28-Jul-2006          Renita Lopes[Infosys]             Initial Version
'*******************************************************************************/

function fnFlashPopUpDetect()
{
	//Call the function to detect Flash Plug-ins
	FlashDetect();
	//Call the function to detect Pop-Up Blocker
	PopUpDetect();
	alertString = alertFlash + '\n' + alertPopUp;
	//Display alert massage
	if (alertString != '\n')
	{
	alert(alertString);
	}
}



