Новости Joomla

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

SnowMan

  • Осваиваюсь на форуме
  • 47
  • 0 / 0
Изменения цен в корзине
« : 12.09.2011, 16:05:50 »
Всем доброго времени суток. Столкнулся с такой проблемой:
Необходимо в корзине пересчитывать цену на товар в зависимости от того сколько штук товаров в упаковке и затем выводить покупателю сообщение что стоимость товара была изменена. Т.е. при выборе кол-ва товара, если его кол-во не кратно или меньше кол-ва в упаковке, нужно чтобы цена пересчитывалась цена = штуки*кол-во штук в упаковке. Помогите, пожалуйста.

Искал как формируется цена. промежуточная и т.д. куча разных переменных, так и не нашел :(

Joomla 1.5 VM 1.1.6



Красным выделено цена где должна меняться. Насчет сообщения для пользователя о том что цена поменялась посредством alert или же в верстке добавлю что цены изменены, пока не решил. Самое главное найти где правильно прописать формулы с правильными переменными для расчета цен?
*

SnowMan

  • Осваиваюсь на форуме
  • 47
  • 0 / 0
Re: Изменения цен в корзине
« Ответ #1 : 12.09.2011, 16:50:24 »
Пробовал вывести отдельно кол-во в упаковке переменной <?php echo $product['product_packaging']; ?> и так <?php echo $product_packaging ?> никаких результатов. Пробую в basket_b2c.html. Там же корзина выводится :) может неправильно переменную пишу или что то еще где то нужно дописать?
*

SnowMan

  • Осваиваюсь на форуме
  • 47
  • 0 / 0
Re: Изменения цен в корзине
« Ответ #2 : 12.09.2011, 17:16:31 »
народ, сделал сам :) В общем это как с добавлением картинки к корзине:

в basket.php добавляем строчку - $product_rows[$i]['product_packaging'] = $ps_product->get_field($cart[$i]["product_id"], "product_packaging");
далее в basket_b2c.html.php вставляем в нужном вам месте <?php echo $product['product_packaging'] ?>

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

SnowMan

  • Осваиваюсь на форуме
  • 47
  • 0 / 0
Re: Изменения цен в корзине
« Ответ #3 : 12.09.2011, 17:58:46 »
на данный момент получилось вот что:



не найду как формируется:

$subtotal_display
$order_total_display

и т.д. Соответственно цены должны быть с валютой на конце и в корзине цена суммироваться по промежуточному итогу. Помогите, пожалуйста, разобраться
*

SnowMan

  • Осваиваюсь на форуме
  • 47
  • 0 / 0
Re: Изменения цен в корзине
« Ответ #4 : 13.09.2011, 09:39:53 »
не ужели никто не знает? :) Разбирающиеся в VM и php, помогите, пожалуйста!)
*

SnowMan

  • Осваиваюсь на форуме
  • 47
  • 0 / 0
Re: Изменения цен в корзине
« Ответ #5 : 13.09.2011, 11:27:52 »
Возможен такой вариант еще, чтобы меньше кода править:


Код
$html .= '<input type="text" class="inputboxquantity" size="4" id="quantity'.$prod_id.'" name="quantity[]" value="'.$quantity.'" />
<input type="button" class="quantity_box_button quantity_box_button_up" onclick="var qty_el = document.getElementById(\'quantity'.$prod_id.'\'); var qty = qty_el.value; if( !isNaN( qty )) qty_el.value++;return false;" />
<input type="button" class="quantity_box_button quantity_box_button_down" onclick="var qty_el = document.getElementById(\'quantity'.$prod_id.'\'); var qty = qty_el.value; if( !isNaN( qty ) &amp;&amp; qty > 0 ) qty_el.value--;return false;" />
';

qty_el.value++ исправить это чтобы прибавлялось кол-во в упаковке сразу, а не по одному увеличивалось. переменная за кол-во упаковки - $product_packaging.

Пока не соображу как это сделать. Может кто и по короче способ посоветует? :) Отзавитесь кто нить!)
*

SnowMan

  • Осваиваюсь на форуме
  • 47
  • 0 / 0
Re: Изменения цен в корзине
« Ответ #6 : 13.09.2011, 16:36:20 »
Всем еще раз привет. Вопрос решил сам :)

