Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

[Поддержка] Обновление цены при выборе опции, без AJAX - HYPER Dynamic price of options OC 2


Recommended Posts

еще раз повторяю - проблемы в организации магазина/настройках.

В таком случае - намекните в какую сторону копать или как по другому организовать скрытую валюту от которой будут считаться цены в рублях. 

Надіслати
Поділитися на інших сайтах


В таком случае - намекните в какую сторону копать или как по другому организовать скрытую валюту от которой будут считаться цены в рублях. 

 

В данный момент в файле \system\library\currency.php стоит жесткое определение валюты:

 

public function format($number, $currency = 'RUB', $value = '', $format = true)

 

 

В админке по дефолту стоит валюта от которой считаются цены в рублях и естественно добавлена в разделе локализация>валюты и сами рубли.

Надіслати
Поділитися на інших сайтах


В данный момент в файле \system\library\currency.php стоит жесткое определение валюты:

 

public function format($number, $currency = 'RUB', $value = '', $format = true)

 

 

В админке по дефолту стоит валюта от которой считаются цены в рублях и естественно сами рубли.

Это немного не правильное решение.

 

Если хотите принудительно заменить валюту надо в файле index.php после строки:

$registry->set('currency', new Currency($registry));

Добавить например:

$registry->get('currency')->set('RUB');

Или в конструкторе system/library/currency.php переписать код инициализации валюты.

Надіслати
Поділитися на інших сайтах

Спасибо за конкретный ответ, все работает за что очень благодарен - Большое Человеческое Спасибо!

Пожалуйста. Но не стоит засорять ветку поддержки модуля. :-)

 

Надіслати
Поділитися на інших сайтах

В таком случае - намекните в какую сторону копать или как по другому организовать скрытую валюту от которой будут считаться цены в рублях.

...

читай раздел FAQ.

как тебе еще "намекать", если я прямым текстом сказал где искать информацию по настройкам валюты?

Надіслати
Поділитися на інших сайтах

=> А можно сделать так, чтобы если в опции указана цена "0", то будет выводиться слово "Договорная"?

А что при этом будет с товаром в корзине?

Тут хватает всяких подводных камней. И нужно подробнее знать, что именно надо сделать.

Корзина отключена. Поэтому товар в корзине не нужен. Это просто каталог. Поэтому просто нужно вывести слово "Договорная", если цена за опцию "0". Можно так сделать?

Спасибо.

Надіслати
Поділитися на інших сайтах


  • 2 weeks later...
Друзья,
помогите, пожалуйста.
 
ocStore 1.5.5.1.2
Шаблон UniverStore
 
Если задать цену опции +% "10" на странице товара отображается (+10.0000%)
 
Вопрос: Как убрать .0000
 
Заранее спасибо.

 

P.S. В настройках Система - Локализация - Валюта в поле "Количество знаков после запятой:" стоит 0

Цена товара - целое число, цена опции заданное стандартным методом также, целое число.

Надіслати
Поділитися на інших сайтах


 

Друзья,
помогите, пожалуйста.
 
ocStore 1.5.5.1.2
Шаблон UniverStore
 
Если задать цену опции +% "10" на странице товара отображается (+10.0000%)
 
Вопрос: Как убрать .0000
 
Заранее спасибо.

 

P.S. В настройках Система - Локализация - Валюта в поле "Количество знаков после запятой:" стоит 0

Цена товара - целое число, цена опции заданное стандартным методом также, целое число.

 

В модуле модификаторов цен для опций (option_price) замните строки:

$price = $this->tax->calculate($option_value['price'], $product_info['tax_class_id'], $this->config->get('config_tax')) .'%';

на это:

$price = (float)$this->tax->calculate($option_value['price'], $product_info['tax_class_id'], $this->config->get('config_tax')) .'%';
Надіслати
Поділитися на інших сайтах

Цена на товар 1000 рублей, делаю на него скидку (через вкладку Акции), указывая цену 800 рублей.

Добавляю две опции (type - image). Для первой цена 0, для второй ставлю минус 50 рублей.

В итоге, если выбрать вторую опцию, то с фронта выглядит так

6a8791aa141b20bdf5d5677e84c7b50f.png а должно быть 750 рублей.

При добавлении товара в корзину, на этапе оформления цена верная.

Для знака + или других type - бага нет. Не могу понять, почему так происходит калькуляция и как это исправить? Пробовал разные версии модуля - не помогло.

Надіслати
Поділитися на інших сайтах


Цена на товар 1000 рублей, делаю на него скидку (через вкладку Акции), указывая цену 800 рублей.

Добавляю две опции (type - image). Для первой цена 0, для второй ставлю минус 50 рублей.

В итоге, если выбрать вторую опцию, то с фронта выглядит так

