Обновление пользователя через api MODX

Всем доброго времени суток. Ситуация такая: пишу код в консоли или сниппете, он работает
$data=Array
(
    'username' => 'Ivan',
    'fullname' => 'Иван',
    'email' => 'test@test.ru',
    'phone' => '+7 (999) 999-99-99',
    'id' => 3
);

    $response = $modx->runProcessor('/security/user/update', $data);
    if ($response->isError()) {
      echo $response->getMessage();
    }
Когда я переношу его в core/components/xxx/model/xxx.class.php
public function update() {
$data=Array
(
    'username' => 'Ivan',
    'fullname' => 'Иван',
    'email' => 'test@test.ru',
    'phone' => '+7 (999) 999-99-99',
    'id' => 3
);

    $response = $this->modx->runProcessor('/security/user/update', $data);
    if ($response->isError()) {
      return array('error' => $response->getMessage());
    }
}
Получаю ошибку «Не указано имя пользователя или пароль. Пожалуйста, проверьте введённые данные и попытайтесь снова.»
Подскажите, как правильно сделать?
Евгений Ц.
19 января 2023, 01:47
modx.pro
519
0

Комментарии: 3

Евгений Ц.
19 января 2023, 03:27
0
В общем, решение своей задачи нашел здесь docs.modx.com/current/en/building-sites/client-proofing/security/troubleshooting-security/resetting-a-user-password-manually но вопрос с процессором все же остаётся открытым.
    Константин Ильин
    19 января 2023, 08:36
    +1
    Для работы с процессорами modx как минимум нужны права. В консоли вы выполняете под администратором, поэтому все проходит.
      Евгений Ц.
      19 января 2023, 12:25
      0
      Думал об этом, но в таком случае я ожидал ошибку «permission_denied_processor».
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    3