Ultrashock Forums > Flash > Flash Newbie
.html flash version detection?

You are currently viewing our website as a guest which gives you limited access to forums, files and other resources.

Click here to join now for free, and start interacting with our members, download files and much more!

Click here if you are looking for our Flash files and other professional assets.
 
Post Reply | View first unread | Rate Thread Search this Thread | Thread Tools | Display Modes

#1
Bookmark and Share!
.html flash version detection?
Old 2007-03-10

I'm using swfObject to get rid of the IE lines. But I can't find a way to use flash ver. detection in the .html file. Any ideas where should I put it?

source:
PHP Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>
<
meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><title>LRstudio</title>

<
style type="text/css">
<!--
body {
    
margin-top9%;
    
margin-bottom9%;
    
background-color#FFFFFF;
}
-->
</
style><script language="javascript" src="./flashJs/FLRelease1.js"</script>
<script language="javascript" src="./flashJs/FLRelease2.js"> </script>
</head>

<body>
<!--url's used in the movie-->
<!--text used in the movie-->
<table width="100%" border="0" bordercolor="#FFFFFF">
  <tbody><tr>
    <td align="center" height="417" valign="middle"><noScript>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="752" height="396" processed="true"><param name="movie" value="lrstudio-8.4.swf" /><param name="quality" value="high" /><embed src="lrstudio-8.4.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="752" height="396" /></object>
</noScript>
<script>
//<!--
AC_RunFlContentX ("src","lrstudio-8.4.swf","quality","high","width","752","height","396");
//-->
</script></td>
  </tr>
</tbody></table>
</body></html> 


The flash detection:
PHP Code:
<!-- saved from url=(0013)about:internet -->
<
html lang="en">
<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=iso-8859-4" />
<
title>lrstudio-8.4</title>
<
script language="JavaScript" type="text/javascript">
<!--
// -----------------------------------------------------------------------------
// Globals
// Major version of Flash required
var requiredMajorVersion 8;
// Minor version of Flash required
var requiredMinorVersion 0;
// Revision of Flash required
var requiredRevision 0;
// the version of javascript supported
var jsVersion 1.0;
// -----------------------------------------------------------------------------
// -->
</script>
<script language="VBScript" type="text/vbscript">
<!-- // Visual basic helper required to detect Flash Player ActiveX control version information
Function VBGetSwfVer(i)
  on error resume next
  Dim swControl, swVersion
  swVersion = 0
  
  set swControl = CreateObject("ShockwaveFlash.ShockwaveFlash." + CStr(i))
  if (IsObject(swControl)) then
    swVersion = swControl.GetVariable("$version")
  end if
  VBGetSwfVer = swVersion
End Function
// -->
</script>
<script language="JavaScript1.1" type="text/javascript">
<!-- // Detect Client Browser type
var isIE  = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false;
var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;
jsVersion = 1.1;
// JavaScript helper required to detect Flash Player PlugIn version information
function JSGetSwfVer(i){
    // NS/Opera version >= 3 check for Flash plugin in plugin array
    if (navigator.plugins != null && navigator.plugins.length > 0) {
        if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) {
            var swVer2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
              var flashDescription = navigator.plugins["Shockwave Flash" + swVer2].description;
            descArray = flashDescription.split(" ");
            tempArrayMajor = descArray[2].split(".");
            versionMajor = tempArrayMajor[0];
            versionMinor = tempArrayMajor[1];
            if ( descArray[3] != "" ) {
                tempArrayMinor = descArray[3].split("r");
            } else {
                tempArrayMinor = descArray[4].split("r");
            }
              versionRevision = tempArrayMinor[1] > 0 ? tempArrayMinor[1] : 0;
            flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
          } else {
            flashVer = -1;
        }
    }
    // MSN/WebTV 2.6 supports Flash 4
    else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4;
    // WebTV 2.5 supports Flash 3
    else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3;
    // older WebTV supports Flash 2
    else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2;
    // Can't detect in all other cases
    else {
        
        flashVer = -1;
    }
    return flashVer;

