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


Неактивная Кнопка "купить" При Отсутствии Товара


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 30

#1 Yurren

Yurren

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

  • Пользователи
  • PipPipPipPip
  • 1 415 сообщений
  • ГородСамара

Отправлено 07 Октябрь 2013 - 08:05

Собственно желание сделать написано в теме...
Как сделать, чтобы при отсутствии модификации товара кнопка "купить" была не активна - нельзя было перейти на другой шаг оформления заказа. Можно и прикрутить другого цвета кнопку и написать на кнопке товара нет в наличии :)
Если это уже обсуждалось - буду рад ссылке на тему.
Заранее спасибо всем откликнувшимся!

#2 CrazyCat

CrazyCat

    Продвинутый пользователь

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

Отправлено 07 Октябрь 2013 - 09:06

Просмотр сообщенияYurren (07 Октябрь 2013 - 08:05) писал:

Собственно желание сделать написано в теме...
Как сделать, чтобы при отсутствии модификации товара кнопка "купить" была не активна - нельзя было перейти на другой шаг оформления заказа. Можно и прикрутить другого цвета кнопку и написать на кнопке товара нет в наличии :)
Если это уже обсуждалось - буду рад ссылке на тему.
Заранее спасибо всем откликнувшимся!

Здравствуйте!
Можно включить функцию Отключить возможность класть в корзину больше товара, чем есть в наличии в разделе "Настройки" > "Основные" и клиенту будет выводится сообщение о невозможности купить данный товар, если его остаток нулевой.

#3 Yurren

Yurren

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

  • Пользователи
  • PipPipPipPip
  • 1 415 сообщений
  • ГородСамара

Отправлено 07 Октябрь 2013 - 14:37

Просмотр сообщенияCrazyCat (07 Октябрь 2013 - 09:06) писал:

Здравствуйте!
Можно включить функцию Отключить возможность класть в корзину больше товара, чем есть в наличии в разделе "Настройки" > "Основные" и клиенту будет выводится сообщение о невозможности купить данный товар, если его остаток нулевой.
Это не вариант!
По всем законам юзабилити клиента ВРЕДНО гонять по другим шагам, чтобы оттуда послать, объяснив, что он не прав... Чтобы вернулся и все повторил. Он может и пойти, но не искать а в другой магазин.
Гораздо проще внести коррективы к код и сделать кнопку неактивной - сразу будет видно "нет так нет. не судьбы. счас поищем что то другое )"

p.s. То что Вы предложили уже стоит, но по вышеуказанным причинам не устраивает! http://joxi.ru/uJxSUtg5CbAuNvOfwK8

Тема открыта!!!

#4 CrazyCat

CrazyCat

    Продвинутый пользователь

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

Отправлено 07 Октябрь 2013 - 16:02

В файле Товар найдите код
<td class="goodsDataFormSubmitButton">
					 <a class="more-link"  onclick="$('.goodsDataForm').submit(); return false;" title="Положить &laquo;{GOODS_NAME}&raquo; в корзину" href="#">В корзину</a><br /><br />
					  <!-- Если в тарифном плане подключен модуль сравнения товаров -->
					  {% IF TARIFF_FEATURE_GOODS_COMPARE %}
						<!-- Если не выключен модуль сравнения товаров, то покажем кнопку сравнения товаров -->
						{% IFNOT SETTINGS_COMPARE_DISABLE %}
						  <a class="goodsDataCompareButton add" {% IF GOODS_MOD_IS_HAS_IN_COMPARE_LIST %}style="display:none;"{% ENDIF %} rel="{COMPARE_ADD_URL}?return_to={CURRENT_URL | urlencode}" title="Добавить &laquo;{GOODS_NAME}&raquo; к списку сравнения с другими товарами" href="#" >Добавить к сравнению</a>
						  <a class="goodsDataCompareButton delete" {% IFNOT GOODS_MOD_IS_HAS_IN_COMPARE_LIST %}style="display:none;"{% ENDIF %} rel="{COMPARE_DELETE_URL}?return_to={CURRENT_URL | urlencode}" title="Убрать &laquo;{GOODS_NAME}&raquo; из списка сравнения с другими товарами" href="#" >Убрать из сравнения</a>
						{% ENDIF %}
					  {% ENDIF %}
					</td>
				  </tr>

и замените его на
<td class="goodsDataFormSubmitButton">
					{% IF GOODS_MOD_REST_VALUE>0  %}
					 <a class="more-link"  onclick="$('.goodsDataForm').submit(); return false;" title="Положить &laquo;{GOODS_NAME}&raquo; в корзину" href="#">В корзину</a><br /><br />
					{% ELSE %}
					<p class="more-link1">В корзину</a><br /><br />
					  {% ENDIF %}
					  <!-- Если в тарифном плане подключен модуль сравнения товаров -->
					  {% IF TARIFF_FEATURE_GOODS_COMPARE %}
						<!-- Если не выключен модуль сравнения товаров, то покажем кнопку сравнения товаров -->
						{% IFNOT SETTINGS_COMPARE_DISABLE %}
						  <a class="goodsDataCompareButton add" {% IF GOODS_MOD_IS_HAS_IN_COMPARE_LIST %}style="display:none;"{% ENDIF %} rel="{COMPARE_ADD_URL}?return_to={CURRENT_URL | urlencode}" title="Добавить &laquo;{GOODS_NAME}&raquo; к списку сравнения с другими товарами" href="#" >Добавить к сравнению</a>
						  <a class="goodsDataCompareButton delete" {% IFNOT GOODS_MOD_IS_HAS_IN_COMPARE_LIST %}style="display:none;"{% ENDIF %} rel="{COMPARE_DELETE_URL}?return_to={CURRENT_URL | urlencode}" title="Убрать &laquo;{GOODS_NAME}&raquo; из списка сравнения с другими товарами" href="#" >Убрать из сравнения</a>
						{% ENDIF %}
					  {% ENDIF %}
					</td>
				  </tr>

В файле main.css найдите блок
.more-link, a.read-more, .paymentFormTbodySubmitButton {
  font: bold 12px/30px Tahoma, Geneva, sans-serif;
  color: #666;
  text-decoration: none;
  background: url("{ASSETS_IMAGES_PATH}read_more.jpg") no-repeat left top;
  height: 30px;
  width: 135px;
  padding-left: 15px;
  display: inline-block;
}

и замените на
.more-link, .more-link1, a.read-more, .paymentFormTbodySubmitButton {
  font: bold 12px/30px Tahoma, Geneva, sans-serif;
  color: #666;
  text-decoration: none;
  background: url("{ASSETS_IMAGES_PATH}read_more.jpg") no-repeat left top;
  height: 30px;
  width: 135px;
  padding-left: 15px;
  display: inline-block;
}


#5 Yurren

Yurren

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

  • Пользователи
  • PipPipPipPip
  • 1 415 сообщений
  • ГородСамара

Отправлено 07 Октябрь 2013 - 16:14

Не получилось! Товар http://kolgotki63.ru...cation=49854185 размер L/XL цвет fumo - в наличии нет. Изменений тоже... http://joxi.ru/qbNSUtg5CbClSE-Lp_k

#6 Vaccina

Vaccina

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

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

Отправлено 08 Октябрь 2013 - 04:30

Найдите в файле main.js

// Есть ли товар есть в наличии
		 if(modificationRestValue>0) {
		   goodsAvailableTrue.show();
		   goodsAvailableFalse.hide();
		 // Если товара нет в наличии
		 } else {
		   goodsAvailableTrue.hide();
		   goodsAvailableFalse.show();
		 }

и замените на

// Есть ли товар есть в наличии
		 if(modificationRestValue>0) {
		   goodsAvailableTrue.show();
	 $('.goodsDataForm-not-rest-value').removeClass('goodsDataForm-not-rest-value').addClass('goodsDataForm');
	 $('.goodsDataFormSubmitButton .more-link').text('В корзину');
		   goodsAvailableFalse.hide();
		 // Если товара нет в наличии
		 } else {
		   goodsAvailableTrue.hide();
	 $('.goodsDataForm').removeClass('goodsDataForm').addClass('goodsDataForm-not-rest-value');
	 $('.goodsDataFormSubmitButton .more-link').text('Нет в наличии');
		   goodsAvailableFalse.show();
		 }


#7 Yurren

Yurren

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

  • Пользователи
  • PipPipPipPip
  • 1 415 сообщений
  • ГородСамара

Отправлено 08 Октябрь 2013 - 06:35