6a8791aa141b20bdf5d5677e84c7b50f.png а должно быть 750 рублей.

При добавлении товара в корзину, на этапе оформления цена верная.

Для знака + или других type - бага нет. Не могу понять, почему так происходит калькуляция и как это исправить? Пробовал разные версии модуля - не помогло.

Для модулей версии v2.0.17 и ниже (учитывая ответвления) надо внести правку.

В модуле это:

      if ($(this).attr('price_prefix') == '-') {
        option_price -= Number($(this).attr('price'));
        special -= Number($(this).attr('price'));
        tax -= Number($(this).attr('price'));
      }

Заменить на это:

      if ($(this).attr('price_prefix') == '-') {
        option_price -= Number($(this).attr('price'));
      }
Надіслати
Поділитися на інших сайтах

  • 2 weeks later...

Уважаемый, Автор. Помогите пожалуйста с допилом под шаблон "ocShop" (движок 1.5.5.1.2)

Скачиваю "autocalc_price_option_v2.0.18", заливаю на сервер, прописываю имя шаблона. Захожу в карточку товара и происходит автовыбор опций, цена при этом прокручивается и увеличивается, а все последующие "тычки" по опциям результата не дают :cry:  

Надіслати
Поділитися на інших сайтах


Уважаемый, Автор. Помогите пожалуйста с допилом под шаблон "ocShop" (движок 1.5.5.1.2)

Скачиваю "autocalc_price_option_v2.0.18", заливаю на сервер, прописываю имя шаблона. Захожу в карточку товара и происходит автовыбор опций, цена при этом прокручивается и увеличивается, а все последующие "тычки" по опциям результата не дают :cry:  

Если ещё актуально, скиньте ссылку на товар с опциями в личку.

Надіслати
Поділитися на інших сайтах

  • 2 weeks later...

Модуль хороший, работает, но есть проблема - не стыкуется с другим модулем, который добавляет изображения к опциям, я так понимаю, файл данного модуля просто удаляет блок с мини-изображениями почему-то

Надіслати
Поділитися на інших сайтах


Модуль хороший, работает, но есть проблема - не стыкуется с другим модулем, который добавляет изображения к опциям, я так понимаю, файл данного модуля просто удаляет блок с мини-изображениями почему-то

Скиньте доступ на фтп в личку.

И ссылку на пример товара.

По идее их можно подружить.

Надіслати
Поділитися на інших сайтах

На OCSHOP Версия 1.5.6.3.2 модуль не работает тема KITCHEN.

Интересная строчка <file name="catalog/view/theme/default/template/product/product.tpl"> и где-же она???????????????????????????

Эта строка относится к старым версиям модулей.

 

Скиньте в личку ссылку на пример товара и доступ на фтп. Посмотрю что там с темой не завелось.

Надіслати
Поділитися на інших сайтах

Эта строка относится к старым версиям модулей.

 

Скиньте в личку ссылку на пример товара и доступ на фтп. Посмотрю что там с темой не завелось.

"options_price_1_5_3_1-1_5_6_fixed", "options_price_1_5_3_1-1_5_6_fixed" эти два не заработали.

Вот этот модуль "autocalc_v2.0.18_opt_special_and_economy" заработал сразу на не дефолтной теме

Надіслати
Поділитися на інших сайтах


"options_price_1_5_3_1-1_5_6_fixed", "options_price_1_5_3_1-1_5_6_fixed" эти два не заработали.

Вот этот модуль "autocalc_v2.0.18_opt_special_and_economy" заработал сразу на не дефолтной теме

Читайте внимательнее:

  • (NEW) options_price_1_5_3_1-2_0_1_fixed.xml- модуль модификаторов цены опций OpenCart v1.5.3.1-v2.0.1.1 (не мой, с небольшими правками для совместимости)
  • options_price_1_5_3_1-1_5_6_fixed.xml - модуль модификаторов цены опций OpenCart v1.5.3.1-v1.5.6 (не мой, с небольшими правками для совместимости)
  • options_price_1_5_1_3_fixed.xml - модуль модификаторов цены опций OpenCart v1.5.1.3 (не мой, с небольшими правками для совместимости)
  • options_price_MaxyStore_1.5.5.1_fixed.xml - модуль модификаторов цены опций для MaxyStore v1.5.5.1 (не мой, Должен работать начиная с версии 1.5.3. Не проверено.)

Это модули для добавления модификаторов цены опций.

Это не модуль обновления цены при выборе опции.

Надіслати
Поділитися на інших сайтах

Установил на сборку и шаблон Maxystore модуль autocalc_price_option_v2.0.18_opencart2.ocmod.xml,все работает на отлично,но хочу подправить под свои нужды,раскоментировал строки умножения на минимальное количество товара,но не могу реализовать чтобы цена изменялась только после нажатия.Короче минимальное количество для заказа 8 пар,добавил обязательную для нажатия опцию с указанием кол-ва 8 пар в ящике,необходимо что бы цена изменялась только после нажатия!Подскажите,пожалуйста,как реализовать!Спасибо!