// If called with no parameters this function returns a floating point value 
// which should be the version of the Flash Player or 0.0 
// ex: Flash Player 7r14 returns 7.14
// If called with reqMajorVer, reqMinorVer, reqRevision returns true if that version or greater is available
function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision) 
{
     reqVer = parseFloat(reqMajorVer + "." + reqRevision);
       // loop backwards through the versions until we find the newest version    
    for (i=25;i>0;i--) {    
        if (isIE && isWin && !isOpera) {
            versionStr = VBGetSwfVer(i);
        } else {
            versionStr = JSGetSwfVer(i);        
        }
        if (versionStr == -1 ) { 
            return false;
        } else if (versionStr != 0) {
            if(isIE && isWin && !isOpera) {
                tempArray         = versionStr.split(" ");
                tempString        = tempArray[1];
                versionArray      = tempString .split(",");                
            } else {
                versionArray      = versionStr.split(".");
            }
            versionMajor      = versionArray[0];
            versionMinor      = versionArray[1];
            versionRevision   = versionArray[2];
            
            versionString     = versionMajor + "." + versionRevision;   // 7.0r24 == 7.24
            versionNum        = parseFloat(versionString);
            // is the major.revision >= requested major.revision AND the minor version >= requested minor
            if ( (versionMajor > reqMajorVer) && (versionNum >= reqVer) ) {
                return true;
            } else {
                return ((versionNum >= reqVer && versionMinor >= reqMinorVer) ? true : false );    
            }
        }
    }    
    return (reqVer ? false : 0.0);
}
// -->
</script>
</head>
<body bgcolor="#ffffff">
<!--url's used in the movie-->
<!--text used in the movie-->
<script language="JavaScript" type="text/javascript">
<!-- 
var hasRightVersion = DetectFlashVer(requiredMajorVersion, requiredMinorVersion, requiredRevision);
if(hasRightVersion) {  // if we've detected an acceptable version
    var oeTags = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'
    + 'width="752" height="396"'
    + 'codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab">'
    + '<param name="movie" value="lrstudio-8.4.swf" /><param name="quality" value="high" /><param name="bgcolor" value="#ffffff" />'
    + '<embed src="lrstudio-8.4.swf" quality="high" bgcolor="#ffffff" '
    + 'width="752" height="396" name="lrstudio-8.4" align="middle"'
    + 'play="true"'
    + 'loop="false"'
    + 'quality="high"'
    + 'allowScriptAccess="sameDomain"'
    + 'type="application/x-shockwave-flash"'
    + 'pluginspage="http://www.macromedia.com/go/getflashplayer">'
    + '<\/embed>'
    + '<\/object>';
    document.write(oeTags);   // embed the flash movie
  } else {  // flash is too old or we can't detect the plugin
    var alternateContent = 'Alternate HTML content should be placed here.'
      + 'This content requires the Macromedia Flash Player.'
       + '<a href=http://www.macromedia.com/go/getflash/>Get Flash</a>';
    document.write(alternateContent);  // insert non-flash content
  }
// -->
</script>
<noscript>
    // Provide alternate content for browsers that do not support scripting
    // or for those that have scripting disabled.
      Alternate HTML content should be placed here. This content requires the Macromedia Flash Player.
      <a href="http://www.macromedia.com/go/getflash/">Get Flash</a>      
</noscript>
</body>
</html> 
postbit arrow 3 comments | 200 views postbit arrow Reply: with Quote   
Registered User
yodalr is offline
seperator
Posts: 108
2005-07-15
seperator

Ultrashock Member Comments:
Nutrox's Avatar Nutrox Nutrox is offline Nutrox lives in United Kingdom 13 Creative Assets 2007-03-10 #2 Old  
That sure doesn't look like SWFObject to me.

Get the proper version from the official site (and look at the examples) and it will be easy to check for the Flash Player version.

Reply With Quote  
yodalr yodalr is offline 2007-03-11 #3 Old  
no dude, I'm using another program for SWFobject, hmm don't even know how to call it myself . Programs name is flashRelease. It creates the swf object automaticly. But I can't find a way to make flashRelease and Flash Version Detection work.
Reply With Quote  
ReDial ReDial is offline 2007-03-22 #4 Old  
I recently ran into the same problem..love to see a solution to this.
Reply With Quote  
Thread Tools
Display Modes Rate This Thread
Rate This Thread: