- Заметки 106
- Комментарии 17
Вчера в 11:44
А для чего удалили ссылку на $customer в методе getCustomerId? Теперь в событие msOnBeforeGetOrderCustomer передается всегда null и после события тоже...
[miniShop2] Релиз новой версии 4.4.0 10
Вчера в 04:49
Еще сейчас заметил у Артура редактируется выбранная группа пользователей. Чтоб редактировать группу 2 в gettables надо добавить в секцию pdoTools wher...
Создание CRUD интерфейса вне админки 7
Вчера в 02:38
Какая версия MySQL? На MySQL 8 возникала проблема. Он почему-то не воспринимает двойную сортировку.
sort by pagetitle ASC, createon DESCИ MySQL 8 воз...
Перегенерация всех превью товаров скриптом от Ильи 2
02 ноября 2024, 22:21
Сегодня столкнулся с подобной проблемой.
MODX3 + php8.1
Выяснил, что причина в слеше в начале твшки с картинкой.
Решил топорным методом.
[...
Превью генерируется, но появляется ошибка pthumb в логах 2
02 ноября 2024, 18:09
вопрос с текстом был решен в «Управление словарями», а вот со скриптами прищлось редактировать php файл сниппета и комментировать некоторые js и css ф...
[oneBooking] Посуточная система бронирования 83
02 ноября 2024, 14:04
Это было непросто, но я смог)))
SendIt - хук для перемещения загруженных файлов из временной папки в постоянную. 2
02 ноября 2024, 12:47
Здравствуйте!
Работает только с единичными адресами? Маски, подсети?
[easyBlacklist] Очень простой чёрный список IP 22
01 ноября 2024, 12:00
благодарю, то что нужно!!! сейчас проверим как работает
по идее если там у плагина пакета оставить только на дубликейте событие то он будет урл делат...
добавление ID ресурса в alias (при генерации ЧПУ) 2
31 октября 2024, 08:24
Володя, подскажи пожалуйста на какое событие нужно создать скрипт, что бы при фильтрации через msearch2 выбиралась нужная опция. Сейчас работает тольк...
[msOptionsPrice2] - Модификации продукта. 372
30 октября 2024, 13:44
Спасибо! Очень информативно
Чиним неправильные даты и лексиконы в Formalicious 1
Я выхожу из этой ситуации таким образом. В значениях доп. поля ставим не числа, а слова — завтрак==breakfast||обед==lunch||ужин==dinner||. В этом случае условие с LIKE нормально отработает и для случаев с одним значением, и для нескольких:
github.com/webnitros/siteDev/tree/master/core/components/sitedev/Extras/modExtra
Еще считаю полезно прицепить вот такие кнопки
А то вспоминать откуда у тебя компонента скачивается, постоянное мучение.
Ссылка на то как кнопки добавить:
https://github.com/webnitros/siteDev/blob/103270a49c69539d934bafc4ff9f9891dde7a684/core/components/sitedev/Extras/modExtra/core/components/modextra/controllers/home.class.php#L91
Можно конечно в какой нибудь плагин завернуть, но я не стал заморачиваться, добавил их в контроллер с проверкой на существования папки Extras/myComponent, в случае если папка существует то кнопки показываются
Для таких запросов проще временную таблицу сделать куда будут данные сливаться на бэкенде, и потом уже готовые данные забирать на фронте.
Такими запросами, только фронт напрягать.
Почему то всегда охота все в один запрос запихать, но по опыту еще больше времени тратишь на всякие такие выборки.
Еще как вариант делать несколько запросов и получать id которые уже потом идут where в виде product_id IN (тут список id из какой то таблицы)
На примере получения товаров:
Этот код будет делать выборку в десятки раз быстрее:
Чем
join — зло еще то))
Соответственно, в папку elements добавляется новый файлик — remove.php, где указываются класс сущности в качестве ключа и условия в качестве значения.
Естественно, с этим файликом нужно быть аккуратным и понимать, что указывать, а также не забывать его очищать для новых проектов.
Для удаления файлов обычно хватает синхронизации в IDE, которая показывает расхождения между удаленным и локальным серверами.
Но надо еще понимать, что в этом случае мы не получаем управление записями в табличке внутри админки, только через API.
Или MIGX и здесь может помочь?
Пару ссылок
https://metanit.com/web/extjs/12.3.php
https://ilyaut.ru/extjs/
https://modx.ws/extjs-urok-ext-js-script-modx-revolution
http://bustep.ru/modx/extjs/
Вообще есть типо официальная документация, но как всегда мне лень её читать, по этому ищу по случаю, когда что то надо.
Так как всяческих приемов очень много как можно сделать, все пишут как хотят. На то он и JS там сложно чтото стандартизировать.
Но можно выделить такие направления для изучения в js как: события, переопределения любых функций, классов, методов в общем того что в php работает иначе. Когда понимаешь как они устроены то намного легче работать с ExtJs. Ну а за все это отвечает javascript, так что надо в первую очередь его изучать.
Как бы я уже прекрасно понимаю как работает даже тот же VueJs (так как реализовал на нем интернет-магазин в связке с minishop2 через RESTfull), да простые приложения легко пишутся, но капни в насправлении Хранилища, и тут засада начинается не меньше чем с ExtJs. И кстати по документации тоже не очень просто найти что то сложное. VueJs хорош но я наверное не стал бы его использовать для той же админки modx.
Все равно придется менять в настройках каждый раз, а это не удобно.
2 вариант. Сделать политику на основе AdministratorTemplate, включить нужные разрешения — для создания документа new_document, дать доступ анонимам к контексту web c этой политикой, и еще могут понадобиться add_children, new_document_in_root, publish_document