This repository has been archived on 2024-06-26. You can view files and clone it, but cannot push or open issues or pull requests.
sakura/_sakura/components/BBcodeDefinitions/YouTube.php

38 lines
870 B
PHP
Raw Normal View History

<?php
/*
* YouTube BBcode
* As displayed on this page http://jbbcode.com/docs
*/
namespace Sakura\BBcodeDefinitions;
use JBBCode\Parser;
use JBBCode\CodeDefinition;
use JBBCode\ElementNode;
2015-12-02 14:40:28 +00:00
class YouTube extends CodeDefinition
{
public function __construct()
{
parent::__construct();
$this->setTagName("youtube");
}
public function asHtml(ElementNode $el)
{
$content = "";
2015-12-02 14:40:28 +00:00
foreach ($el->getChildren() as $child) {
$content .= $child->getAsBBCode();
}
$foundMatch = preg_match('/^([A-z0-9=\-]+?)$/i', $content, $matches);
2015-12-02 14:40:28 +00:00
if (!$foundMatch) {
return $el->getAsBBCode();
} else {
return "<iframe width=\"640\" height=\"390\" src=\"https://www.youtube.com/embed/".$matches[1]."\" frameborder=\"0\" allowfullscreen></iframe>";
}
}
}