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


Удобное Время Доставки


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

#1 sandra.005@mail.ru

sandra.005@mail.ru

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

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

Отправлено 14 Август 2013 - 18:32

Здравствуйте!

У меня при оформлении заказа:

Оформление заказа. Шаг 2 из 4  есть 5 способов доставки:
                Почтой по России                      
Почтой по Украине и Беларусии                        ,
Курьером до дверей по СПБ                          
Самовывоз по СПБ
Курьером по Москве              

1)Необходимо, чтобы для вариантов "Курьером до дверей по СПБ" и "Курьером по Москве"  запрашивалось обязательное поле "удобное время доставки"  . А для остальных способов доставки это поле не запрашивалось.

2)Желательно, чтобы удобное время доставки было ограничено - нельзя выбрать дату ранее определённой даты (и чтобы я могла эту дату менять вручную). Временной интервал  можно указывать не менее 3 часа. Время можно указывать например только с 11.00 до 22.00

Прикрепленные изображения

  • 82.jpg


#2 Сake

Сake

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

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

Отправлено 15 Август 2013 - 02:23

1) Добавьте в ваш файл main.js

$(function() {
$('.deliveryRadio').click(function() {
   var list = ['198964', '193226'];
   var current_id = $(this).val();
   $('#deliveryConvenientDate').attr('required', true).addClass('required')
   .closest('td').closest('tr').show();
   if($.inArray(current_id, list) === -1) {
		  $('#deliveryConvenientDate').removeAttr('required').removeClass('required')
		  .closest('td').closest('tr').hide();
   }
});
$('.deliveryRadio:checked').trigger('click');
});
});

так же в разделе Настройки -> Основные, установите опции "Удобное время доставки" параметр "Необязательно для заполнения".

2) Данный вопрос рассматривался в следующих темах форума
http://forum.storela...вке/#entry39679
http://forum.storela...вки/#entry24034

#3 sandra.005@mail.ru

sandra.005@mail.ru

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

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

Отправлено 15 Август 2013 - 07:45

Код вставила (в конец файла main.js), Необязательно для заполнения  установила.  На сайте при заказе ничего не изменилось

#4 Taisia

Taisia

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

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

Отправлено 15 Август 2013 - 17:34

вам так же следует проделать изменения о которых говорится в темах по ссылкам указанным Сake

#5 sandra.005@mail.ru

sandra.005@mail.ru

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

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

Отправлено 15 Август 2013 - 19:41

По ссылкам - это по второму вопросу. Сначала надо разобраться с первым: Необходимо, чтобы для вариантов "Курьером до дверей по СПБ" и "Курьером по Москве"  запрашивалось обязательное поле "удобное время доставки"  . А для остальных способов доставки это поле не запрашивалось.

#6 Сake

Сake

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

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

Отправлено 16 Август 2013 - 03:47

Найдите в main.js

$(function() {
$('.deliveryRadio').click(function() {
var list = ['198964', '193226'];
var current_id = $(this).val();
$('#deliveryConvenientDate').attr('required', true).addClass('required')
.closest('td').closest('tr').show();
if($.inArray(current_id, list) === -1) {
				 $('#deliveryConvenientDate').removeAttr('required').removeClass('required')
				 .closest('td').closest('tr').hide();
}
});
$('.deliveryRadio:checked').trigger('click');
});
});

и замените на

$(function() {
$('.deliveryRadio').click(function() {
var list = ['198964', '193226'];
var current_id = $(this).val();
$('#deliveryConvenientDate').attr('required', true).addClass('required')
.closest('td').closest('tr').show();
if($.inArray(current_id, list) === -1) {
				 $('#deliveryConvenientDate').removeAttr('required').removeClass('required')
				 .closest('td').closest('tr').hide();
}
});
$('.deliveryRadio:checked').trigger('click');
});

присутствует лишний код });

#7 sandra.005@mail.ru

sandra.005@mail.ru

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

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

Отправлено 19 Август 2013 - 14:16

Спасибо, почти получилось. Единственный вопрос - как убрать поле "удобное время доставки" для способа доставки " Самовывоз по СПБ"

И приделать к способу доставки "курьером по СПБ".  При этом поле "удобное время доставки" не должно заполняться автоматически, так как покупатели будут забывать менять данные в этом поле

#8 Сake

Сake

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

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

Отправлено 20 Август 2013 - 06:41

Вы удалили из файла main.js весь код из сообщения http://forum.storela...вки/#entry84512

После удаления у вас осталась ошибка. Вставьте в конец файла main.js

});
$(function() {
$('.deliveryRadio').click(function() {
var list = ['198964', '193226'];
var current_id = $(this).val();
$('#deliveryConvenientDate').attr('required', true).addClass('required')
.closest('td').closest('tr').show();
if($.inArray(current_id, list) === -1) {
								 $('#deliveryConvenientDate').removeAttr('required').removeClass('required')
								 .closest('td').closest('tr').hide();
}
});
$('.deliveryRadio:checked').trigger('click');
});


#9 sandra.005@mail.ru

sandra.005@mail.ru

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

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

Отправлено 20 Август 2013 - 22:39

Ничего не меняется.

#10 Vaccina

Vaccina

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

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

Отправлено 21 Август 2013 - 05:04

Замените строку в файле main.js

var list = ['198964', '193226'];

на

var list = ['198964', '193225'];


#11 sandra.005@mail.ru

sandra.005@mail.ru

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

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

Отправлено 21 Август 2013 - 17:28

Поменяла. При выборе " - Почтой по России      и -Почтой по Украине и Белорусии -Курьером до дверей по СПБ поле "удобное время доставки" не появляется. При выборе                         
Самовывоз по СПБ,  и Курьером по Москве"   поле "удобное время доставки" остаётся.
Осталась проблема:
1) Необходимо убрать поле "удобное время доставки" для "Самовывоз по СПБ "  
2)Необходимо добавить поле "удобное время доставки" для "Курьером до дверей по СПБ"
3)Поле доставки автоматически заполнено (там стоит дата 15 августа - надо чтобы оно оставалось пустым пока сам покупатель его не заполнит.

#12 sandra.005@mail.ru

sandra.005@mail.ru

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

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

Отправлено 22 Август 2013 - 19:53

Я поменяла местами сами способы доставки, теперь работает корректно.
Но поле "удобное время доставки" автоматически заполняется. Как сделать, чтобы оно оставалось пустым, пока его не заполнит покупатель?

#13 Сake

Сake

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

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

Отправлено 23 Август 2013 - 02:15

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

value="{ORDER_FORM_DELIVERY_CONVENIENT_DATE}"

а так же

{% IF convenient_time_from_list.SELECTED %}selected="selected"{% ENDIF %}

и

{% IF convenient_time_to_list.SELECTED %}selected="selected"{% ENDIF %}

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

#14 OlgaS

OlgaS

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

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

Отправлено 01 Декабрь 2013 - 12:32

Здравствуйте, у меня при оформлении заказа есть :
"Самовывоз" и "Доставка курьером".
Как мне убрать в "Самовывозе" обязательные поля для заполнения : "город" и "адрес доставки".
Чтоб эти поля были активны только для "Курьерской доставки" ?

#15 Сake

Сake

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

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

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

Информацию по данному вопросу вы можете найти в теме форума http://forum.storela...за/#entry104413




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

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