Финансовая поддержка
VPS, бесплатные дополнения и docs
Донаты оплачивают сервер и двигают бесплатные дополнения MODX и документацию.
Поддержать
Sendex 2.0 не встает на Modx 2.8.8
MiniShop3 - Не выводятся товары дополнительных категорий
MobileDetect 2.0.0-pl функция "планшеты как стандартные браузеры не работает"
MobileDetect - проблема при установки компонента
msImportExport не сохраняет родителя по умолчанию
Где можно править тексты и заголовки писем?
mxBoard: канбан-доска для команд, людей и ИИ-агентов в MODX 3
[Решено] Обновление MODX 3.2.2 компонент FetchIt ломает сайт PHP 8.3
Плагин EnvBadge: визуальный индикатор окружения в админке MODX3
[videoGallery] Видео галерея YouTube, Vimeo
Всего 126 118 комментариев
На странице на которую ограничен доступ пишем сниппет:
Пишем плагин на событие getTablesAfterUpdateCreate. Для работы плагина в сниппете должно быть указано 'event'=>1, как выше.
И все работает :-).
Так же можно это же сделать с PVTables, но этот компонент я еще не добрался опубликовать :-(. И писать в 2 таблицы сразу там не сделанно. И события не все прописал :-(.
Безопасность обеспечивается хеш-кодом. Страница на которой опубликован сниппет должна быть доступна только нужным пользователям. Использовать getTables, для подобных задач, думаю, проше и быстрее чем писать контроллеры для sendIt.
И MySQL 8 возвращает ошибку. В коде от Ильи двойная сортировка используется и нужна. Когда с этой ошибкой столкнулся не было времени ее решать, но на всякий случай сейчас MySQL 8 не ставлю.
Безопасность может быть реализованна таким образом. Сниппет, типа AjaxForm, при обработки страницы, записывает в сессию хеш-код. js в браузере отправляет с формой этот хеш-код. Обработчик ajax запросов на сервере смотрит есть ли в сесии этот хеш-код и если его нет, то возращяет ошибку.
Таким образом, если сниппет не был вызван при обработке страницы, то все ajax запросы завершаться ошибкой. Будут приняты только те запросы с правильным хеш-кодом.
А на ресурс MODX можно поставить ограничения и показывать его только разрешенным пользователям. Соответственно на странице на запрещенном ресурсе сниппет не отработал, хеш-код в сессию не записался и ajax запросы не срабатывают.
В общем не знаю, как безопасность реализованна в SendIt, но наверно что-то подобное. Надеюсь @Артур Шевченко просветит нас :-)
MODX3 + php8.1
Выяснил, что причина в слеше в начале твшки с картинкой.
Решил топорным методом.
Вдруг кому пригодится.
Правда появились вопросы — везде теперь написано «аренда номера» и надо это как-то мне выпиливать.
И второе — подключается bootstrap и jq которые у меня уже подключены и хотелось бы иметь возможность их отключить ((
Благодарю
Работает только с единичными адресами? Маски, подсети?
Отличное и нужное решение. Обязательно воспользуюсь.
Но хотел уточнить не возникнет ли проблем при использовании MODX3 + php8.1?
И в плане безопасности можно ли использовать в «личном кабинете пользователя» (простые юзеры, которые залогинены в контексте web) данное решение? хотел кастомную таблицу подключить, чтобы юзеры меняли в ней данные.
по идее если там у плагина пакета оставить только на дубликейте событие то он будет урл делать при дубле же? )
Можно использовать дополнение CustomUrls
Пример как с ним работать тут Ссылка
Указал год — сработает только для него. Не указал, ежегодно. Если длительность не указана, то она равна 1 дню.