Змінено користувачем Wildum
Надіслати
Поділитися на інших сайтах


Установил на сборку и шаблон Maxystore модуль autocalc_price_option_v2.0.18_opencart2.ocmod.xml,все работает на отлично,но хочу подправить под свои нужды,раскоментировал строки умножения на минимальное количество товара,но не могу реализовать чтобы цена изменялась только после нажатия.Короче минимальное количество для заказа 8 пар,добавил обязательную для нажатия опцию с указанием кол-ва 8 пар в ящике,необходимо что бы цена изменялась только после нажатия!Подскажите,пожалуйста,как реализовать!Спасибо!

Добрый день. Тяжело понять на словах.

Скиньте в личку ссылку на пример товара.

Надіслати
Поділитися на інших сайтах

Здравствуйте у меня для опции checkbox стоит вот такой костыль, это для того что бы можно было выбрать только 1 checkbox - радио меня не устраивает (если сильно интересно опишу почему). 

 

<script type="text/javascript">
        var handler = function ( event ){
          event = event || window.event;
          var target = event.target || event.srcElement;
          if ( target.nodeType == 1 && target.nodeName.toLowerCase() == "input" && target.type == "checkbox" && target.checked ) {
            var inputs = document.getElementsByTagName("input");
            for ( var i = 0; inputs; i++ ) {
              if ( inputs.type == "checkbox" && inputs != target ) {
                inputs.checked = false;
              } } }}
        if (document.addEventListener){
          document.addEventListener('click', handler, false);
        } else if (document.attachEvent){
          document.attachEvent('onclick', handler);
        }
        </script>
 
Скрипт работает выбирается только один чекбокс, но, плюсуется цена при выборе одного чекбокса и второго чекбокса (не обязательно по порядку, и чекбоксов много ) но плюсуется только 2 раза.
И если выбирать дальше не плюсуется больше  - т.е изначально цена 2500 + 5 чекбоксов, каждый + 2500 выбираю один = 5000 >другой >(с певого галка летает)=7500> далее 3-й (со 2-го галка переходит на 3-й )= 7500 и далее сколько бы не выбирал больше не прибавляет.
но надо ведь что бы прибавлял как на радио т-е только 1 раз.
Можете подсказать как это победить. мне кажется всё же не в костыле дело ибо использовал и это 
 
<script type="text/javascript">
$(document).ready(function () {
    $('.test').click(function () {
        if (this.checked) {
            $('.test').attr('checked',false);
            this.checked=true;
        };
    });
});
</script>
 
все работает чекбокс выбирается только один но происходит всё описанное выше.
Надіслати
Поділитися на інших сайтах


нашел ответ и другой костыль
 

https://opencartforum.com/topic/15160-%D0%BE%D0%B1%D0%BD%D0%BE%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5-%D1%86%D0%B5%D0%BD%D1%8B-%D0%BF%D1%80%D0%B8-%D0%B2%D1%8B%D0%B1%D0%BE%D1%80%D0%B5-%D0%BE%D0%BF%D1%86%D0%B8%D0%B8-%D0%B1%D0%B5%D0%B7-ajax-vqmod/page-29#entry231573
 

здесь, 

 

 

из js уважаемого  

sce

 

 

<script type="text/javascript"><!--
function onCheckboxClick(sender, e) {
e = e || window.event;
var elements = document.getElementsByTagName('INPUT');
for (var i = 0; i < elements.length; i++) {
// Снимем галочку со всех отмеченных чек-боксов текущей группы (sender.name)
if (elements[i].type == 'checkbox' && elements[i] != sender &&
elements[i].checked && elements[i].name == sender.name) {
elements[i].checked = false;
}
}
}
//--></script>

было убрано    && elements[i].name == sender.name   что бы галка снималась со всех групп и ура - work it. 
 

p.s. Всегда говорю себе сначала хорошо ищи потом пиши - за 2 года находил ответы на все вопросы (ответы платные или бесплатные) тут вначале написал и через пол часа всё нашёл и решил. 

 

Всем спасибо но автора всё же прошу ответить а в моем первом решении где была проблема?

Надіслати
Поділитися на інших сайтах


Всем спасибо но автора всё же прошу ответить а в моем первом решении где была проблема?

Вы точно уверены что хотите это сделать?

Без внесения изменения в логику работы корзины этот вариант вообще некорректный.

Т.к. то что вы запретили на уровне скрипта не значит что нельзя положить больше чем выбрано в корзину.

Можно положить хоть все выбранные, сформировав определённый запрос на сервер.

Змінено користувачем mpn2005
Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.