Merge pull request #8613 from MrPetovan/bug/8612-console-user-already-deleted
Skip user removal if it's already been removed in Console\User
This commit is contained in:
commit
dc39a5f09f
|
@ -304,19 +304,24 @@ HELP;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$user = $this->dba->selectFirst('user', ['uid'], ['nickname' => $nick]);
|
$user = $this->dba->selectFirst('user', ['uid', 'account_removed'], ['nickname' => $nick]);
|
||||||
if (empty($user)) {
|
if (empty($user)) {
|
||||||
throw new RuntimeException($this->l10n->t('User not found'));
|
throw new RuntimeException($this->l10n->t('User not found'));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!empty($user['account_removed'])) {
|
||||||
|
$this->out($this->l10n->t('User has already been marked for deletion.'));
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
if (!$this->getOption('q')) {
|
if (!$this->getOption('q')) {
|
||||||
$this->out($this->l10n->t('Type "yes" to delete %s', $nick));
|
$this->out($this->l10n->t('Type "yes" to delete %s', $nick));
|
||||||
if (CliPrompt::prompt() !== 'yes') {
|
if (CliPrompt::prompt() !== 'yes') {
|
||||||
throw new RuntimeException('Delete abort.');
|
throw new RuntimeException($this->l10n->t('Deletion aborted.'));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return UserModel::remove($user['uid'] ?? -1);
|
return UserModel::remove($user['uid']);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -1162,7 +1162,7 @@ class User
|
||||||
// unique), so it cannot be re-registered in the future.
|
// unique), so it cannot be re-registered in the future.
|
||||||
DBA::insert('userd', ['username' => $user['nickname']]);
|
DBA::insert('userd', ['username' => $user['nickname']]);
|
||||||
|
|
||||||
// The user and related data will be deleted in "cron_expire_and_remove_users" (cronjobs.php)
|
// The user and related data will be deleted in Friendica\Worker\CronJobs::expireAndRemoveUsers()
|
||||||
DBA::update('user', ['account_removed' => true, 'account_expires_on' => DateTimeFormat::utc('now + 7 day')], ['uid' => $uid]);
|
DBA::update('user', ['account_removed' => true, 'account_expires_on' => DateTimeFormat::utc('now + 7 day')], ['uid' => $uid]);
|
||||||
Worker::add(PRIORITY_HIGH, 'Notifier', Delivery::REMOVAL, $uid);
|
Worker::add(PRIORITY_HIGH, 'Notifier', Delivery::REMOVAL, $uid);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue