JavaScript Flash detection in Firebird

User Help for Mozilla Firefox
Post Reply
OMA
Guest

JavaScript Flash detection in Firebird

Post by OMA »

Hello all.

I'm using this code in a website to detect Flash and redirect to the appropriate page. It works fine in IE (I have Flash so it goes to the Flash page) but in Firebird it redirects me to the "noflash" page. Does anyone know what's wrong with this code? (the first part is just browser language detection). Or maybe you can tell me about an alternate code which works in Firebird.

Thank you!.
___

<SCRIPT LANGUAGE="JavaScript" type="text/javascript">
<!--
var language = ""

if (navigator.language)
{
language = navigator.language;
}
if (navigator.browserLanguage)
{
language = navigator.browserLanguage;
}
if (navigator.userLanguage)
{
language = navigator.userLanguage;
}

if (language == "")
{
language = "en";
}
else
{
language = language.substring(0,2);
}

if (language=="es")
{
var flashPage = "pminicio.htm"
var noFlashPage = "noflash.htm"
var upgradePage = "noactual.htm"
}
else
{
var flashPage = "pmload.htm"
var noFlashPage = "noflashe.htm"
var upgradePage = "noreqver.htm"
}

var requiredVersion = 5;
var useRedirect = true;
var flash2Installed = false;
var flash3Installed = false;
var flash4Installed = false;
var flash5Installed = false;
var maxVersion = 5;
var actualVersion = 0;
var hasRightVersion = false;
var jsVersion = 1.0;
// -->
</SCRIPT>

<SCRIPT LANGUAGE="JavaScript1.1" type="text/javascript">
<!--

var isIE = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
var isWin = (navigator.appVersion.indexOf("Windows") != -1) ? true : false;

jsVersion = 1.1;

if(isIE && isWin){
document.write('<SCRIPT 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('</SCR' + 'IPT\> \n');
}
// -->
</SCRIPT>

<SCRIPT LANGUAGE="JavaScript" type="text/javascript">
<!--

function detectFlash(){

if (navigator.plugins){
if (navigator.plugins["Shockwave Flash 2.0"]
|| navigator.plugins["Shockwave Flash"]){


var isVersion2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
var flashDescription = navigator.plugins["Shockwave Flash" + isVersion2].description;
var flashVersion = parseInt(flashDescription.charAt(flashDescription.indexOf(".") - 1));

flash2Installed = flashVersion == 2;
flash3Installed = flashVersion == 3;
flash4Installed = flashVersion == 4;
flash5Installed = flashVersion == 5;
}
}

for (var i = 2; i <= maxVersion; i++) {
if (eval("flash" + i + "Installed") == true) actualVersion = i;
}
if(navigator.userAgent.indexOf("WebTV") != -1) actualVersion = 2;

// alert("Version de Flash detectada: " + actualVersion);

if (actualVersion >= requiredVersion) {
hasRightVersion = true;

if (useRedirect) {
if(jsVersion > 1.0) {
window.location.replace(flashPage);
} else {
window.location = flashPage;
}
}
} else {

if (useRedirect) {
if(jsVersion > 1.0) {
window.location.replace((actualVersion >= 2) ? upgradePage : noFlashPage);
} else {
window.location = (actualVersion >= 2) ? upgradePage : noFlashPage;
}
}
}
}


detectFlash();

// -->
</SCRIPT>

<NOSCRIPT>
<META HTTP-EQUIV="Refresh" CONTENT="0;URL=noscript.htm">
</NOSCRIPT>
Post Reply