Jump to content


Photo
* * * * - 4 votes

Добавление фиксированный суммы к цене корзины в зависимости от выбора чекбокса

рецепт

102 replies to this topic

#41 fiction13

fiction13
  • JBZoo User (rus)
  • User rate: 272.6
  • posts: 604
  • topics: 23

Posted 16 September 2013 - 13:05

Это факт, но мне и не нужна была оплата.

 

А нельзя приплюсовать просто цену доставки по аналогии с письмом (переменная $_POST['d_id'])? У меня правда нет возможности покопаться, я бы посмотрел.


Edited by fiction13, 16 September 2013 - 13:05.

  • 0

#42 Александр

Александр
  • JBZoo User (rus)
  • User rate: 0
  • posts: 30
  • topics: 8

Posted 16 September 2013 - 13:18

Я просто без понятия куда это впихивать.

По идее эта информация так же должна храниться в корзине, 2 поля - название и стоимость. Вопрос только куда это воткнуть.

 

П.С. В смысле у тебя нет возможности покопаться?


Edited by Александр, 16 September 2013 - 13:22.

  • 0

#43 fiction13

fiction13
  • JBZoo User (rus)
  • User rate: 272.6
  • posts: 604
  • topics: 23

Posted 16 September 2013 - 13:24

У меня отключены системы оплаты и я без понятия, как их тестировать =)


  • 0

#44 fiction13

fiction13
  • JBZoo User (rus)
  • User rate: 272.6
  • posts: 604
  • topics: 23

Posted 16 September 2013 - 13:52

Мде, тут надо править jbbasketitems.php метод getTotalPrice, нужен Денис.


  • 0

#45 ilham76

ilham76
  • JBZoo User (rus)
  • User rate: 2.5
  • posts: 215
  • topics: 20

Posted 16 September 2013 - 16:16

Ребят, помогите. У меня ничего из выше приведенного не работает. А еще у меня нет файла и папки order\order.php Строка доставка появилась, но ничего не суммируется. Можете глянуть: http://glowled.ru/pr...todiodnye-lenty

там item не хватает в пути в описании  media\zoo\applications\jbuniversal\templates\catalog\renderer\item\order


Edited by ilham76, 16 September 2013 - 16:16.

  • 0

там за окном...сказка с несчастливым концом....


#46 ilham76

ilham76
  • JBZoo User (rus)
  • User rate: 2.5
  • posts: 215
  • topics: 20

Posted 16 September 2013 - 17:27

Поглядел я на сайт товарища ecwallspb и хочется сказать ему огромное спасибо. Путем нехитрых манипуляций удалось воспроизвести то, что я увидел.

 

Скрипт был взят с вышеприведенной страницы, так что все копирайты у автора =)

 

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

 

Спасибо огромное за труды! у меня тут что-то не получилось ( всё вроде сделал по инструкции... вот сайт . в 5 пункте тока может ошибся конечно класс неверно добавил.....и попутно вопрос...при обнове это всё затрётся да?...


  • 0

там за окном...сказка с несчастливым концом....


#47 fiction13

fiction13
  • JBZoo User (rus)
  • User rate: 272.6
  • posts: 604
  • topics: 23

Posted 16 September 2013 - 17:52

Спасибо огромное за труды! у меня тут что-то не получилось ( всё вроде сделал по инструкции... вот сайт . в 5 пункте тока может ошибся конечно класс неверно добавил.....и попутно вопрос...при обнове это всё затрётся да?...

 

У Вас input находится в label, попробуйте заменить строку var deliv_summ_label_arr =  $(this).next().text().split(':'); на var deliv_summ_label_arr =  $(this).parent().text().split(':');

 

И да, класса delivery у обрамляющего дива нет. Попробуйте к классам tab-body content wk-content clearfix добавить delivery, чтобы получилось  tab-body content wk-content clearfix delivery (это в файле order.php, вкладка Информация о Вас).

 

И скрипт поменяйте на обновленный (чуть выше на этой странице я писал).
 

При обновлении затрется, да =(


Edited by fiction13, 16 September 2013 - 17:59.

  • 1

#48 Александр

Александр
  • JBZoo User (rus)
  • User rate: 0
  • posts: 30
  • topics: 8

Posted 16 September 2013 - 19:56

немного переписанный и подправленный js для формы оформления заказа

$('.delivery input[type=radio]').click(function() { // пересчет
			
	var delivery_name = '';
	var delivery_summ = 0.00;
	var temp;
		
	var delivery_array = $(this).parent().text().split(':');
	delivery_name = delivery_array[0];
	$('#summ_delivery_label').text(delivery_name + ':');
	delivery_summ = parseFloat(delivery_array[1].replace(/ р./, ''));
		
	$('#d_id').val(delivery_summ);
	$('#d_id_2').val(delivery_name);
	$('#summ_delivery').text(delivery_summ + ' р.');
		
	var su = 0.00;
	$('.jsSubtotal').each(function(i){
		var subsumm = $(this).text().replace(/ /,'');
		su += parseFloat(subsumm);
	});
	su += delivery_summ;
			
	var su2 = su+''; 
	su2 = su2.replace(/(\d)(?=(\d{3})+(?!\d))/g, "$1 ");
	$('.jsTotalPrice').text(su2+' p.');
});
		
$('.jsQuantity').change(function(){ //пересчет формы при изменении количества товаров
	var delivery_summ;
	var su = 0.00;
	$('.jsSubtotal').each(function(i){
		var subsumm = $(this).text().replace(/ /,'');
		su += parseFloat(subsumm);
	});
			
	su += parseFloat($('#summ_delivery').text().replace(/ р./, ''));
	var su2 = su+''; 
	su2 = su2.replace(/(\d)(?=(\d{3})+(?!\d))/g, "$1 ");
	$('.jsTotalPrice').text(su2+' p.');
});

П.С. еще вопрос. кто знает как средствами Zoo получить slug? В чем мысль: делать несколько элементов радио, цеплять им классы, присвоенные от имени элемента. Например: Москва, Московская обл, Самара и т.д. Создаем селект, в котором есть пункты Москва, Московская обл, Самара и т.д. и через js показываем только те варианты доставки, которые мы настроили через радио.


  • 0

#49 ilham76

ilham76
  • JBZoo User (rus)
  • User rate: 2.5
  • posts: 215
  • topics: 20

Posted 16 September 2013 - 21:50

У Вас input находится в label, попробуйте заменить строку var deliv_summ_label_arr =  $(this).next().text().split(':'); на var deliv_summ_label_arr =  $(this).parent().text().split(':');

 

И да, класса delivery у обрамляющего дива нет. Попробуйте к классам tab-body content wk-content clearfix добавить delivery, чтобы получилось  tab-body content wk-content clearfix delivery (это в файле order.php, вкладка Информация о Вас).

всё супер работает! я форму заказа новую создавал, а менял в дефолтной) не там короче поставил  delivery


  • 0

там за окном...сказка с несчастливым концом....


#50 fiction13

fiction13
  • JBZoo User (rus)
  • User rate: 272.6
  • posts: 604
  • topics: 23

Posted 17 September 2013 - 04:17

всё супер работает! я форму заказа новую создавал, а менял в дефолтной) не там короче поставил  delivery

 

Как доктор прописал, обращайтесь =) Только я все-таки рекомендовал заменить скрипт на указанный мной выше на этой странице, чтобы итоговая сумма обновлялась при изменении корзины (с замененной строкой var deliv_summ_label_arr =  $(this).next().text().split(':'); на var deliv_summ_label_arr =  $(this).parent().text().split(':'); )


Edited by fiction13, 17 September 2013 - 04:23.

  • 2





Also tagged with one or more of these keywords: рецепт

Click to return to top of page in style!