| Current Path : /home/chauffn/vuzelia/2023/plugins/system/helix3/fields/ |
| Current File : /home/chauffn/vuzelia/2023/plugins/system/helix3/fields/layoutlist.php |
<?php
/**
* @package Helix3 Framework
* @author JoomShaper https://www.joomshaper.com
* @copyright (c) 2010 - 2026 JoomShaper
* @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or Later
*/
//no direct accees
defined('_JEXEC') or die('resticted aceess');
use Joomla\CMS\Factory;
use Joomla\CMS\Filesystem\Folder;
use Joomla\CMS\Form\FormField;
if (version_compare(JVERSION, '5.0', '>=')) {
if (! class_exists('Joomla\\CMS\\Filesystem\\Folder') && class_exists('Joomla\\Filesystem\\Folder')) {
class_alias('Joomla\\Filesystem\\Folder', 'Joomla\\CMS\\Filesystem\\Folder');
}
}
use Joomla\CMS\Language\Text;
class JFormFieldLayoutlist extends FormField
{
protected $type = 'Layoutlist';
public function getInput()
{
$template = self::getTemplate();
$layoutPath = JPATH_SITE . '/templates/' . $template . '/layout/';
$laoutlist = Folder::files($layoutPath, '.json');
$htmls = '<div class="layoutlist"><select id="' . $this->id . '" class="form-select" name="' . $this->name . '">';
if ($laoutlist) {
foreach ($laoutlist as $name) {
$htmls .= '<option value="' . $name . '">' . str_replace('.json', '', $name) . '</option>';
}
}
$htmls .= '</select></div>';
$htmls .= '<div class="layout-button-wrap"><a href="#" class="btn btn-success layout-save-action" data-action="save">' . Text::_('HELIX_SAVE_COPY') . '</a>';
$htmls .= '<a href="#" class="btn btn-danger layout-del-action" data-action="remove">' . Text::_('HELIX_DELETE') . '</a></div>';
return $htmls;
}
public function getLabel()
{
return false;
}
//Get template name
private static function getTemplate()
{
$id = (int) Factory::getApplication()->input->get('id', 0);
$db = Factory::getDbo();
$query = $db->getQuery(true);
$query->select($db->quoteName(['template']));
$query->from($db->quoteName('#__template_styles'));
$query->where($db->quoteName('id') . ' = ' . $db->quote($id));
$db->setQuery($query);
return $db->loadResult();
}
}