Просмотр сообщенияVaccina (08 Октябрь 2013 - 04:30) писал:

Найдите в файле main.js

// Есть ли товар есть в наличии
		 if(modificationRestValue>0) {
		 goodsAvailableTrue.show();
		 goodsAvailableFalse.hide();
		 // Если товара нет в наличии
		 } else {
		 goodsAvailableTrue.hide();
		 goodsAvailableFalse.show();
		 }

и замените на

// Есть ли товар есть в наличии
		 if(modificationRestValue>0) {
		 goodsAvailableTrue.show();
	 $('.goodsDataForm-not-rest-value').removeClass('goodsDataForm-not-rest-value').addClass('goodsDataForm');
	 $('.goodsDataFormSubmitButton .more-link').text('В корзину');
		 goodsAvailableFalse.hide();
		 // Если товара нет в наличии
		 } else {
		 goodsAvailableTrue.hide();
	 $('.goodsDataForm').removeClass('goodsDataForm').addClass('goodsDataForm-not-rest-value');
	 $('.goodsDataFormSubmitButton .more-link').text('Нет в наличии');
		 goodsAvailableFalse.show();
		 }
Спасибо, Vaccina!
Ваша помощь как всегда бесценна!
Все работает! :)

#8 ogonek7777

ogonek7777

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

  • Пользователи
  • PipPipPipPip
  • 2 109 сообщений
  • ГородМосква

Отправлено 08 Октябрь 2013 - 12:11

Просмотр сообщенияYurren (08 Октябрь 2013 - 06:35) писал:

Спасибо, Vaccina!
Ваша помощь как всегда бесценна!
Все работает! :)

Здравствуйте, у меня вот такой код:
// Есть ли товар есть в наличии
		 if(modificationRestValue>0) {
		   goodsAvailableTrue.show();
		   goodsAvailableFalse.hide();
		 // Если товара нет в наличии
		 } else {
		   goodsAvailableTrue.hide();
		   goodsAvailableFalse.show();
		 }

К сожалению, смена кода на вышеописанный мне не помогло.

#9 Сake

Сake

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

  • Модератоpы
  • 5 979 сообщений

Отправлено 09 Октябрь 2013 - 02:09

У вас не работает данной код по той причине, что кнопка у вас выполнена в виде кнопки <input> а не в виде ссылки как у пользователя выше.
Вы можете использовать следующий код - в файле main.js найдите

// Есть ли товар есть в наличии
				 if(modificationRestValue>0) {
				   goodsAvailableTrue.show();
				   goodsAvailableFalse.hide();
				 // Если товара нет в наличии
				 } else {
				   goodsAvailableTrue.hide();
				   goodsAvailableFalse.show();
				 }

и замените на

// Есть ли товар есть в наличии
				 if(modificationRestValue>0) {
				   goodsAvailableTrue.show();
				   goodsAvailableFalse.hide();
	   $('.goodsDataFormSubmitButton > div > input[type="submit"]:first').removeAttr('disabled').val('В корзину');
				 // Если товара нет в наличии
				 } else {
				   goodsAvailableTrue.hide();
				   goodsAvailableFalse.show();
	   $('.goodsDataFormSubmitButton > div > input[type="submit"]:first').attr('disabled', 'disabled').val('Нет в наличии');
				 }


#10 zabota-mama

zabota-mama

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

  • Пользователи
  • PipPipPipPip
  • 732 сообщений

Отправлено 20 Октябрь 2013 - 17:36

