Удаление профиля пользователя по нажатию кнопки

Добрый день.
Подскажите, как сделать удаление профиля пользователя по нажатию кнопки.
Сделал такую форму:
<form action="" method="post">
	<input type="hidden" name="uid" value="[[!+modx.user.id]]">
	<input type="hidden" name="remove_profile" value="1">
	<button type="submit" class="btn btn-danger" name="remove" value="remove" onclick="return confirm('Удалить Ваш профиль?')">Удалить</button>
</form>
и такой сниппет, вызываемый также на странице с формой
<?php
if ($_POST['remove'] && ($_POST['remove_profile'] == 1)) {
        $processor = 'user/delete';
    }
$processorProps = array('processors_path' => $modx->getOption('core_path'). 'model/modx/processors/security/');
$response = $modx->runProcessor($processor, $_POST, $processorProps);
return true;
Но что-то не работает…
Где я ошибся?
Андрей
01 мая 2017, 14:13
modx.pro
1
2 030
0

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

Сергей Шлоков
01 мая 2017, 20:04
2
+3
Для ясности… отдельно профиль удалить нельзя. Он удаляется автоматически при удалении пользователя. Собственно указанный процессор удаляет именно пользователя.

Каким образом процессор должен понять какого пользователя удалять? Ему нужно передать id пользователя. А форма ему передаёт uid.

Ну и наконец (насколько я помню) MODX не разрешает удалять текущего пользователя.

П.С. Если не нужны события плагинов, то можно удалить через
$user = $modx->getObject('modUser', (int) $_POST['uid']); 
$user->remove();
    Андрей
    01 мая 2017, 20:10
    0
    Получается в связи с тем, что нельзя удалить текущего пользователя, вся моя идея не выполнима?
      Сергей Шлоков
      01 мая 2017, 20:15
      0
      Попробуй через $user->remove(). Он менее строгий. Но страницу надо сразу обновлять или пользователя перенаправлять куда-то.
        Андрей
        01 мая 2017, 20:18
        0
        То есть после этого можно сделать для редиректа?
        $modx->sendRedirect($modx->makeUrl($id,'','','full'));
          Сергей Шлоков
          01 мая 2017, 22:05
          0
          Может лучше вместо удаления очищать профиль?
    Наумов Алексей
    01 мая 2017, 20:33
    0
    Стоит задача удалить «себя»?

    тогда сценарий, видимо, такой: выходим из текущего профиля. удаляем его, делаем редирект на страницу «Пользователь удален».
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      6