Flash Headers, Footers, and Avatars for vBulletin
by
21 May 2007
Flash, Flash for vBulletin, Flash Headers, Flash Footers, and Flash Avatars # Flash, what is it? Strictly speaking, flash is an integrated development environment (IDE) while Flash Player is a virtual machine used to run, or parse, the Flash files. But in contemporary colloquial terms "Flash" can refer to the authoring environment, the player, or the application files. Flash technology has become a popular method for adding animation and interactivity to web pages; several software products, systems, and devices are able to create or display Flash. Flash is commonly used to create animation, advertisements, various web-page components, to integrate video into web pages, and more recently, to develop rich Internet applications. The Flash files, traditionally called "Flash movies" have a .swf file extension and may be an object of a web page, strictly "played" in a standalone Flash Player, or incorporated into a Projector, a self-executing Flash movie with the .exe extension in Windows. Flash Video files have an .FLV file extension and are utilized from within .swf files. Most Flash imbued sites set up a splash page to notify the user that the site requires the flash plug-in to view properly and provides a link to the current version. Splash pages also advise of resolutions, content warnings and have bypass links. # Flash for vBulletin There are several ways to do flash in any HTML or XHTML document including vBulletin. The standard, object embed method is to add the code below to your template, setting the param's, width, colors, location and movie name to reflect your .swf file needs. Code:
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="550" height="400" id="Untitled-1" align="middle"> <param name="allowScriptAccess" value="sameDomain" /> <param name="movie" value="mymovie.swf" /> <param name="quality" value="high" /> <param name="bgcolor" value="#ffffff" /> <embed src="mymovie.swf" quality="high" bgcolor="#ffffff" width="550" height="400" name="mymovie" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.adobe.com/go/getflashplayer" /> </object> The SWFObject method uses a Java file and is more flexible, it HTML or XHTML validates; It works with all browsers and has version detection. It also fixes the click to activate problem with IE browsers and can be set to display alternative content if the user does not have a flash plug in. Developed by Deconcept and adopted by Adobe and most web designers, I recommend this method of embedding flash for all primary assets; however I will sometimes mix the two methods depending on the requirements of the page, as is demonstrated in this article. Example pages, source files and the Java script file needed for SWFObject embedding can be found in the link below. http://blog.deconcept.com/swfobject/swfobject.zip Example of SWFObject method in comparison to the Object method listed above. Code:
<script type="text/javascript" src="http://www.yoursite.com/swfobject.js"></script> <div id="header"> <script type="text/javascript"> var so = new SWFObject("http://www.yoursite.com/forum/flash/movie.swf", " clsid:d27cdb6e-ae6d-11cf-96b8-444553540000", "1000", "274", "8", "#000000"); so.addParam("quality", "high"); so.addParam("salign", "t"); so.write("header"); </script> </div> This short bit of Javascript is what passes in the Flash movie parameters from the original code, above - so that the FlashObject script can display the Flash movie properly. Heres the breakdown: var so = new SWFObject( "movie.swf ", -- the full path to your Flash movie "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000", -- this matches the ID from your Flash movie parameters, yours could be different, an easy way to find this ID is to set the publish settings in flash to output HTML along with the .swf file and then open the HTML in notepad or any editor. "1000", -- the width of the Flash movie "274", -- the height of the Flash movie "8", -- the minimum version of the Flash Player that is required, you can set this to any version you desire, however I recommend setting it one version behind the current stable release. "#000000"); -- the background color fo.addVariable("variable", "varvalue"); -- this is only necessary if you are passing in variables to the Flash movie through the HTML code. You can duplicate this line if you are passing in several variables. Note: If you are running more then one instance of a flash element on a page as I am: header, footer, bot avatar and so on, you want to name each instance of the <div id="NAME"> and the so.write("NAME"); with a different ID. Ergo: <div id="header"> <div id="footer"> with matching so.write("header"); & so.write("footer"); variants. More information: https://code.google.com/p/swfobject/wiki/documentation Note: I recommend creating a flash folder in your forum root for either method and using complete paths to the files in the edits, ergo: "http://www.yoursite.com/forum/flash/movie.swf" # Flash Headers Adding flash to your vBulletin header, Goto admincp> styles&templates> style manager> edit template > Find the header template and open. Depending on your template setup, find this code: Code:
<!-- logo --> <a name="top"></a> <table border="0" width="$stylevar[outertablewidth]" cellpadding="0" cellspacing="0" align="center"> <tr> <td align="$stylevar[left]"><a href="$vboptions[forumhome].php$session[sessionurl_q]"><img src="$stylevar[titleimage]" border="0" alt="$vboptions[bbtitle]" /></a></td> <td align="$stylevar[right]"> </td> </tr> </table> <!-- /logo --> Code:
<script type="text/javascript" src="http://www.yoursite.com/swfobject.js"></script> <div id="header"> <script type="text/javascript"> var so = new SWFObject("http://www.yoursite.com/forum/flash/movie.swf", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000", "1000", "274", "8", "#000000"); so.addParam("quality", "high"); so.addParam("salign", "t"); so.write("header"); </script> </div> # Flash Footers Adding flash to your vBulletin footer, Goto admincp> styles&templates> style manager> edit template > Find the footer template and open. Depending on your template setup, find this code at the bottom of the template: Code:
<!-- // Main vBulletin Javascript Initialization vBulletin_init(); //--> Code:
<script type="text/javascript" src="http://www.yoursite.com/swfobject.js"></script> <div id="footer"> <script type="text/javascript"> var so = new SWFObject("http://www.yoursite.com/forum/flash/movie.swf", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000", "1000", "382", "8", "#000000"); so.addParam("quality", "high"); so.addParam("salign", "b"); so.write("footer"); </script> </div> # Flash Avatars Adding flash avatars to your vBulletin postbit and postbit legacy templates using the standard Object method. Goto admincp> styles&templates> style manager> edit template > Find the postbit or postbit lagacy template and open. Depending on your template setup, find this code: Code:
<if condition="$show['avatar']"><td class="alt2"><a href="member.php?$session[sessionurl]u=$post[userid]"><img src="$post[avatarurl]" $post[avwidth] $post[avheight] alt="<phrase 1="$post[username]">$vbphrase[xs_avatar]</phrase>" border="0" /></a></td></if> Example: postbit template, change the variables and paths to suit your needs and add this code above. Standard Object Embed: Code:
<if condition="$post['userid']=='58'"><td class="alt2"> <OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" <object type="application/x-shockwave-flash" data="http://www.yoursite.com/forum/flash/movie.swf" width="100" height="100"> <param name="allowScriptAccess" value="sameDomain" /> <param name="movie" value="http://www.yoursite.com/forum/flash/movie.swf" /> <param name="menu" value="false" /> <param name="quality" value="high" /> <param name="wmode" value="transparent"> <a href="http://www.macromedia.com/go/getflashplayer/"><img src="http://www.macromedia.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Flash Player!" /></a> </object></td></if> Update: The latest and easiest way to embed Flash is to use the swfobject generator, it is simple to use makes setup a breeze. Also be sure to grab the latest version of swfobject while your there. https://code.google.com/p/swfobject/downloads/list # Reference, Tutorial and Training Material can be found here. https://code.google.com/p/swfobject/wiki/documentation http://kb.adobe.com/selfservice/viewContent.do?externalId=tn_12701&sliceId=1 http://www.adobe.com/devnet/flash/ http://www.adobe.com/support/flash/ http://www.w3schools.com/default.asp http://www.flashkit.com/ _V |