Added audio bbcode.
This commit is contained in:
parent
d16703d6d3
commit
aea7f600ff
2 changed files with 20 additions and 0 deletions
|
@ -26,6 +26,7 @@ class BBCodeParser implements ParserInterface
|
|||
new Tags\QuoteTag,
|
||||
|
||||
// Slightly more advanced markup
|
||||
new Tags\AudioTag,
|
||||
new Tags\VideoTag,
|
||||
|
||||
// Basic markup
|
||||
|
|
19
src/Parsers/BBCode/Tags/AudioTag.php
Normal file
19
src/Parsers/BBCode/Tags/AudioTag.php
Normal file
|
@ -0,0 +1,19 @@
|
|||
<?php
|
||||
namespace Misuzu\Parsers\BBCode\Tags;
|
||||
|
||||
use Misuzu\Parsers\BBCode\BBCodeTag;
|
||||
|
||||
final class AudioTag extends BBCodeTag
|
||||
{
|
||||
public function parseText(string $text): string
|
||||
{
|
||||
return preg_replace_callback(
|
||||
'#\[audio\]((?:https?:\/\/).*)\[/audio\]#',
|
||||
function ($matches) {
|
||||
$mediaUrl = proxy_media_url($matches[1]);
|
||||
return "<audio controls src='{$mediaUrl}'></audio>";
|
||||
},
|
||||
$text
|
||||
);
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue