Наумов Алексей

Наумов Алексей

С нами с 31 марта 2013; Место в рейтинге пользователей: #13
Наумов Алексей
02 сентября 2021, 16:42
+1
С большой долей вероятности на событие OnDocFormSave висит какой-нибудь плагин. В его работе возникает ошибка (о чем может быть сообщение в логах), документ не сохраняется, все зависает.
Об этом же может символизировать 5XX код в ответе сервера на запрос (см. консоль браузера).
Наумов Алексей
01 сентября 2021, 15:39
0
Да любая на самом деле, я вот вводил поселок Шварцевский, Тульская область.
Наумов Алексей
01 сентября 2021, 15:15
0
Добрый день!

И еще как бы нюанс…
У меня на сайте одна служба DPD.
Ввожу в поле Город какую-нибудь деревню из области, где ну точно нет пункта самовывоза. При этом населенный пункт вполне себе подсказывается. Я так понимаю, что в целом курьером транспортная компания привезти заказ может, т.к. стоимость «Курьер до адреса» меняется, ну а самовывоза — нет. Однако скрипты такую ситуацию не обрабатывают, в консоли браузера ошибка:
2eshoplogistic2.js?v=0.0.1:176 Uncaught (in promise) TypeError: Cannot read property 'price' of null
    at Object.confirm (eshoplogistic2.custom.js?v=0.0.1:176)
    at Object.eShopLogistic.onSelectedService (eshoplogistic2.custom.js?v=0.0.1:420)
    at app.js:1
    at Array.forEach (<anonymous>)
    at H (app.js:1)
    at onSelect (app.js:1)
    at $r (chunk-vendors.js:1)
    at Vr (chunk-vendors.js:1)
    at Jt (chunk-vendors.js:1)
    at Proxy.selected (app.js:1)
Наумов Алексей
30 августа 2021, 11:56
0
Еще из замечаний: при первой загрузке страницы (а так же если просто её обновить кнопкой F5), то выбирается не первая доставка из списка (Самовывоз в моем случае), а первая из доставок компонента и показывается блок с выбором службы доставки. Это не корректное поведение.
Наумов Алексей
27 августа 2021, 16:37
+1
Добрый день!

Пощелкал немного на демо-сайте, на основном уж в понедельник буду разбираться…

Пока заметил вот что: clip2net.com/s/4d8ZXPJ
Выбрал Почту России, но остались галочки у курьерской службы… путаница.
Глюк с п.3 да, пока остался…

И у меня еще общий вопрос: расчет стоимости для служб идет только на основании веса, размеров посылки и города? Для курьера учитываются ли поля адреса (улица, дом и др. стандартные поля минишопа? Дело в том, что я все их (street, building, room) заменил на просто общее поле full_address (добавил самостоятельно), где пользователь может написать адрес в удобном ему виде.
Для Почты России, я так понимаю, доставки считается только на основании индекса?
Наумов Алексей
26 августа 2021, 15:29
+1
Я еще несколько замечаний напишу «на будущее», что заметил:
1. Если скрывать только доставки с классом esl-delivery-item, то при выборе их нужно снимать выбор с элемента input[type=«radio»] с другими доставками, иначе пользователь видит, что выбраны две доставки, несколько странно.
2. Если я выбрал доставку, отличную от eslHandler, то нужно убирать галочку у доставки esl, иначе опять же 2 варианта выбранных видит пользователь.
c2n.me/4d8bvV6
3. Я выбираю доставку (в моем случае DPD) «Курьер до адреса», автоматически город определился, стоимость доставки посчиталась. Я вбиваю другой город, идет расчет новой цены, но она остается старой! Какой-то глюк: clip2net.com/s/4d8bPU9
Наумов Алексей
26 августа 2021, 14:40
0
Конечно не нужно скрывать все)))

Самовывоз со склада, собственный курьер, да просто куча способов доставок может быть, которые не нужно скрывать.

Ладно, хорошо, хоть есть несжатый скрипт, придется поковыряться!
Наумов Алексей
26 августа 2021, 11:53
0
Добрый день!

Когда добавляю вызов сниппета eshoplogistic2Order на страницу оформления заказа — скрипты скрывают все мои остальные способы доставки.
У меня 4 способа:
1. Самовывоз со склада
2. Доставка курьером в пределах МКАД
3. Забрать с пункта самовывоза (должно работать через eShopLogistic.ru)
3. Курьером по РФ (должно работать через eShopLogistic.ru)

я что-то не так сделал или компонент так работает?
Наумов Алексей
05 августа 2021, 15:51
0
{{+tv.presence}}
это вообще что?..
Наумов Алексей
05 августа 2021, 15:37
0
{$presence}
Выводит единицу «1»?

Для парсера Fenom будет корректно тогда выражение
{if $presence == "1"}
{else}
{/if}
Наумов Алексей
04 августа 2021, 13:49
1
+6
Даже я отвечу: конечно можно, переписываете вот этот файл без сторонних библиотек и все будет работать
github.com/bezumkin/AjaxForm/blob/master/assets/components/ajaxform/js/default.js
Наумов Алексей
04 августа 2021, 10:39
0
А абстрактный класс тогда как назвать, если SessionHandler занято интерфейсом? BaseSessionHandler?
Я с C# много работал N лет назад, в голове все это еще прочно сидит)
Наумов Алексей
04 августа 2021, 10:01
0
А самый правильный — интерфейс ISessionHandler с методом flushSessions, от которого наследуется уже modSessionHandler, и что бы именно он вызывался в процессоре.
Наумов Алексей
03 августа 2021, 15:49
0
Просто не выйдет…
MODX не умеет очищать сессии, если используется иной, отличный от modSessionHandler класс.

В процессоре проверяется настройка session_handler_class, и если там указано что-то не стандартное — сразу ошибка.

Как вариант — сделать свой пункт в меню для очистки сессий, а стандартный скрыть… ну и тогда нужно дописать процессор и т.п.
Наумов Алексей
03 августа 2021, 15:10
0
Точно, будем фиксить в следующих версиях)
Наумов Алексей
03 августа 2021, 10:45
+1
А что выводит?
print_r($scriptProperties);
Наумов Алексей
02 августа 2021, 07:46
0
Так вот компонент и решает задачу:
1. отдельно управлять временем жизни сессий для авторизованных пользователей (например, поставить им месяц);
2. отдельно управлять временем жизни сессий ботов (к примеру, поставить им 3 часа);
3. У всех остальных — ну пусть будет стандартная неделя.

И на моих сайтах, за счет п.2. размер таблицы и объем данных уменьшился в десятки раз, т.к. именно сессии различных ботов составляли 90% записей в таблице.
Наумов Алексей
30 июля 2021, 14:38
0
Что значит только для авторизованных?..
А корзина товаров? А если я товар «отложил», а если я перешел по реферальной ссылке на сайт, а если у нас правда что-то работает через ajax?
Правильнее бы конечно создавать сессии когда они действительно нужны. Но MODX работает на своей волне, а кажется именно его мы здесь и обсуждаем.

Более разумно просто отказаться от использования таких дополнений как AjaxForm, который для каждого посетителя создает сессию.

Давайте делать статичные странички на html!