60 lines
1.5 KiB
PHP
60 lines
1.5 KiB
PHP
<?php
|
|
|
|
/**
|
|
* @author Tassos Marinos <info@tassos.gr>
|
|
* @link https://www.tassos.gr
|
|
* @copyright Copyright © 2024 Tassos All Rights Reserved
|
|
* @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later
|
|
*/
|
|
|
|
// No direct access to this file
|
|
defined('_JEXEC') or die;
|
|
|
|
use Joomla\Registry\Registry;
|
|
|
|
require_once __DIR__ . '/componentitems.php';
|
|
|
|
class JFormFieldVirtueMartComponentItems extends JFormFieldComponentItems
|
|
{
|
|
public function init()
|
|
{
|
|
// Get default language
|
|
$this->element['table'] = 'virtuemart_products_' . $this->getLanguage();
|
|
|
|
parent::init();
|
|
}
|
|
|
|
/**
|
|
* VirtueMart is using different tables per language. Therefore, we need to use their API to get the default language code
|
|
*
|
|
* @return string
|
|
*/
|
|
private function getLanguage($default = 'en_gb')
|
|
{
|
|
// Silent inclusion.
|
|
@include_once JPATH_ADMINISTRATOR . '/components/com_virtuemart/helpers/config.php';
|
|
|
|
if (!class_exists('VmConfig'))
|
|
{
|
|
return $default;
|
|
}
|
|
|
|
// Init configuration
|
|
VmConfig::loadConfig();
|
|
|
|
return VmConfig::$jDefLang;
|
|
}
|
|
|
|
protected function getItems()
|
|
{
|
|
$items = parent::getItems();
|
|
|
|
// If text is not properly decoded, decode it
|
|
$items = array_map(function($item) {
|
|
$item->text = html_entity_decode($item->text);
|
|
return $item;
|
|
}, $items);
|
|
|
|
return $items;
|
|
}
|
|
} |