Почему-то не работает =(

#11 zabota-mama

zabota-mama

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

  • Пользователи
  • PipPipPipPip
  • 732 сообщений

Отправлено 20 Октябрь 2013 - 17:42

Просмотр сообщенияСake (09 Октябрь 2013 - 02:09) писал:

У вас не работает данной код по той причине, что кнопка у вас выполнена в виде кнопки <input> а не в виде ссылки как у пользователя выше.
Вы можете использовать следующий код - в файле main.js найдите

Код вставил, но почему-то не работает. Здесьнет 17-го размера и при выборе этого размера кнопка "положить в корзину" активна

#12 Сake

Сake

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

  • Модератоpы
  • 5 979 сообщений

Отправлено 22 Октябрь 2013 - 01:05

У вас код замены будет выглядеть так

// Есть ли товар есть в наличии
								 if(modificationRestValue>0) {
								   goodsAvailableTrue.show();
								   goodsAvailableFalse.hide();
		   $('.goodsDataFormSubmitButton > input[type="submit"]:first').removeAttr('disabled').val('В корзину');
								 // Если товара нет в наличии
								 } else {
								   goodsAvailableTrue.hide();
								   goodsAvailableFalse.show();
		   $('.goodsDataFormSubmitButton > input[type="submit"]:first').attr('disabled', 'disabled').val('Нет в наличии');
								 }


#13 zabota-mama

zabota-mama

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

  • Пользователи
  • PipPipPipPip
  • 732 сообщений

Отправлено 27 Октябрь 2013 - 19:36

Большое спасибо! Работает.

#14 ginger

ginger

    Пользователь

  • Пользователи
  • PipPip
  • 12 сообщений

Отправлено 01 Ноябрь 2013 - 19:49

Подскажите, пожалуйста, как нужно поменять код в шаблоне Мокко. Все, что предлагали выше не помогло (

#15 Koderhan

Koderhan

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

  • Модератоpы
  • 6 227 сообщений

Отправлено 01 Ноябрь 2013 - 20:39

Просмотр сообщенияginger (01 Ноябрь 2013 - 19:49) писал:

Подскажите, пожалуйста, как нужно поменять код в шаблоне Мокко. Все, что предлагали выше не помогло (
Для шаблона для того чтобы делать кнопку в корзину не активной.


Панель администратора, "Сайт"->"Редактор шаблонов".
В файле "main.js".
Найти код:
		 // Есть ли товар есть в наличии
		 if(modificationRestValue>0) {
		   goodsAvailableTrue.show();
		   goodsAvailableFalse.hide();
		 // Если товара нет в наличии
		 } else {
		   goodsAvailableTrue.hide();
		   goodsAvailableFalse.show();
		 }
Заменить:
		 // Есть ли товар есть в наличии
		 if(modificationRestValue>0) {
		   goodsAvailableTrue.show();
		   goodsAvailableFalse.hide();
		   $('.goodsDataFormSubmitButton > input[type="submit"]:first').removeAttr('disabled').val('Положить в корзину').removeClass('button-disabled ui-state-disabled ');;
		 // Если товара нет в наличии
		 } else {
		   goodsAvailableTrue.hide();
		   goodsAvailableFalse.show();
		   $('.goodsDataFormSubmitButton > input[type="submit"]:first').attr('disabled', 'disabled').val('Нет в наличии').addClass('button-disabled ui-state-disabled');

		 }


Панель администратора, "Сайт"->"Редактор шаблонов".
В файле "Товар".
Найти код:
<input type="submit" value="Положить в корзину" style="width:200px;" />
Заменить:
{% IF GOODS_MOD_REST_VALUE>0 %}
					  <input type="submit" value="Положить в корзину" style="width:200px;" />
					{% ELSE %}
					  <input type="submit" value="Нет в наличии" style="width:200px;" disabled="disabled"/>
					{% ENDIF %}


#16 ginger

ginger

    Пользователь

  • Пользователи
  • PipPip
  • 12 сообщений

Отправлено 02 Ноябрь 2013 - 06:01

Спасибо, получилось )

#17 zabota-mama

zabota-mama

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

  • Пользователи
  • PipPipPipPip
  • 732 сообщений

Отправлено 28 Ноябрь 2013 - 22:10

А у меня почему-то эта штука сломалась?
Товара нет, но кнопка "Положить в корзину" нажимается.

#18 Сake

Сake

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

  • Модератоpы
  • 5 979 сообщений

Отправлено 29 Ноябрь 2013 - 00:24

Попробуйте добавить в файл main.js следующий код

$(function() {
  setTimeout(function() {
	$('select[name="form[properties][]"] :selected').trigger('change');
  }, 500);
});


#19 zabota-mama

zabota-mama

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

  • Пользователи
  • PipPipPipPip
  • 732 сообщений

Отправлено 18 Январь 2014 - 18:41

Большое спасибо.

#20 naspret

naspret

    Новичок

  • Пользователи
  • Pip
  • 5 сообщений

Отправлено 12 Март 2015 - 11:49

День добрый! Скажите пожалуйста как я могу отредактировать текст в всплывающем сообщении, которое появляется при отсутствии товара на что то более удобоваримое?

Изображение




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

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