1
0
mirror of https://github.com/flarum/core.git synced 2025-08-11 02:44:04 +02:00

chore: update codebase to php8.1 (#3827)

* chore: set minimum php version to 8.1

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>

* chore: update codebase to php8.1

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>

* Apply fixes from StyleCI

* chore: update workflow php version

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>

* fix: caught errors

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>

* fix: more caught errors

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>

* fix: phpstan caught errors

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>

* Apply fixes from StyleCI

* fix: test-caught errors

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>

* fix: test-caught errors

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>

* fix: test-caught errors

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>

* fix: introduce `Flarum\Locale\TranslatorInterface`

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>

* Apply fixes from StyleCI

* chore: remove mixin

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>

* fix: test-caught errors

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>

* fix: one last error

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>

---------

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>
Co-authored-by: StyleCI Bot <bot@styleci.io>
This commit is contained in:
Sami Mazouz
2023-05-30 11:36:12 +01:00
committed by GitHub
parent 34a04b0746
commit 6f11e044a7
703 changed files with 4329 additions and 12772 deletions

View File

@@ -34,7 +34,7 @@ return [
->type(DiscussionStickiedPost::class),
(new Extend\ApiSerializer(DiscussionSerializer::class))
->attribute('isSticky', function (DiscussionSerializer $serializer, $discussion) {
->attribute('isSticky', function (DiscussionSerializer $serializer, Discussion $discussion) {
return (bool) $discussion->is_sticky;
})
->attribute('canSticky', function (DiscussionSerializer $serializer, $discussion) {

View File

@@ -14,23 +14,9 @@ use Flarum\User\User;
class DiscussionWasStickied
{
/**
* @var Discussion
*/
public $discussion;
/**
* @var User
*/
public $user;
/**
* @param Discussion $discussion
* @param User $user
*/
public function __construct(Discussion $discussion, User $user)
{
$this->discussion = $discussion;
$this->user = $user;
public function __construct(
public Discussion $discussion,
public User $user
) {
}
}

View File

@@ -14,23 +14,9 @@ use Flarum\User\User;
class DiscussionWasUnstickied
{
/**
* @var Discussion
*/
public $discussion;
/**
* @var User
*/
public $user;
/**
* @param Discussion $discussion
* @param User $user
*/
public function __construct(Discussion $discussion, User $user)
{
$this->discussion = $discussion;
$this->user = $user;
public function __construct(
public Discussion $discussion,
public User $user
) {
}
}

View File

@@ -17,28 +17,17 @@ use Flarum\User\User;
class CreatePostWhenDiscussionIsStickied
{
/**
* @param DiscussionWasStickied $event
*/
public static function whenDiscussionWasStickied(DiscussionWasStickied $event)
public static function whenDiscussionWasStickied(DiscussionWasStickied $event): void
{
static::stickyChanged($event->discussion, $event->user, true);
}
/**
* @param DiscussionWasUnstickied $event
*/
public static function whenDiscussionWasUnstickied(DiscussionWasUnstickied $event)
public static function whenDiscussionWasUnstickied(DiscussionWasUnstickied $event): void
{
static::stickyChanged($event->discussion, $event->user, false);
}
/**
* @param Discussion $discussion
* @param User $user
* @param bool $isSticky
*/
protected static function stickyChanged(Discussion $discussion, User $user, $isSticky)
protected static function stickyChanged(Discussion $discussion, User $user, bool $isSticky): void
{
$post = DiscussionStickiedPost::reply(
$discussion->id,

View File

@@ -15,10 +15,7 @@ use Flarum\Sticky\Event\DiscussionWasUnstickied;
class SaveStickyToDatabase
{
/**
* @param Saving $event
*/
public function handle(Saving $event)
public function handle(Saving $event): void
{
if (isset($event->data['attributes']['isSticky'])) {
$isSticky = (bool) $event->data['attributes']['isSticky'];

View File

@@ -15,7 +15,7 @@ use Flarum\Tags\Query\TagFilterGambit;
class PinStickiedDiscussionsToTop
{
public function __invoke(FilterState $filterState, QueryCriteria $criteria)
public function __invoke(FilterState $filterState, QueryCriteria $criteria): void
{
if ($criteria->sortIsDefault) {
$query = $filterState->getQuery();

View File

@@ -16,15 +16,9 @@ use Flarum\Post\Post;
class DiscussionStickiedPost extends AbstractEventPost implements MergeableInterface
{
/**
* {@inheritdoc}
*/
public static $type = 'discussionStickied';
public static string $type = 'discussionStickied';
/**
* {@inheritdoc}
*/
public function saveAfter(Post $previous = null)
public function saveAfter(Post $previous = null): static
{
// If the previous post is another 'discussion stickied' post, and it's
// by the same user, then we can merge this post into it. If we find
@@ -47,15 +41,7 @@ class DiscussionStickiedPost extends AbstractEventPost implements MergeableInter
return $this;
}
/**
* Create a new instance in reply to a discussion.
*
* @param int $discussionId
* @param int $userId
* @param bool $isSticky
* @return static
*/
public static function reply($discussionId, $userId, $isSticky)
public static function reply(int $discussionId, int $userId, bool $isSticky): static
{
$post = new static;
@@ -67,14 +53,8 @@ class DiscussionStickiedPost extends AbstractEventPost implements MergeableInter
return $post;
}
/**
* Build the content attribute.
*
* @param bool $isSticky Whether or not the discussion is stickied.
* @return array
*/
public static function buildContent($isSticky)
public static function buildContent(bool $isSticky): array
{
return ['sticky' => (bool) $isSticky];
return ['sticky' => $isSticky];
}
}

View File

@@ -17,12 +17,12 @@ use Illuminate\Database\Query\Builder;
class StickyFilterGambit extends AbstractRegexGambit implements FilterInterface
{
protected function getGambitPattern()
protected function getGambitPattern(): string
{
return 'is:sticky';
}
protected function conditions(SearchState $search, array $matches, $negate)
protected function conditions(SearchState $search, array $matches, bool $negate): void
{
$this->constrain($search->getQuery(), $negate);
}
@@ -32,12 +32,12 @@ class StickyFilterGambit extends AbstractRegexGambit implements FilterInterface
return 'sticky';
}
public function filter(FilterState $filterState, $filterValue, $negate)
public function filter(FilterState $filterState, string|array $filterValue, bool $negate): void
{
$this->constrain($filterState->getQuery(), $negate);
}
protected function constrain(Builder $query, bool $negate)
protected function constrain(Builder $query, bool $negate): void
{
$query->where('is_sticky', ! $negate);
}