Кому интересно, решение:

для начала идем в файл ps_product.php

там 2641 строка

Код
function &get_quantity_options( $product_id )

может быть и коряво смотрится, но все же. добавляем
 
Код
$st = ps_product::get_field( $product_id, 'product_packaging', true );
 $quantity_options = array('quantity_start' => 0, 'quantity_end' => 0, 'quantity_step' => $st-1 );
 

далее идем в файл quantity_box_general.tpl.php

там ищем
Код
$html .= '<input type="text" class="inputboxquantity" size="4" id="quantity'.$prod_id.'" name="quantity[]" value="'.$quantity.'" />
<input type="button" class="quantity_box_button quantity_box_button_up" onclick="var qty_el = document.getElementById(\'quantity'.$prod_id.'\'); var qty = qty_el.value; if( !isNaN( qty )) qty_el.value++;return false;" />
<input type="button" class="quantity_box_button quantity_box_button_down" onclick="var qty_el = document.getElementById(\'quantity'.$prod_id.'\'); var qty = qty_el.value; if( !isNaN( qty ) &amp;&amp; qty > 0 ) qty_el.value--;return false;" />
';

qty_el.value++ и qty_el.value-- меняем соответственно на qty_el.value=Number(qty_el.value)+Number('.$quantity_step.') и qty_el.value=qty_el.value=Number(qty_el.value)-Number('.$quantity_step.')

Вот вроде и все. По крайней мере у меня считает все отлично. Joomla 1.5 VM 1.1.6
*

SnowMan

  • Осваиваюсь на форуме
  • 47
  • 0 / 0
Re: Изменения цен в корзине
« Ответ #7 : 13.09.2011, 17:10:16 »
Осталось решить вопрос чтобы стартовал с минимального числа в упаковке список перед кнопками и добавлялся минимум в корзину 1 пачка. это пока не получается решить. Кто может, подскажите :)
*

SnowMan

  • Осваиваюсь на форуме
  • 47
  • 0 / 0
Re: Изменения цен в корзине
« Ответ #8 : 14.09.2011, 09:51:29 »
Решил вопрос добавив в массив свое значение:

ps_product.php

2643 строка: $quantity_options = array('quantity_start' => 0, 'quantity_end' => 0, 'quantity_step' => $st, 'st_start' => $st );
и далее $quantity_options['st_start'] = $fields[4]; после $quantity_options['quantity_step'] = $fields[3];

Затем в файле quantity_box_general.tpl.php

46 строка

заменил  $html .= '<input type="text" class="inputboxquantity" size="4" id="quantity'.$prod_id.'" name="quantity[]" value="'.$quantity.'" />
value="'.$quantity.'" на value="'.$st_start.'". Теперь начинает стартовать с кол-ва товаров в упаковке, для каждого id свое значение, то что я и хотел сделать)

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

Пока не знаю как это сделать) Кто может, помогите.
*

SnowMan

  • Осваиваюсь на форуме
  • 47
  • 0 / 0
Re: Изменения цен в корзине
« Ответ #9 : 19.09.2011, 15:33:22 »
При помощи JS сделал, но нужно предусмотреть проверку на сервере введенного кол-ва, тогда от JS можно будет совсем отказаться. Если для кого то эта тема актуальна, отпишитесь или может где Вы видели решение данного вопроса, буду очень благодарен!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Отображение скидки на каждый товар в корзине.

Автор magic21

Ответов: 27
Просмотров: 3613
Последний ответ 03.10.2013, 10:30:19
от spsyper
возможность вывода в корзине свойств товара

Автор aleks_yug

Ответов: 102
Просмотров: 35491
Последний ответ 15.02.2013, 11:04:26
от kpk17
Компонент изменения цен VM 1.1.x

Автор orchanin

Ответов: 4
Просмотров: 1523
Последний ответ 17.01.2013, 09:01:48
от orchanin
Последние добавленные товары в мини корзине

Автор Sonio

Ответов: 0
Просмотров: 928
Последний ответ 06.12.2012, 16:42:02
от Sonio
[Решено] [Joomla 1.5.x] [VM 1.1.x] Изображение товара в корзине.

Автор urodoff

Ответов: 103
Просмотров: 25133
Последний ответ 14.11.2012, 00:28:14
от kreolka_8