| Server IP : 46.105.57.169 / Your IP : 216.73.217.8 Web Server : Apache System : Linux webd003.cluster120.gra.hosting.ovh.net 6.18.42-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Wed Aug 5 15:59:48 CEST 2026 x86_64 User : maitricfuz ( 93378) PHP Version : 8.4.22 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/maitricfuz/www/saint-martin-lg/libraries/regularlabs/src/Plugin/ |
Upload File : |
<?php
/**
* @package Regular Labs Library
* @version 26.7.20176
*
* @author Peter van Westen <info@regularlabs.com>
* @link https://regularlabs.com
* @copyright Copyright © 2026 Regular Labs All Rights Reserved
* @license GNU General Public License version 2 or later
*/
namespace RegularLabs\Library\Plugin;
defined('_JEXEC') or die;
use ReflectionClass;
use RegularLabs\Library\Input;
class EditorButtonPopupTemplate
{
public static function getPath(object $popup): string
{
$layout = Input::getString('layout', '');
$file = 'popup' . ($layout ? '.' . $layout : '') . '.php';
return dirname(self::getDirectory($popup)) . '/tmpl/' . $file;
}
public static function render(object $popup): string
{
if (!is_callable([$popup, 'renderTemplate'])) {
return self::renderLegacyTemplate($popup);
}
return $popup->renderTemplate();
}
private static function getDirectory(object $popup): string
{
$reflection = new ReflectionClass($popup);
return dirname($reflection->getFileName());
}
private static function renderLegacyTemplate(object $popup): string
{
ob_start();
include self::getPath($popup);
$html = ob_get_contents();
ob_end_clean();
return $html;
}
}