From 469aa3ba50d604e4806b7cc2956d9b3f91bcb90a Mon Sep 17 00:00:00 2001 From: Rossiani Wijaya Date: Mon, 31 Jan 2011 15:03:58 +0800 Subject: [PATCH] create youtube playlist filter. Fixed regex, removed addslash_js, use variable param instead of url because the variable contains the value of the url parameter. --- filter/mediaplugin/filter.php | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/filter/mediaplugin/filter.php b/filter/mediaplugin/filter.php index 59d8151a6e4..6a9ec854a82 100644 --- a/filter/mediaplugin/filter.php +++ b/filter/mediaplugin/filter.php @@ -125,6 +125,9 @@ class filter_mediaplugin extends moodle_text_filter { $search = '/]*href="([^<]*)youtube.com\/v\/([^"]*)"[^>]*>(.*?)<\/a>/is'; $newtext = preg_replace_callback($search, 'filter_mediaplugin_youtube_callback', $newtext); + + $search = '/]+?)?\s+href="((([^"]+)youtube\.com)\/view_play_list\?p=([^"]*))"[^>]*>(.*?)<\/a>/is'; + $newtext = preg_replace_callback($search, 'filter_mediaplugin_youtube_playlist_callback', $newtext); } if (!empty($CFG->filter_mediaplugin_enable_img)) { @@ -349,6 +352,25 @@ function filter_mediaplugin_youtube_callback($link, $autostart=false) { ''; } +/** + * Change Youtube playlist into embedded Youtube playlist videos + */ +function filter_mediaplugin_youtube_playlist_callback($link, $autostart=false) { + + $site = s($link[4]); + $param = s($link[5]); + $info = s($link[6]); + + return ''. + ''. + ''. + ''. + ''. + ''; +} + /** * Change links to images into embedded images */ -- 2.36.1