Table of Contents
Flash Embed Plugin
Compatible with DokuWiki
2009-02-14+
This extension is marked as obsoleted. Therefore it is hidden in the Extension Manager and the extension listing. Furthermore, it is candidate for removal.
This extension has not been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues.
Similar to swfobject
Flash is not available anymore in browsers. Video functionality is included in DokuWiki, see the media syntax description and video options included adding subtitles.
Embedding videos from the many video sites like YouTube can be done with vshare plugin.
This plugin allows you to embed Flash files. Unlike DokuWiki's built-in syntax, this plugin adds an easy way to add arbitrary parameter or FlashVars. Unlike the similar swfobject plugin it does not require any JavaScript but relies on DokuWiki's own function to embed Flash files in a cross-browser compatible way instead.
Download and Installation
Search and install the plugin using the Extension Manager. Refer to Plugins on how to install plugins manually.
Changes
- Version upped (2016-07-06 20:43)
- Version upped (2016-02-03 18:16)
- Merge pull request #1 from splitbrain-forks/php7-signature (2016-02-02 13:10)
- Adjust method signatures to match parent (2016-02-02 13:10)
- Version upped (2016-01-24 14:11)
- Version upped (2014-05-21 19:41)
- fixed URL in README (2011-02-05 11:39)
- README added (2011-02-05 11:35)
Syntax and Usage
The flash is embedded using <flash></flash>
tags. The file to embed, the dimension of the flash object and the alignment is has to be given space separated in the opening tag. Name-Value pairs for the parameters are then given in the body.
Here's an example for a YouTube video:
<flash left 425x344 http://www.youtube.com/v/SMWi7CLoZ2Q> hl en_US fs 1 allowFullScreen true allowscriptaccess always </flash>
And an example for a freemind map1), using the freemind flash viewer:
<flash left 800x400 http://your-server/freemind-viewer/visorFreemind.swf> initLoadFile http://your-server/freemind-viewer/your-freemind-map.mm quality high bgcolor #c4cccc openUrl _blank </flash>
Supported alignments are left
, center
and default
. The provided SWF can either be a remote URL or a locally uploaded SWF file. In the latter case just give the ID of the file. If you want to reference additional local media files, prefix the parameter name with an exclamation mark !
. Here's an example:
<flash center 425x344 some:namespace:visualize.swf> title An example visualization !data some:other:namespace:data.xml </flash>
[PATCH] Alternative Image
Hi, I have been bouncing back and forth between swfobject that does not seem to work anymore and this flash plugin that does not have the ability to display an alternate image in case the browser does not support flash. The following patch will add an alt
parameter letting you specify the path to an image in dokuwiki format.
For example, if you want to embed a flash movie called presentation.swf
and display the image sorry.png
in case the browser does not support flash, you would use the following code:
<flash center 425x344 presentation.swf> title A Generic Presentation alt sorry.png </flash>
To apply the patch, download the file alt.patch
in the /lib/tpl/flash
directory and issue:
cat alt.patch | patch -p1
I am sure that the author could revise the code and add a better way of handling this, but this has worked for us so far.
- alt.patch
--- syntax.php.orig 2014-06-04 21:33:22.683345771 +0100 +++ syntax.php 2014-06-04 21:35:22.059345869 +0100 @@ -85,6 +85,9 @@ if($key{0} == '!') { $return['data'][substr($key,1)] = ml($val,'',true,'&'); unset($return['data'][$key]); + } else if($key == 'alt') { + return['alt'] = '<img src="'.ml($val,'',true,'&').'" alt="'.$val.'"/>'; + unset($return['data'][$key]); } } @@ -102,7 +105,7 @@ if($data['align'] == 'right') $att['align'] = 'right'; if($data['align'] == 'left') $att['align'] = 'left'; - $R->doc .= html_flashobject($data['swf'],$data['width'],$data['height'],$data['data'],$data['data'],$att); + $R->doc .= html_flashobject($data['swf'],$data['width'],$data['height'],$data['data'],$data['data'],$att,$data['alt']); return true; }