Новости Joomla

Вышли релизы безопасности Joomla 5.3.4 и Joomla 4.4.14

Релиз безопасности Joomla 5.3.4

Проект Joomla спешит сообщить о выпуске Joomla 5.3.4 и Joomla 4.4.14. Это релиз безопасности для серии Joomla 5.3 и релиз безопасности для серии Joomla 4.4.

0 Пользователей и 1 Гость просматривают эту тему.
  • 12 Ответов
  • 1355 Просмотров
*

shraike

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Здравствуйте, форумчане.
Мучаюсь с настройкой вывода дополнительных полей с ценами VM2.

Имею - вывод дополнительных полей с ценами (поля приписаны, как атрибут корзины)
в виде:
Число ступеней
8ст. - 115
10ст. - 300
12ст. - 350

Нужно вывести цену с двумя знаками после запятой и надписью грн. после цены или просто добавить "грн."
в виде:
8ст. - 115,00грн.
10ст. - 300,00грн.
12ст. - 350,00грн.

За вывод полей и цен отвечает customfields.php из administrator/components/com_virtuemart/models

там нашел интересующую строку (у меня 880)
Код
foreach ($group->options as $productCustom) {
        $price = $currency->priceDisplay($calculator->calculateCustomPriceWithTax($base_price+$productCustom->custom_price)) ;
       //вот оно - >        $productCustom->text = $productCustom->custom_value . ' - ' . $price;
}

Добавляю в код "грн."  -
$productCustom->text = $productCustom->custom_value . ' - ' . $price . 'грн.';
- получаю ничего - все остается без изменений.
То-же самое получаю при введении под кавычки любого символа. Стоит добавить английскую букву/текст (например grn) - получаю вывод цены с двумя знаками и символом валюты + добавленная буква.

8ст. - 115,00 грн. grn
10ст. - 300,00 грн. grn
12ст. - 350,00 грн. grn

Что не так?
« Последнее редактирование: 24.04.2014, 14:29:49 от shraike »
*

Siber

  • Захожу иногда
  • 150
  • 9 / 0
Re: Требуется помощь по PHP коду
« Ответ #1 : 24.04.2014, 17:45:50 »
Цитировать
$productCustom->text = $productCustom->custom_value . ' - ' . $price . 'грн.';

А если так?
$productCustom->text = $productCustom->custom_value . ' - ' . $price . 'грн\.';
*

shraike

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Re: Требуется помощь по PHP коду
« Ответ #2 : 24.04.2014, 20:39:11 »
Такую конструкцию игнорирует, как будто и не добавлял ничего. Т.е. получаю голую цифру
8ст. - 115
10ст. - 300
12ст. - 350
*

shraike

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Re: Требуется помощь по PHP коду
« Ответ #3 : 24.04.2014, 20:48:09 »
Может фишка кроется в выводе на экран этого списка?
Код
$group->display = VmHTML::select ('customPrice[' . $row . '][' . $group->virtuemart_custom_id . ']', $group->options, $default->custom_value, '', 'virtuemart_customfield_id', 'text', FALSE);
*

Siber

  • Захожу иногда
  • 150
  • 9 / 0
Re: Требуется помощь по PHP коду
« Ответ #4 : 24.04.2014, 22:56:38 »
Не похоже. А какой ответ выдаст на такой вариант?
. "грн";
*

shraike

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Re: Требуется помощь по PHP коду
« Ответ #5 : 24.04.2014, 23:09:53 »
При использовании любых русских букв в любой комбинации и количестве, а также знаков и цифр - они просто игнорируются.
Стоит поставить хотя бы одну английскую букву - получают вывод с двумя знаками после запятой и надпись грн. + введенные символы
*

Siber

  • Захожу иногда
  • 150
  • 9 / 0
Re: Требуется помощь по PHP коду
« Ответ #6 : 25.04.2014, 00:09:09 »
Имелось в виду: поставить грн в двойных кавычках.
Какой будет результат?
*

shraike

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Re: Требуется помощь по PHP коду
« Ответ #7 : 25.04.2014, 11:50:49 »
Тип кавычек на результат не влияет. Кодировка файла UTF-8 без ВОМ.
*

