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

Cosmonaut777

Новачок
  
  • Публікації

    1
  • З нами

  • Відвідування

Відвідувачі профілю

Блок відвідувачів профілю відключений і не буде доступний широкому іншим користувачам

Cosmonaut777's Achievements

Newbie

Newbie (1/14)

  • First Post
  • Week One Done
  • One Month Later
  • One Year In
  • Conversation Starter

Recent Badges

0

Репутація

  1. Ситуэшн следующая. Запилил формулы просчета скидок к опциям в процентах, но вывод суммы скидок не запилил. catalog/controller/product/product.php if ($option_value['price_prefix']=="u") { $price = '+' . (float)$option_value['price'].'%'; } elseif ($option_value['price_prefix']=="d") { $price = '-' . (float)$option_value['price'].'%'; } elseif ($option_value['price_prefix']=="*") { $price = '*' . (float)$option_value['price']; } elseif ($option_value['price_prefix']=="/") { $price = '/' . (float)$option_value['price']; } else{ $price = $option_value['price_prefix'].$this->currency->format($this->tax->calculate($option_value['price'], $product_info['tax_class_id'], $this->config->get('config_tax') ? 'P' : false), $this->session->data['currency']); } system/library/cart/cart.php if ($option_value_query->row['price_prefix'] == '=') { $sort_key=count($option_price) + 1; } else { $sort_key=count($option_price)+10; } $option_price[$sort_key] = array( $option_value_query->row['price_prefix']=>$option_value_query->row['price'], ); Далее в этом же файле $newprice = $price; $defprice = $price; ksort($option_price); foreach($option_price as $operations){ foreach($operations as $operation=>$value){ if ($operation == '=') { if ($price!=0 ){ $newprice = $value; $price=0; } else{ $newprice += $value; } } elseif ($operation == '+') { $newprice += $value; } elseif ($operation == '-') { $newprice -= $value; } elseif ($operation == '*') { $newprice = $newprice * $value; } elseif ($operation == '/') { $newprice = $newprice / $value; } elseif ($operation == 'u') { $newprice = $newprice + (( $defprice * $value ) / 100); } elseif ($operation == 'd') { $newprice = $newprice - (( $defprice * $value ) / 100); } } } Далее в этом же файле $price + $option_price заменено на $newprice admin/view/template/catalog/product_form.twig {% if product_option_value.price_prefix == '=' %} <option value="=" selected="selected">=</option> {% else %} <option value="=">=</option> {% endif %} {% if product_option_value.price_prefix == '*' %} <option value="*" selected="selected">*</option> {% else %} <option value="*">*</option> {% endif %} {% if product_option_value.price_prefix == '/' %} <option value="/" selected="selected">/</option> {% else %} <option value="/">/</option> {% endif %} {% if product_option_value.price_prefix == 'u' %} <option value="u" selected="selected">+%</option> {% else %} <option value="u">+%</option> {% endif %} {% if product_option_value.price_prefix == 'd' %} <option value="d" selected="selected">-%</option> {% else %} <option value="d">-%</option> {% endif %} в этом же файле html += ' <option value="=">=</option>'; html += ' <option value="*">*</option>'; html += ' <option value="/">/</option>'; html += ' <option value="u">+%</option>'; html += ' <option value="d">-%</option>'; Всё гуд, всё работает, но есть одно но, раньше выводилось значение "-10%", т.е. то значение, которое задал в админке, начал пилить что бы он выводил сумму высчитываемую, вообще всё пропало, бэкапнул, теперь не отображаются даже эти "-10%", надо что бы во вьюшку приходила сумма вычитаемая с прайса, т.е. не -10%, а к примеру -280руб, если цена товара была 2800р. Благодарю за внимание!

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

Important Information

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