From 8e2ceb4ba5a3b9f8477454bbb93aec17613dc8d9 Mon Sep 17 00:00:00 2001 From: David Siegfried <david.siegfried@uni-vechta.de> Date: Thu, 19 Oct 2023 09:37:12 +0000 Subject: [PATCH] remove flash leftover, closes #3371 Closes #3371 Merge request studip/studip!2291 --- config/config.inc.php.dist | 7 ---- config/config_develop.inc.php | 7 ---- .../5.5.4_remove_flash_from_config.php | 36 ++++++++++++++++++ lib/classes/StudipCoreFormat.php | 28 ++++---------- public/assets/flash/player.swf | Bin 11254 -> 0 bytes public/assets/flash/player_flv.swf | Bin 11803 -> 0 bytes 6 files changed, 44 insertions(+), 34 deletions(-) create mode 100644 db/migrations/5.5.4_remove_flash_from_config.php delete mode 100644 public/assets/flash/player.swf delete mode 100644 public/assets/flash/player_flv.swf diff --git a/config/config.inc.php.dist b/config/config.inc.php.dist index d7a0f83df5c..98c38a4b1c2 100644 --- a/config/config.inc.php.dist +++ b/config/config.inc.php.dist @@ -35,8 +35,6 @@ // +---------------------------------------------------------------------------+ global - $FLASHPLAYER_DEFAULT_CONFIG_MIN, - $FLASHPLAYER_DEFAULT_CONFIG_MAX, $INST_ADMIN_DATAFIELDS_VIEW, $INST_MODULES, $INST_TYPE, @@ -266,11 +264,6 @@ $SYMBOL_SHORT = array( this options are only needed, if you are using the addional Stud.IP modules (please see in config_local.inc.php which modules are activated). It's a good idea to leave this settings untouched...*/ - -// cofiguration for flash player -$FLASHPLAYER_DEFAULT_CONFIG_MIN = "&showstop=1&showvolume=1&bgcolor=A6B6C6&bgcolor1=A6B6C6&bgcolor2=7387AC&playercolor=7387AC&buttoncolor=254580&buttonovercolor=E9EFFD&slidercolor1=CAD7E1&slidercolor2=A6B6C6&sliderovercolor=E9EFFD&loadingcolor=E9B21A&buffer=5&buffercolor=white&buffershowbg=0&playeralpha=90&playertimeout=500&shortcut=1&phpstream=0&onclick=playpause&showloading=always"; -$FLASHPLAYER_DEFAULT_CONFIG_MAX = "&showstop=1&showvolume=1&bgcolor=A6B6C6&bgcolor1=A6B6C6&bgcolor2=7387AC&playercolor=7387AC&buttoncolor=254580&buttonovercolor=E9EFFD&slidercolor1=CAD7E1&slidercolor2=A6B6C6&sliderovercolor=E9EFFD&loadingcolor=E9B21A&buffer=5&buffercolor=white&buffershowbg=0&playeralpha=90&playertimeout=500&shortcut=1&showtime=1&showfullscreen=1&showplayer=always&phpstream=0&onclick=playpause&showloading=always"; - /* * use this to customize the fields shown in the standard/extended view on the instiute member page * valid values are 'raum', 'sprechzeiten', 'telefon', 'email', 'homepage' and userinstrole datafield ids diff --git a/config/config_develop.inc.php b/config/config_develop.inc.php index 26787a21a9c..a38726a6c24 100644 --- a/config/config_develop.inc.php +++ b/config/config_develop.inc.php @@ -36,8 +36,6 @@ global $CALENDAR_MAX_EVENTS, - $FLASHPLAYER_DEFAULT_CONFIG_MIN, - $FLASHPLAYER_DEFAULT_CONFIG_MAX, $INST_ADMIN_DATAFIELDS_VIEW, $INST_MODULES, $INST_STATUS_GROUPS, @@ -323,11 +321,6 @@ $SYMBOL_SHORT = [ this options are only needed, if you are using the addional Stud.IP modules (please see in config_local.inc.php which modules are activated). It's a good idea to leave this settings untouched...*/ - -// cofiguration for flash player -$FLASHPLAYER_DEFAULT_CONFIG_MIN = "&showstop=1&showvolume=1&bgcolor=A6B6C6&bgcolor1=A6B6C6&bgcolor2=7387AC&playercolor=7387AC&buttoncolor=254580&buttonovercolor=E9EFFD&slidercolor1=CAD7E1&slidercolor2=A6B6C6&sliderovercolor=E9EFFD&loadingcolor=E9B21A&buffer=5&buffercolor=white&buffershowbg=0&playeralpha=90&playertimeout=500&shortcut=1&phpstream=0&onclick=playpause&showloading=always"; -$FLASHPLAYER_DEFAULT_CONFIG_MAX = "&showstop=1&showvolume=1&bgcolor=A6B6C6&bgcolor1=A6B6C6&bgcolor2=7387AC&playercolor=7387AC&buttoncolor=254580&buttonovercolor=E9EFFD&slidercolor1=CAD7E1&slidercolor2=A6B6C6&sliderovercolor=E9EFFD&loadingcolor=E9B21A&buffer=5&buffercolor=white&buffershowbg=0&playeralpha=90&playertimeout=500&shortcut=1&showtime=1&showfullscreen=1&showplayer=always&phpstream=0&onclick=playpause&showloading=always"; - //Here you have to add the datafield_ids as elements. They will be shown in the standard / extended view on inst_admin.php $INST_ADMIN_DATAFIELDS_VIEW = [ 'default' => [], diff --git a/db/migrations/5.5.4_remove_flash_from_config.php b/db/migrations/5.5.4_remove_flash_from_config.php new file mode 100644 index 00000000000..56cb3220356 --- /dev/null +++ b/db/migrations/5.5.4_remove_flash_from_config.php @@ -0,0 +1,36 @@ +<?php +final class RemoveFlashFromConfig extends Migration +{ + private const OLD_DESCRIPTION = 'Sollen externe Medien über [img/flash/audio/video] eingebunden werden? deny=nicht erlaubt, allow=erlaubt, proxy=proxy benutzen.'; + private const NEW_DESCRIPTION = 'Sollen externe Medien über [img/audio/video] eingebunden werden? deny=nicht erlaubt, allow=erlaubt, proxy=proxy benutzen.'; + + + public function description() + { + return 'Removes reference to flash from config description'; + } + + protected function up() + { + $query = "UPDATE `config` + SET `description` = :new_description + WHERE `field` = 'LOAD_EXTERNAL_MEDIA' + AND `description` = :old_description"; + DBManager::get()->execute($query, [ + ':new_description' => self::NEW_DESCRIPTION, + ':old_description' => self::OLD_DESCRIPTION, + ]); + } + + protected function down() + { + $query = "UPDATE `config` + SET `description` = :old_description + WHERE `field` = 'LOAD_EXTERNAL_MEDIA' + AND `description` = :new_description"; + DBManager::get()->execute($query, [ + ':new_description' => self::NEW_DESCRIPTION, + ':old_description' => self::OLD_DESCRIPTION, + ]); + } +} diff --git a/lib/classes/StudipCoreFormat.php b/lib/classes/StudipCoreFormat.php index b6562527df5..389256f937f 100644 --- a/lib/classes/StudipCoreFormat.php +++ b/lib/classes/StudipCoreFormat.php @@ -148,7 +148,7 @@ class StudipCoreFormat extends TextFormat 'callback' => 'StudipCoreFormat::markupCode' ], 'media' => [ - 'start' => '\[(img|flash|audio|video)(.*?)\](.*?)(?=\s|$)', + 'start' => '\[(img|audio|video)(.*?)\](.*?)(?=\s|$)', 'callback' => 'StudipCoreFormat::markupMedia' ], 'emails' => [ @@ -524,7 +524,7 @@ class StudipCoreFormat extends TextFormat } /** - * Stud.IP markup for images, audio, video and flash-films + * Stud.IP markup for images, audio and video */ protected static function markupMedia($markup, $matches) { @@ -598,24 +598,12 @@ class StudipCoreFormat extends TextFormat $media_url = idna_link($url); } - if ($tag === "flash") { - $width = $width ? $width : 200; - $height = round($width * 0.75); - $flash_config = $width > 200 ? $GLOBALS['FLASHPLAYER_DEFAULT_CONFIG_MAX'] : $GLOBALS['FLASHPLAYER_DEFAULT_CONFIG_MIN']; - $media = '<object type="application/x-shockwave-flash" id="FlashPlayer" data="'.Assets::url().'flash/player_flv.swf" width="'.$width.'" height="'.$height.'"> - <param name="movie" value="'.Assets::url().'flash/player_flv.swf"> - <param name="allowFullScreen" value="true"> - <param name="FlashVars" value="flv='.urlencode(decodeHTML($media_url)).'&startimage='.$link.$flash_config.'"> - <embed src="'.Assets::url().'flash/player_flv.swf" movie="$media_url" type="application/x-shockwave-flash" FlashVars="flv='.urlencode(decodeHTML($media_url)).'&startimage='.$link.$flash_config.'"> - </object>'; - } else { - $media = sprintf($format_strings[$tag], - $media_url, - isset($width) ? "width: ".$width."px;" : "", - $title, - $title - ); - } + $media = sprintf($format_strings[$tag], + $media_url, + isset($width) ? "width: ".$width."px;" : "", + $title, + $title + ); if ($tag === 'audio') { $random_id = 'audio-' . mb_substr(md5(uniqid('audio', true)), -8); diff --git a/public/assets/flash/player.swf b/public/assets/flash/player.swf deleted file mode 100644 index 497cfcefb13758da8ef2bde2d375c1230b6dd54f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11254 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 O4I0+`mtOjQaVh|nI?5mb diff --git a/public/assets/flash/player_flv.swf b/public/assets/flash/player_flv.swf deleted file mode 100644 index 9aba8bf7f46cd42fb9920da958a7c24a4b416a1d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11803 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 -- GitLab