Replace Module::init() with Constructors

This commit is contained in:
Philipp 2021-11-17 21:32:57 +01:00
parent de6bb280b1
commit ce578a7745
No known key found for this signature in database
GPG key ID: 24A7501396EB5432
33 changed files with 882 additions and 600 deletions

View file

@ -21,12 +21,14 @@
namespace Friendica\Module\Contact;
use Friendica\App\Arguments;
use Friendica\App\BaseURL;
use Friendica\BaseModule;
use Friendica\Content\Nav;
use Friendica\Core\L10n;
use Friendica\Core\Protocol;
use Friendica\Core\Renderer;
use Friendica\Database\DBA;
use Friendica\DI;
use Friendica\Database\Database;
use Friendica\Model;
use Friendica\Module\Contact;
use Friendica\Module\Security\Login;
@ -35,31 +37,44 @@ use Friendica\Network\HTTPException;
class Revoke extends BaseModule
{
/** @var array */
private static $contact;
public function init()
protected $contact;
/** @var Database */
protected $dba;
/** @var BaseURL */
protected $baseUrl;
/** @var Arguments */
protected $args;
public function __construct(Database $dba, BaseURL $baseUrl, Arguments $args, L10n $l10n, array $parameters = [])
{
parent::__construct($l10n, $parameters);
$this->dba = $dba;
$this->baseUrl = $baseUrl;
$this->args = $args;
if (!local_user()) {
return;
}
$data = Model\Contact::getPublicAndUserContactID($this->parameters['id'], local_user());
if (!DBA::isResult($data)) {
throw new HTTPException\NotFoundException(DI::l10n()->t('Unknown contact.'));
if (!$this->dba->isResult($data)) {
throw new HTTPException\NotFoundException($this->l10n->t('Unknown contact.'));
}
if (empty($data['user'])) {
throw new HTTPException\ForbiddenException();
}
self::$contact = Model\Contact::getById($data['user']);
$this->contact = Model\Contact::getById($data['user']);
if (self::$contact['deleted']) {
throw new HTTPException\NotFoundException(DI::l10n()->t('Contact is deleted.'));
if ($this->contact['deleted']) {
throw new HTTPException\NotFoundException($this->l10n->t('Contact is deleted.'));
}
if (!empty(self::$contact['network']) && self::$contact['network'] == Protocol::PHANTOM) {
throw new HTTPException\NotFoundException(DI::l10n()->t('Contact is being deleted.'));
if (!empty($this->contact['network']) && $this->contact['network'] == Protocol::PHANTOM) {
throw new HTTPException\NotFoundException($this->l10n->t('Contact is being deleted.'));
}
}
@ -71,16 +86,16 @@ class Revoke extends BaseModule
self::checkFormSecurityTokenRedirectOnError('contact/' . $this->parameters['id'], 'contact_revoke');
$result = Model\Contact::revokeFollow(self::$contact);
$result = Model\Contact::revokeFollow($this->contact);
if ($result === true) {
notice(DI::l10n()->t('Follow was successfully revoked.'));
notice($this->l10n->t('Follow was successfully revoked.'));
} elseif ($result === null) {
notice(DI::l10n()->t('Follow was successfully revoked, however the remote contact won\'t be aware of this revokation.'));
notice($this->l10n->t('Follow was successfully revoked, however the remote contact won\'t be aware of this revokation.'));
} else {
notice(DI::l10n()->t('Unable to revoke follow, please try again later or contact the administrator.'));
notice($this->l10n->t('Unable to revoke follow, please try again later or contact the administrator.'));
}
DI::baseUrl()->redirect('contact/' . $this->parameters['id']);
$this->baseUrl->redirect('contact/' . $this->parameters['id']);
}
public function content(): string
@ -93,14 +108,14 @@ class Revoke extends BaseModule
return Renderer::replaceMacros(Renderer::getMarkupTemplate('contact_drop_confirm.tpl'), [
'$l10n' => [
'header' => DI::l10n()->t('Revoke Follow'),
'message' => DI::l10n()->t('Do you really want to revoke this contact\'s follow? This cannot be undone and they will have to manually follow you back again.'),
'confirm' => DI::l10n()->t('Yes'),
'cancel' => DI::l10n()->t('Cancel'),
'header' => $this->l10n->t('Revoke Follow'),
'message' => $this->l10n->t('Do you really want to revoke this contact\'s follow? This cannot be undone and they will have to manually follow you back again.'),
'confirm' => $this->l10n->t('Yes'),
'cancel' => $this->l10n->t('Cancel'),
],
'$contact' => Contact::getContactTemplateVars(self::$contact),
'$contact' => Contact::getContactTemplateVars($this->contact),
'$method' => 'post',
'$confirm_url' => DI::args()->getCommand(),
'$confirm_url' => $this->args->getCommand(),
'$confirm_name' => 'form_security_token',
'$confirm_value' => BaseModule::getFormSecurityToken('contact_revoke'),
]);