Артур Шевченко

Артур Шевченко

С нами с 24 мая 2019; Место в рейтинге пользователей: #7
Отправить деньги
Артур Шевченко
22 ноября 2023, 20:24
0
Ты в правах доступа для группы в которой находится пользователь разрешил доступ к контексту ru?
Артур Шевченко
21 ноября 2023, 22:05
0
Переименовывать файл. Или проверять имя на наличие кириллицы и запрещать загрузку.
Артур Шевченко
19 ноября 2023, 21:02
+1
Вроде не первый день с modx работаешь, а про то, что у ТВ подключаемых через pdoResources есть префикс забыл, да? Либо указывай параметр tvPrefix='', либо вызывай ТВ так {'tv.duration_field' | placeholder}
Артур Шевченко
18 ноября 2023, 21:37
0
Сначала только для второй, в следующем году для третьей.
Артур Шевченко
17 ноября 2023, 19:01
0
Если используешь феном на страницах, то скорее всего дело в нём, хотя странно, что в журнале пусто. Попробуй выключить феном, если заработает, ищи где у тебя { в шаблоне и подключаемых чанках и поставь пробелы после неё.
Артур Шевченко
17 ноября 2023, 10:56
0
Пустая страница на фронте, не в админке? И в журнале ошибок пусто?
Артур Шевченко
16 ноября 2023, 21:23
0
В русскоязычном сообществе minishop2 популярнее. Напиши разрабу, может он что-то подскажет.
Артур Шевченко
16 ноября 2023, 20:13
0
Ты спросил
Есть какой то способ адаптировать данный компонент под версию модекс 3?
Я описал единственный возможный способ это сделать. И, думается, бесплатно никто этого делать не будет.
Артур Шевченко
16 ноября 2023, 18:28
0
Конечно есть, почитай статью о нововведениях в modx 3, об особенности разработки компонентов, скачать исходники с гита и внести правки с учётом полученных знаний.
Артур Шевченко
15 ноября 2023, 19:15
0
Я сказал, делайте переадресацию на страницу где кроме кнопки подтверждения нет.
Артур Шевченко
15 ноября 2023, 19:09
0
Не знаю причём тут страна, но если не хотите окно, делайте редирект при отсутствии куки.
Артур Шевченко
15 ноября 2023, 18:34
0
Учитывая, что требуется действие от пользователя, данный функционал надо делать на фронте с помощью JavaScript: если кука установлена — показываем сайт, а если не установлена — окно с требованием подтвердить возраст. А поскольку это чистая формальность для надзорных органов, то заморачиваться подменой шаблонов смысла нет.
Артур Шевченко
15 ноября 2023, 10:28
0
Да об этом я думал и скорее всего добавлю её в коробку, но уже на релизе.
Артур Шевченко
15 ноября 2023, 10:26
0
Журнал ошибок и консоль браузера посмотри. Где-то ошибка точно есть.
Артур Шевченко
14 ноября 2023, 23:39
+2
В первой версии интерфейса не будет и он будет бесплатным. Как только появится интерфейс — станет платным.
А в целом, я делаю компоненты для разработчиков, потому как считаю, что каждый должен заниматься своим делом: разработчик — разрабатывать, заказчик — заказывать:-) К тому же SendIt можно прикрутить интерфейс на Migx, пример есть в доке, но мне как разработчику удобнее с файлами работать, а заказчику зачастую надо всё на одну почту слать. Вот и зачем ему интерфейс? С фильтрами, конечно, другая история, тут админка нужна и она будет, но сначала надо обкатать компонент. Учитывая активность сообщества, чем раньше я выпущу компонент, тем быстрее его обкатают. А разработка админки займёт много времени, так как я хочу её на Vue сделать, с ним я знаком мало.
Артур Шевченко
14 ноября 2023, 20:07
0
В логах сервера должна быть ошибка.
Артур Шевченко
14 ноября 2023, 19:35
0
Думаю это связано с тем, что фильтры работают в два этапа. На первом происходит фильтрация и возврат результатов. На втором — поиск недоступных для выбора значений. Изначально всё делалось за один запрос, но тогда ответ приходил через 1.5-2 секунды.
Артур Шевченко
14 ноября 2023, 11:22
+2
Ничто там непонятного? Вот был у тебя вызов
{'!AjaxForm' | snippet: [
'validate' => 'name:required,phone:required',
'successMessage' => 'Форма отправлена!',
'hooks' => 'email',
'emailTo' => 'some@email.ru',
'emailTpl' => 'defaultEmail',
'form' => 'defaultForm'
]}
Ты копируешь в файл core/components/sendit/presets/sendit.inc.php
return [
    'default' => [
        'validate' => 'name:required,phone:required',
        'successMessage' => 'Форма отправлена!',
        'hooks' => 'email',
        'emailTo' => 'some@email.ru',
        'emailTpl' => 'defaultEmail',
        ]
]
А вместо вызова сниппета вставляешь саму форму, которой добавляешь два атрибута data-si-form=«defaultForm», data-si-preset=«default». Всё форма работает. Согласен непривычно, но ничего сложного. Возможно стоит в доку добавить раздел Миграция с AjaxForm.

А по фильтрам, там SendIt идёт как зависимость, но сниппеты будут вызываться классическим способом)))
Артур Шевченко
13 ноября 2023, 07:03
0
Начнем с того, что mfilter хоть и оптимальное решение, но сама схема таблиц такова, что при большом количестве товаров, даже с отключённой агрегацией, фильтры работают медленно. Кстати в моем компоненте агрегации нет, я ей никогда не пользовался и практический смысл её весьма сомнительный, но не суть. Ничего гениального я не придумал, принцип работы остался тем же: выбираем по каким полям фильтровать, выводим эти поля на фронт фильтруем. Разница только в том, что значения для фильтрации заранее собираются в отдельную таблицу(для маленьких сайтов) или в несколько таблиц(для больших). Что касается раздувания БД, то в текущей реализации у меня к 100К товаров 170К индексов(так я называю собранные для фильтрации данные). Если злоупотреблять опциями с множественным выбором, то можно конечно таблицу раздуть знатно. Опять же, это уже вторая версия, в первой индекс строился иначе, и там в БД было больше миллиона записей, однако запросы отрабатывали менее чем за 1сек, и если бы не проблема с невозможностью фильтрациии по множественным знаниям, я бы схему индексации менять не стал.