Сделал, чтобы заявки отправленные через AjaxForm становились ресурсами. Тут столкнулся с проблемой: если пользователь не авторизован и не обладает необходимыми правами, ресурс не создается.
Для отправки формы использую код:
<?php
$response = $modx->runProcessor('resource/create', array(
'pagetitle' =>strip_tags($_POST['name']),
'content' => strip_tags($_POST['message']),
'alias' => 'bid'. date("dmyHis"),
'tv4'=> strip_tags($_POST['phone']),
'template' => 2,
'published' => 1,
'searchable' => 0,
'parent' => 6,
));
$modx->cacheManager->clearCache();
return true;
Ресурс создается через сниппет SaveForm:
<?php
$response = $modx->runProcessor('resource/create', array(
'pagetitle' =>strip_tags($_POST['name']),
'content' => strip_tags($_POST['message']),
'alias' => 'bid' . date("dmyHis"),
'tv4'=> strip_tags($_POST['phone']),
'template' => 2,
'published' => 1,
'searchable' => 0,
'parent' => 6,
));
$modx->cacheManager->clearCache();
return true;
Пробовал наделить анонима правами в доступе к ресурсам. Создал политику доступа с разрешениями: create, publish, save — не работает, ресурс не создается.
Как сделать, чтобы сниппет работал у анонимов? Можно ли выдать такие разрешения в самом сниппете? Есть ли какая-то конкретная галочка в настройке прав доступа, позволяющая выдать анониму соответствующее разрешение, при этом не наделив ее лишними правами?
Алексей Либер 01.03.2019 10:12 #
Тут есть два пути:
первый — перед выполнение процессора объявить что-то вроде IN_MANAGER_MODE = true; и после выполнения убрать… Но не знаю прокатит ли, и как это с точки зрения безопасности.
Либо — вот. Первый способ.
Keyv 01.03.2019 21:10 #
Алексей Либер 02.03.2019 07:51 #
Вот такая вот конструкция дает понимание скрипту, что мы работаем как менеджер… Но это в Эво, поэтому и написал что не знаю — прокатит или нет… Но, как видите, вариантов много… А можно же было и прямым запросом в базу сделать))
Николай Каленников 01.03.2019 10:14 #
Keyv 01.03.2019 16:18 #
Максим Литвинов 01.03.2019 10:16 #
Keyv 01.03.2019 16:23 #
Павел Романов 01.03.2019 11:30 #
Keyv 01.03.2019 17:47 #
Павел Романов 01.03.2019 18:20 #
Добавьте параметр
Keyv 01.03.2019 21:07 #
И да — сработало))) Огромное спасибо!