diff --git a/filter/mediaplugin/defaultsettings.php b/filter/mediaplugin/defaultsettings.php index e0ec1defeeb..1f3427d342c 100644 --- a/filter/mediaplugin/defaultsettings.php +++ b/filter/mediaplugin/defaultsettings.php @@ -49,4 +49,12 @@ set_config( 'filter_mediaplugin_enable_avi', 1 ); } } + if (!isset($CFG->filter_mediaplugin_enable_flv)) { + if (isset($CFG->filter_mediaplugin_ignore_flv)) { + set_config( 'filter_mediaplugin_enable_flv', !$CFG->filter_mediaplugin_ignore_flv ); + } + else { + set_config( 'filter_mediaplugin_enable_flv', 1 ); + } + } ?> diff --git a/filter/mediaplugin/filter.php b/filter/mediaplugin/filter.php index 637d23a32fa..0d57f829c13 100644 --- a/filter/mediaplugin/filter.php +++ b/filter/mediaplugin/filter.php @@ -69,6 +69,27 @@ function mediaplugin_filter($courseid, $text) { $text = preg_replace($search, $replace, $text); } + + if ($CFG->filter_mediaplugin_enable_flv) { + $search = '/]*)>(.*?)<\/a>/is'; + + $replace = '\\0 wwwroot/filter/mediaplugin/flvplayer.swf?file=\\2.flv\" />"; + $replace .= ' '; + $replace .= ' '; + $replace .= ' '; + $replace .= " wwwroot/filter/mediaplugin/flvplayer.swf?file=\\2.flv\" "; + $replace .= " quality=\"high\" bgcolor=\"#FFFFFF\" width=\"480\" height=\"360\" name=\"flvplayer\" "; + $replace .= ' type="application/x-shockwave-flash" '; + $replace .= ' flashvars="'.$c.'" '; + $replace .= ' pluginspage="http://www.macromedia.com/go/getflashplayer">'; + $replace .= ''; + $replace .= ' '; + + $text = preg_replace($search, $replace, $text); + } if ($CFG->filter_mediaplugin_enable_mov) { $search = '/]*)>(.*?)<\/a>/is'; diff --git a/filter/mediaplugin/filterconfig.html b/filter/mediaplugin/filterconfig.html index c57208c63d9..c9f9983d4c6 100644 --- a/filter/mediaplugin/filterconfig.html +++ b/filter/mediaplugin/filterconfig.html @@ -10,6 +10,7 @@ $txt->mediapluginwmv = get_string( 'mediapluginwmv','admin' ); $txt->mediapluginmpg = get_string( 'mediapluginmpg','admin' ); $txt->mediapluginavi = get_string( 'mediapluginavi','admin' ); + $txt->mediapluginflv = get_string( 'mediapluginflv','admin' ); $txt->yes = get_string( 'yes' ); $txt->no = get_string( 'no' ); @@ -47,4 +48,9 @@ filter_mediaplugin_enable_avi ); ?> + + mediapluginflv ?> + filter_mediaplugin_enable_flv ); ?> + diff --git a/filter/mediaplugin/flvplayer.README.txt b/filter/mediaplugin/flvplayer.README.txt new file mode 100644 index 00000000000..85c7365e94d --- /dev/null +++ b/filter/mediaplugin/flvplayer.README.txt @@ -0,0 +1,7 @@ +The FLV player is by Jeroen Wijering - www.jeroenwijering.com +produced under the creative commons license + +(exact terms: http://creativecommons.org/licenses/by-nc-sa/2.5/) + +We are currently waiting for clearance from him to include this +in Moodle under the GPL ... it will be removed if he says no. diff --git a/filter/mediaplugin/flvplayer.swf b/filter/mediaplugin/flvplayer.swf new file mode 100644 index 00000000000..694e3910ae4 Binary files /dev/null and b/filter/mediaplugin/flvplayer.swf differ