Fix 2 PHPStan errors

This commit is contained in:
Art4 2025-02-25 07:48:38 +00:00
parent ca3d98b9f5
commit f6d5cd039e
3 changed files with 20 additions and 33 deletions

View file

@ -8,28 +8,27 @@
namespace Friendica\User\Settings\Repository; namespace Friendica\User\Settings\Repository;
use Exception; use Exception;
use Friendica\BaseCollection; use Friendica\BaseRepository;
use Friendica\BaseEntity;
use Friendica\Content\Pager; use Friendica\Content\Pager;
use Friendica\Database\Database; use Friendica\Database\Database;
use Friendica\Federation\Repository\GServer; use Friendica\Federation\Repository\GServer;
use Friendica\Network\HTTPException\InternalServerErrorException; use Friendica\Network\HTTPException\InternalServerErrorException;
use Friendica\Network\HTTPException\NotFoundException; use Friendica\Network\HTTPException\NotFoundException;
use Friendica\User\Settings\Collection; use Friendica\User\Settings\Collection\UserGServers as UserGServersCollection;
use Friendica\User\Settings\Entity; use Friendica\User\Settings\Entity\UserGServer as UserGServerEntity;
use Friendica\User\Settings\Factory; use Friendica\User\Settings\Factory\UserGServer as UserGServerFactory;
use Psr\Log\LoggerInterface; use Psr\Log\LoggerInterface;
class UserGServer extends \Friendica\BaseRepository class UserGServer extends BaseRepository
{ {
protected static $table_name = 'user-gserver'; protected static $table_name = 'user-gserver';
/** @var Factory\UserGServer */ /** @var UserGServerFactory */
protected $factory; protected $factory;
/** @var GServer */ /** @var GServer */
protected $gserverRepository; protected $gserverRepository;
public function __construct(GServer $gserverRepository, Database $database, LoggerInterface $logger, Factory\UserGServer $factory) public function __construct(GServer $gserverRepository, Database $database, LoggerInterface $logger, UserGServerFactory $factory)
{ {
parent::__construct($database, $logger, $factory); parent::__construct($database, $logger, $factory);
@ -39,12 +38,9 @@ class UserGServer extends \Friendica\BaseRepository
/** /**
* Returns an existing UserGServer entity or create one on the fly * Returns an existing UserGServer entity or create one on the fly
* *
* @param int $uid
* @param int $gsid
* @param bool $hydrate Populate the related GServer entity * @param bool $hydrate Populate the related GServer entity
* @return Entity\UserGServer
*/ */
public function getOneByUserAndServer(int $uid, int $gsid, bool $hydrate = true): Entity\UserGServer public function getOneByUserAndServer(int $uid, int $gsid, bool $hydrate = true): UserGServerEntity
{ {
try { try {
return $this->selectOneByUserAndServer($uid, $gsid, $hydrate); return $this->selectOneByUserAndServer($uid, $gsid, $hydrate);
@ -54,18 +50,15 @@ class UserGServer extends \Friendica\BaseRepository
} }
/** /**
* @param int $uid
* @param int $gsid
* @param bool $hydrate Populate the related GServer entity * @param bool $hydrate Populate the related GServer entity
* @return Entity\UserGServer
* @throws NotFoundException * @throws NotFoundException
*/ */
public function selectOneByUserAndServer(int $uid, int $gsid, bool $hydrate = true): Entity\UserGServer public function selectOneByUserAndServer(int $uid, int $gsid, bool $hydrate = true): UserGServerEntity
{ {
return $this->_selectOne(['uid' => $uid, 'gsid' => $gsid], [], $hydrate); return $this->_selectOne(['uid' => $uid, 'gsid' => $gsid], [], $hydrate);
} }
public function save(Entity\UserGServer $userGServer): Entity\UserGServer public function save(UserGServerEntity $userGServer): UserGServerEntity
{ {
$fields = [ $fields = [
'uid' => $userGServer->uid, 'uid' => $userGServer->uid,
@ -78,7 +71,7 @@ class UserGServer extends \Friendica\BaseRepository
return $userGServer; return $userGServer;
} }
public function selectByUserWithPagination(int $uid, Pager $pager): Collection\UserGServers public function selectByUserWithPagination(int $uid, Pager $pager): UserGServersCollection
{ {
return $this->_select(['uid' => $uid], ['limit' => [$pager->getStart(), $pager->getItemsPerPage()]]); return $this->_select(['uid' => $uid], ['limit' => [$pager->getStart(), $pager->getItemsPerPage()]]);
} }
@ -94,20 +87,18 @@ class UserGServer extends \Friendica\BaseRepository
} }
/** /**
* @param Entity\UserGServer $userGServer
* @return bool
* @throws InternalServerErrorException in case the underlying storage cannot delete the record * @throws InternalServerErrorException in case the underlying storage cannot delete the record
*/ */
public function delete(Entity\UserGServer $userGServer): bool public function delete(UserGServerEntity $userGServer): bool
{ {
try { try {
return $this->db->delete(self::$table_name, ['uid' => $userGServer->uid, 'gsid' => $userGServer->gsid]); return $this->db->delete(self::$table_name, ['uid' => $userGServer->uid, 'gsid' => $userGServer->gsid]);
} catch (\Exception $exception) { } catch (Exception $exception) {
throw new InternalServerErrorException('Cannot delete the UserGServer', $exception); throw new InternalServerErrorException('Cannot delete the UserGServer', $exception);
} }
} }
protected function _selectOne(array $condition, array $params = [], bool $hydrate = true): BaseEntity protected function _selectOne(array $condition, array $params = [], bool $hydrate = true): UserGServerEntity
{ {
$fields = $this->db->selectFirst(static::$table_name, [], $condition, $params); $fields = $this->db->selectFirst(static::$table_name, [], $condition, $params);
if (!$this->db->isResult($fields)) { if (!$this->db->isResult($fields)) {
@ -118,16 +109,13 @@ class UserGServer extends \Friendica\BaseRepository
} }
/** /**
* @param array $condition
* @param array $params
* @return Collection\UserGServers
* @throws Exception * @throws Exception
*/ */
protected function _select(array $condition, array $params = [], bool $hydrate = true): BaseCollection protected function _select(array $condition, array $params = [], bool $hydrate = true): UserGServersCollection
{ {
$rows = $this->db->selectToArray(static::$table_name, [], $condition, $params); $rows = $this->db->selectToArray(static::$table_name, [], $condition, $params);
$Entities = new Collection\UserGServers(); $Entities = new UserGServersCollection();
foreach ($rows as $fields) { foreach ($rows as $fields) {
$Entities[] = $this->factory->createFromTableRow($fields, $hydrate ? $this->gserverRepository->selectOneById($fields['gsid']) : null); $Entities[] = $this->factory->createFromTableRow($fields, $hydrate ? $this->gserverRepository->selectOneById($fields['gsid']) : null);
} }
@ -135,7 +123,7 @@ class UserGServer extends \Friendica\BaseRepository
return $Entities; return $Entities;
} }
public function listIgnoredByUser(int $uid): Collection\UserGServers public function listIgnoredByUser(int $uid): UserGServersCollection
{ {
return $this->_select(['uid' => $uid, 'ignored' => 1], [], false); return $this->_select(['uid' => $uid, 'ignored' => 1], [], false);
} }

View file

@ -225,19 +225,18 @@ class Crypto
} }
/** /**
*
* Ported from Hubzilla: https://framagit.org/hubzilla/core/blob/master/include/crypto.php * Ported from Hubzilla: https://framagit.org/hubzilla/core/blob/master/include/crypto.php
* *
* @param array $data ['iv' => $iv, 'key' => $key, 'alg' => $alg, 'data' => $data] * @param array $data ['iv' => $iv, 'key' => $key, 'alg' => $alg, 'data' => $data]
* @param string $prvkey The private key used for decryption. * @param string $prvkey The private key used for decryption.
* *
* @return string|boolean The decrypted string or false on failure. * @return string|false The decrypted string or false on failure.
* @throws \Exception * @throws \Exception
*/ */
public static function unencapsulate(array $data, $prvkey) public static function unencapsulate(array $data, $prvkey)
{ {
if (!$data) { if (!$data) {
return; return false;
} }
$alg = $data['alg'] ?? 'aes256cbc'; $alg = $data['alg'] ?? 'aes256cbc';

View file

@ -248,7 +248,7 @@ class HTTPSignature
private static function decryptSigheader(array $headers, string $prvkey): string private static function decryptSigheader(array $headers, string $prvkey): string
{ {
if (!empty($headers['iv']) && !empty($headers['key']) && !empty($headers['data'])) { if (!empty($headers['iv']) && !empty($headers['key']) && !empty($headers['data'])) {
return Crypto::unencapsulate($headers, $prvkey); return (string) Crypto::unencapsulate($headers, $prvkey);
} }
return ''; return '';