Siber

  • Захожу иногда
  • 150
  • 9 / 0
Re: Требуется помощь по PHP коду
« Ответ #8 : 25.04.2014, 12:45:56 »
$productCustom->text = $productCustom->custom_value . ' - ' . $price . 'грн.';

Тогда так:
Добавляете переменную в языковой файл
COM_VIRTUEMART_PRICE_GRN=" грн."

и заменяете
Код
$productCustom->text = $productCustom->custom_value . ' - ' . $price . JText::_ ('COM_VIRTUEMART_PRICE_GRN');
*

shraike

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Re: Требуется помощь по PHP коду
« Ответ #9 : 25.04.2014, 14:51:38 »
Не помогает.

Посмотрел содержимое $productCustom по var_dump в варианте, когда после .$price  ни чего не добавляется
получил следующее
Код
object(stdClass)#596 (9) { 
["virtuemart_product_id"]=> string(2) "15"
["custom_params"]=> string(1) "0"
["custom_element"]=> string(1) "0"
["virtuemart_custom_id"]=> string(1) "5"
["virtuemart_customfield_id"]=> string(2) "27"
["custom_value"]=> string(8) " 10ст."
["custom_price"]=> string(9) "220.00000"
["custom_param"]=> string(0) ""
["text"]=> string(25) " 10ст. - 410,00 грн."
}

т.е. в text попадает то, что надо ( " 10ст. - 410,00 грн."), буду разбирать конструкцию вывода

Код
$group->display = VmHTML::select ('customPrice[' . $row . '][' . $group->virtuemart_custom_id . ']', $group->options, $default->custom_value, '', 'virtuemart_customfield_id', 'text', FALSE);
*

shraike

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Re: Требуется помощь по PHP коду
« Ответ #10 : 25.04.2014, 16:39:47 »
Покопался в коде
VmHTML::select в общем-то вызывает JHTML::_('select.genericlist'....

Код
public static function select($name, $options, $default = '0',$attrib = "onchange='submit();'",$key ='value' ,$text ='text', $zero=true){
if ($zero==true) {
$option  = array($key =>"0", $text => JText::_('COM_VIRTUEMART_LIST_EMPTY_OPTION'));
$options = array_merge(array($option), $options);
}
return JHTML::_('select.genericlist', $options,$name,$attrib,$key,$text,$default,false,true);

Вопрос по последнему параметру - ведь это устанавливается $translate=true для HTML::_('select.genericlist'...
похоже он и модифицирует текст - а как он должен работать?
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Требуется помощь по PHP коду
« Ответ #11 : 25.04.2014, 17:40:17 »
Вопрос по последнему параметру - как он должен работать?
Этот флаг указывает на то, переводить с помощью JText или нет.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

shraike

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Re: Требуется помощь по PHP коду
« Ответ #12 : 25.04.2014, 17:50:11 »
Непонятна фраза переводить?

почему он из моего текста
["text"]=> string(25) " 10ст. - 410,00 грн."

делает в списке
" 10ст. - 410"

получается, что вместо "10ст. - 410,00 грн."
в функцию передается JText::_("10ст. - 410,00 грн.")?


« Последнее редактирование: 25.04.2014, 17:57:04 от shraike »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Нужна помощь с настройкой плагина BIT VirtueMart Product Badges

Автор maks84zp

Ответов: 5
Просмотров: 3122
Последний ответ 21.01.2018, 14:43:09
от sheldom
Требуется разработка модуля просмотренных товаров в VirtueMart 2

Автор alanbus

Ответов: 0
Просмотров: 923
Последний ответ 01.09.2014, 11:22:24
от alanbus
Галерея товаров нужна помощь

Автор Stasweb

Ответов: 1
Просмотров: 1289
Последний ответ 22.11.2012, 17:15:14
от Stasweb
Требуеться помощь по VM 2

Автор doz-lt

Ответов: 4
Просмотров: 1496
Последний ответ 04.04.2012, 16:19:44
от doz-lt