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

Paha_web

  • Осваиваюсь на форуме
  • 153
  • 1
  • Еще правок хотите?
Всем привет. Бьюсь уже несколько дней с этой проблемой, при изменении количества товара в карточке товара Итоговая стоимость просто обновляется но не изменяется! Например стоимость товара 2000руб. я выбираю количество например 2, то должно считать 4000руб. У меня еще установлен дополнительный плагин комплектующих, но вот их плюсует в Итоговую стоимость нормально. Я уже и обновил версию с 2.10 до 2.17 все равно этот глюк. Помогите, очень нужно. Спасибо.
*

Paha_web

  • Осваиваюсь на форуме
  • 153
  • 1
  • Еще правок хотите?
В общем сделал сам. Это походу недоработка разработчиков.

1. Открываем файл administrator\components\com_virtuemart\helpers\calculationh.php

Находим функцию
Код
	public function getProductPrices($product, $variant=0.0, $amount=0, $ignoreAmount=true, $currencydisplay=true) {

и в самом конце функции перед
Код
		return $this->productPrices;

добавляем
Код
        $this->productPrices['Total'] = $this->productPrices['basePrice'] * $amount;

2. Открываем файл components\com_virtuemart\assets\js\vmprices.js
Находим код
Код
				$.getJSON(window.vmSiteurl + 'index.php?option=com_virtuemart&nosef=1&view=productdetails&task=recalculate&virtuemart_product_id='+id+'&format=json' + window.vmLang, encodeURIComponent(datas),
function (datas, textStatus) {
prices.fadeTo("fast", 1);
// refresh price
for (var key in datas) {
var value = datas[key];
if (value!=0) prices.find("span.Price"+key).show().html(value);
else prices.find(".Price"+key).html(0).hide();
}
});

и заменяем на
Код
				$.getJSON(window.vmSiteurl + 'index.php?option=com_virtuemart&nosef=1&view=productdetails&task=recalculate&virtuemart_product_id='+id+'&format=json' + window.vmLang, encodeURIComponent(datas),
function (datas, textStatus) {
prices.fadeTo("fast", 1);
// refresh price
for (var key in datas) {
var value = datas['Total'];
if (value!=0) prices.find("span.Price"+key).show().html(value);
else prices.find(".Price"+key).html(0).hide();
}
});

Цитировать
здесь по факту всего заменяем одну строку var value = datas[key]; на var value = datas['Total'];
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться