Изменение данных пользователя через процессов

Здравствуйте!
Что-то вроде все верно ввожу (на мой взгляд), но modx говорит обратное.
Помогите разобраться.

В общем хочу обновить пользователя.
Ввожу данные (массив «allFormFields», отправляю в процессор, все запускаю в Console. Но что-то не могу понять, что не так.
$allFormFields = [
  'id' => '4',
  'fullname' => 'Markus Markus',
  'email' => 'user2@test.ru',
  'phone' => '78945611223'
];
$response = $modx->runProcessor(
  '/security/user/update',
  $allFormFields
);
echo '<pre>';
var_dump($response->getMessage());
echo '</pre>';
В ответ получаю — пустую строку.
Адрес процессора верный, user существует, id его, поля из массива существуют. Вроде все чудно.
Еще, не могу понять, почему вообще ничего не возвращается. Ведь еслиб был бы запущен процессор, то был бы какой-то ответ. Но его нет…
Help)
Rasul
14 октября 2022, 01:43
modx.pro
787
0

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

Гарри
14 октября 2022, 11:26
+2
Сообщение об ошибке: «Please specify a user name.»
Нужно добавить поле username:
$allFormFields = [
  'username' => 'test',
  'id' => '4',
  ...
];
    Rasul
    14 октября 2022, 13:20
    0
    мм,
    добавил username и все получилось.
    Т.е. получается, для изменения данных пользователя нужны 2 значения — id и username.
    Благодарю!)

    И еще, может кому полезно будет:
    $errors = $response->getFieldErrors();
    // var_dump($response->isError()); // bool
    echo '<pre>';
    var_dump($errors);
    echo '</pre>';
    Так можно искать ошибки.
    Вчера мне этого не хватало)
    Rasul
    14 октября 2022, 20:56
    0
    И вот сразу следующая проблема.
    Теперь собрал форму, форма работает.
    Открыл страницу в Инкогнито, авторизовался и используя новую форму хочу отправить данные на изменение профиля. Но возникает ошибка — «permission_denied_processor» (от $response->getMessage()).
    Тут я понимаю, аккаунт (с которого происходит отправка) не имеет нужные права, на редактирование своего аккаунта.

    Для решения проблемы создал группу пользователей, создал для них Политику доступа с правами «change_profile», перезагрузил права пользователей.
    Но что-то не работает.
    Что еще можно сделать?
    Спасибо!
      Rasul
      16 октября 2022, 04:02
      0
      Здравствуйте!
      Да, процессор проверяет права на редактирование профиля.
      Вот видео, которое помогло найти нужные права — www.youtube.com/watch?v=CJODp0TI6O8&list=PLXDufaNxAeQvYyssYerlAQ9uL5C74cFBh
      Спасибо автору за очень полезный контент.
      А на счет моего ответа — может кому пригодится)
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        4