make use of UserDeletedRepository

This commit is contained in:
Art4 2025-04-15 13:02:17 +00:00
parent 43a32d1894
commit 9cbf1e6982
2 changed files with 45 additions and 7 deletions

View file

@ -24,6 +24,7 @@ use Friendica\Core\Renderer;
use Friendica\Core\Session\Capability\IHandleUserSessions; use Friendica\Core\Session\Capability\IHandleUserSessions;
use Friendica\Database\Database; use Friendica\Database\Database;
use Friendica\Database\DBA; use Friendica\Database\DBA;
use Friendica\Database\Repository\UserDeletedRepository;
use Friendica\Model\Contact; use Friendica\Model\Contact;
use Friendica\Model\Profile as ProfileModel; use Friendica\Model\Profile as ProfileModel;
use Friendica\Model\Tag; use Friendica\Model\Tag;
@ -46,6 +47,7 @@ class Profile extends BaseProfile
{ {
/** @var Database */ /** @var Database */
private $database; private $database;
private UserDeletedRepository $userDeletedRepository;
/** @var AppHelper */ /** @var AppHelper */
private $appHelper; private $appHelper;
/** @var IHandleUserSessions */ /** @var IHandleUserSessions */
@ -57,11 +59,27 @@ class Profile extends BaseProfile
/** @var ProfileField */ /** @var ProfileField */
private $profileField; private $profileField;
public function __construct(ProfileField $profileField, Page $page, IManageConfigValues $config, IHandleUserSessions $session, AppHelper $appHelper, Database $database, L10n $l10n, BaseURL $baseUrl, Arguments $args, LoggerInterface $logger, Profiler $profiler, Response $response, array $server, array $parameters = []) public function __construct(
{ ProfileField $profileField,
Page $page,
IManageConfigValues $config,
IHandleUserSessions $session,
AppHelper $appHelper,
Database $database,
UserDeletedRepository $userDeletedRepository,
L10n $l10n,
BaseURL $baseUrl,
Arguments $args,
LoggerInterface $logger,
Profiler $profiler,
Response $response,
array $server,
array $parameters = []
) {
parent::__construct($l10n, $baseUrl, $args, $logger, $profiler, $response, $server, $parameters); parent::__construct($l10n, $baseUrl, $args, $logger, $profiler, $response, $server, $parameters);
$this->database = $database; $this->database = $database;
$this->userDeletedRepository = $userDeletedRepository;
$this->appHelper = $appHelper; $this->appHelper = $appHelper;
$this->session = $session; $this->session = $session;
$this->config = $config; $this->config = $config;
@ -84,7 +102,7 @@ class Profile extends BaseProfile
} }
} }
if ($this->database->exists('userd', ['username' => $this->parameters['nickname']])) { if ($this->userDeletedRepository->existsByUsername($this->parameters['nickname'])) {
// Known deleted user // Known deleted user
$data = ActivityPub\Transmitter::getDeletedUser($this->parameters['nickname']); $data = ActivityPub\Transmitter::getDeletedUser($this->parameters['nickname']);

View file

@ -7,7 +7,8 @@
namespace Friendica\Module\User; namespace Friendica\Module\User;
use Friendica\App; use Friendica\App\Arguments;
use Friendica\App\BaseURL;
use Friendica\Core\Config\Capability\IManageConfigValues; use Friendica\Core\Config\Capability\IManageConfigValues;
use Friendica\Core\L10n; use Friendica\Core\L10n;
use Friendica\Core\PConfig\Capability\IManagePersonalConfigValues; use Friendica\Core\PConfig\Capability\IManagePersonalConfigValues;
@ -19,6 +20,7 @@ use Friendica\Core\Worker;
use Friendica\Database\Database; use Friendica\Database\Database;
use Friendica\Database\DBA; use Friendica\Database\DBA;
use Friendica\Database\DBStructure; use Friendica\Database\DBStructure;
use Friendica\Database\Repository\UserDeletedRepository;
use Friendica\Model\Photo; use Friendica\Model\Photo;
use Friendica\Model\Profile; use Friendica\Model\Profile;
use Friendica\Module\Response; use Friendica\Module\Response;
@ -47,20 +49,38 @@ class Import extends \Friendica\BaseModule
/** @var Database */ /** @var Database */
private $database; private $database;
private UserDeletedRepository $userDeletedRepository;
/** @var PermissionSet */ /** @var PermissionSet */
private $permissionSet; private $permissionSet;
/** @var UserSession */ /** @var UserSession */
private $session; private $session;
public function __construct(UserSession $session, PermissionSet $permissionSet, IManagePersonalConfigValues $pconfig, Database $database, SystemMessages $systemMessages, IManageConfigValues $config, L10n $l10n, App\BaseURL $baseUrl, App\Arguments $args, LoggerInterface $logger, Profiler $profiler, Response $response, array $server, array $parameters = []) public function __construct(
{ UserSession $session,
PermissionSet $permissionSet,
IManagePersonalConfigValues $pconfig,
Database $database,
UserDeletedRepository $userDeletedRepository,
SystemMessages $systemMessages,
IManageConfigValues $config,
L10n $l10n,
BaseURL $baseUrl,
Arguments $args,
LoggerInterface $logger,
Profiler $profiler,
Response $response,
array $server,
array $parameters = []
) {
parent::__construct($l10n, $baseUrl, $args, $logger, $profiler, $response, $server, $parameters); parent::__construct($l10n, $baseUrl, $args, $logger, $profiler, $response, $server, $parameters);
$this->config = $config; $this->config = $config;
$this->pconfig = $pconfig; $this->pconfig = $pconfig;
$this->systemMessages = $systemMessages; $this->systemMessages = $systemMessages;
$this->database = $database; $this->database = $database;
$this->userDeletedRepository = $userDeletedRepository;
$this->permissionSet = $permissionSet; $this->permissionSet = $permissionSet;
$this->session = $session; $this->session = $session;
} }
@ -213,7 +233,7 @@ class Import extends \Friendica\BaseModule
// check for username // check for username
// check if username matches deleted account // check if username matches deleted account
if ($this->database->exists('user', ['nickname' => $account['user']['nickname']]) if ($this->database->exists('user', ['nickname' => $account['user']['nickname']])
|| $this->database->exists('userd', ['username' => $account['user']['nickname']])) { || $this->userDeletedRepository->existsByUsername($account['user']['nickname'])) {
$this->systemMessages->addNotice($this->t("User '%s' already exists on this server!", $account['user']['nickname'])); $this->systemMessages->addNotice($this->t("User '%s' already exists on this server!", $account['user']['nickname']));
return; return;
} }