mirror of
https://github.com/friendica/friendica
synced 2025-04-26 17:50:11 +00:00
Move bb_translate_video
- To new Class BBCode\Video - Adding tests - Make BaseObject::getClass() public
This commit is contained in:
parent
7f49c73730
commit
2870f42ca2
5 changed files with 80 additions and 20 deletions
32
src/Content/Text/BBCode/Video.php
Normal file
32
src/Content/Text/BBCode/Video.php
Normal file
|
@ -0,0 +1,32 @@
|
|||
<?php
|
||||
|
||||
namespace Friendica\Content\Text\BBCode;
|
||||
|
||||
/**
|
||||
* Video specific BBCode util class
|
||||
*/
|
||||
final class Video
|
||||
{
|
||||
/**
|
||||
* Transforms video BBCode tagged links to youtube/vimeo tagged links
|
||||
*
|
||||
* @param string $bbCodeString The input BBCode styled string
|
||||
*
|
||||
* @return string The transformed text
|
||||
*/
|
||||
public function transform(string $bbCodeString)
|
||||
{
|
||||
$matches = null;
|
||||
$found = preg_match_all("/\[video\](.*?)\[\/video\]/ism",$bbCodeString,$matches,PREG_SET_ORDER);
|
||||
if ($found) {
|
||||
foreach ($matches as $match) {
|
||||
if ((stristr($match[1], 'youtube')) || (stristr($match[1], 'youtu.be'))) {
|
||||
$bbCodeString = str_replace($match[0], '[youtube]' . $match[1] . '[/youtube]', $bbCodeString);
|
||||
} elseif (stristr($match[1], 'vimeo')) {
|
||||
$bbCodeString = str_replace($match[0], '[vimeo]' . $match[1] . '[/vimeo]', $bbCodeString);
|
||||
}
|
||||
}
|
||||
}
|
||||
return $bbCodeString;
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue