Перейти к содержимому


Добавление Товара В Корзину В Виде Всплывающей Информации


  • Авторизуйтесь для ответа в теме
В этой теме нет ответов

#1 stasia

stasia

    Активный участник

  • Модераторы
  • 575 сообщений

Отправлено 11 Июнь 2020 - 15:47

Здравствуйте. Зайдите в раздел Сайт---Редактор шаблонов---Ajax добавление товара в корзину и найдите код:
{% IF FORM_NOTICE %}<div class="{% IF FORM_NOTICE_IS_GOOD %}success{% ELSE %}warning{% ENDIF %}">{FORM_NOTICE | nl2br}</div>{% ENDIF %}

Замените его на:
{% IF FORM_NOTICE %}<div class="notify {% IF FORM_NOTICE_IS_GOOD %}success{% ELSE %}warning{% ENDIF %}">{FORM_NOTICE | nl2br}</div>{% ENDIF %}


В Редакторе шаблонов---main.js, найдите код:
  // Добавление товара в корзину через ajax
  $('.goodsDataForm, .goodsToCartFromCompareForm, .goodsListForm').submit(function() {
	
	// Выносим функции из шаблонов
	if ($(this).attr('rel') === 'quick') {
	  quickOrder(this);
	  return (false);
	}
	$('.block-cart').addClass('have-items');
	$('.cart-count').animate({opacity: 0,display: "none"},500);
	$('.cart-count').animate({display: "inline",opacity: 1} , 500 );
	
	// Находим форму, которую отправляем на сервер, для добавления товара в корзину
	var formBlock = $($(this).get(0));
	var adresCart = '/cart';
	  // Проверка на существование формы отправки запроса на добавление товара в корзину
	  if (1 > formBlock.length || formBlock.get(0).tagName != 'FORM') {
		alert('Не удалось найти форму добавления товара в корзину');
		return false;
	  }
	  
	  // Получаем данные формы, которые будем отправлять на сервер
	  var formData = formBlock.serializeArray();
	  // Сообщаем серверу, что мы пришли через ajax запрос
	  formData.push({name: 'ajax_q', value: 1});
	  // Так же сообщим ему, что нужно сразу отобразить форму быстрого заказа
	  //formData.push({name: 'fast_order', value: 1});
	  // Аяксом добавляем товар в корзину и вызываем форму быстрого заказа товара
		$.ajax({
			type: "POST",
			cache: false,
			url: formBlock.attr('action'),
			data: formData,
			success: function(data) {
					$.fancybox({
					  content: data,
					  // При изменении размера окна изменяем размер окна оформления заказа
					  onUpdate: function() {
						return false;
					  }
					});
				setTimeout(function() {
					$.fancybox.update();
				}, 500);
			}
		});
		return false;
  });


Замените его на:
// Добавление товара в корзину через ajax
  $('.goodsDataForm, .goodsToCartFromCompareForm, .goodsListForm').submit(function() {
	// Выносим функции из шаблонов
	if ($(this).attr('rel') === 'quick') {
	  quickOrder(this);
	  return (false);
	}
	$('.block-cart').addClass('have-items');
	$('.cart-count').animate({opacity: 0,display: "none"},500);
	$('.cart-count').animate({display: "inline",opacity: 1} , 500 );
	// Находим форму, которую отправляем на сервер, для добавления товара в корзину
	var formBlock = $($(this).get(0));
	var adresCart = '/cart';
	  // Проверка на существование формы отправки запроса на добавление товара в корзину
	  if (1 > formBlock.length || formBlock.get(0).tagName != 'FORM') {
		alert('Не удалось найти форму добавления товара в корзину');
		return false;
	  }
	  // Получаем данные формы, которые будем отправлять на сервер
	  var formData = formBlock.serializeArray();
	  // Сообщаем серверу, что мы пришли через ajax запрос
	  formData.push({name: 'ajax_q', value: 1});
	  // Так же сообщим ему, что нужно сразу отобразить форму быстрого заказа
	  //formData.push({name: 'fast_order', value: 1});
	  // Аяксом добавляем товар в корзину и вызываем форму быстрого заказа товара
		$.ajax({
			type: "POST",
			cache: false,
			url: formBlock.attr('action'),
			data: formData,
			success: function(data) {
			  var msg = $(data).find('.notify').html();
			  var type = $(data).find('.notify').hasClass('success') ? 'success' : 'error'
			  noty({
				text:msg
				,layout:"bottomRight"
				,type: type
				,textAlign:"center"
				,easing:"swing"
				,animateOpen:{"height":"toggle"}
				,animateClose:{"opacity":"hide"}
				,speed:"500"
				,timeout:"3000"
				,closable: false
				,modal: false
				,dismissQueue: true
				,onClose: true
				,killer: true
			  });
			}
		});
		return false;
  });





Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных