convert media embed functions that deal with rewriting specific corporate services to addon hooks
This commit is contained in:
parent
5ac262bd61
commit
2a14c71128
@ -70,6 +70,9 @@ Hooks allow plugins/addons to "hook into" the code at many points and alter the
|
||||
[zrl=[baseurl]/help/hook/bbcode]bbcode[/zrl]
|
||||
Called when converting bbcode to HTML
|
||||
|
||||
[zrl=[baseurl]/help/hook/bb_translate_video]bb_translate_video[/zrl]
|
||||
Called when extracting embedded services from bbcode video elements (rarely used)
|
||||
|
||||
[zrl=[baseurl]/help/hook/channel_remove]channel_remove[/zrl]
|
||||
Called when removing a channel
|
||||
|
||||
@ -242,8 +245,11 @@ Hooks allow plugins/addons to "hook into" the code at many points and alter the
|
||||
[zrl=[baseurl]/help/hook/hostxrd]hostxrd[/zrl]
|
||||
Called when generating .well-known/hosts-meta for "old webfinger" (used by Diaspora protocol)
|
||||
|
||||
[zrl=[baseurl]/help/hook/html2bb_video]html2bb_video[/zrl]
|
||||
Called when using the html2bbcode translation to handle embedded media
|
||||
|
||||
[zrl=[baseurl]/help/hook/html2bbcode]html2bbcode[/zrl]
|
||||
Called when using the html2bbcode tranlsation
|
||||
Called when using the html2bbcode translation
|
||||
|
||||
[zrl=[baseurl]/help/hook/identity_basic_export]identity_basic_export[/zrl]
|
||||
Called when exporting a channel's basic information for backup or transfer
|
||||
|
@ -1895,32 +1895,15 @@ function cleardiv() {
|
||||
|
||||
|
||||
function bb_translate_video($s) {
|
||||
|
||||
$matches = null;
|
||||
$r = preg_match_all("/\[video\](.*?)\[\/video\]/ism",$s,$matches,PREG_SET_ORDER);
|
||||
if($r) {
|
||||
foreach($matches as $mtch) {
|
||||
if((stristr($mtch[1],'youtube')) || (stristr($mtch[1],'youtu.be')))
|
||||
$s = str_replace($mtch[0],'[youtube]' . $mtch[1] . '[/youtube]',$s);
|
||||
elseif(stristr($mtch[1],'vimeo'))
|
||||
$s = str_replace($mtch[0],'[vimeo]' . $mtch[1] . '[/vimeo]',$s);
|
||||
}
|
||||
}
|
||||
return $s;
|
||||
$arr = array('string' => $s);
|
||||
call_hooks('bb_translate_video',$arr);
|
||||
return $arr['string'];
|
||||
}
|
||||
|
||||
function html2bb_video($s) {
|
||||
|
||||
$s = preg_replace('#<object[^>]+>(.*?)https?://www.youtube.com/((?:v|cp)/[A-Za-z0-9\-_=]+)(.*?)</object>#ism',
|
||||
'[youtube]$2[/youtube]', $s);
|
||||
|
||||
$s = preg_replace('#<iframe[^>](.*?)https?://www.youtube.com/embed/([A-Za-z0-9\-_=]+)(.*?)</iframe>#ism',
|
||||
'[youtube]$2[/youtube]', $s);
|
||||
|
||||
$s = preg_replace('#<iframe[^>](.*?)https?://player.vimeo.com/video/([0-9]+)(.*?)</iframe>#ism',
|
||||
'[vimeo]$2[/vimeo]', $s);
|
||||
|
||||
return $s;
|
||||
$arr = array('string' => $s);
|
||||
call_hooks('html2bb_video',$arr);
|
||||
return $arr['string'];
|
||||
}
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user