mirror of
https://github.com/flarum/framework.git
synced 2025-02-21 11:07:58 +08:00

* 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>
36 lines
915 B
PHP
Executable File
36 lines
915 B
PHP
Executable File
<?php
|
|
|
|
/*
|
|
* This file is part of Flarum.
|
|
*
|
|
* For detailed copyright and license information, please view the
|
|
* LICENSE file that was distributed with this source code.
|
|
*/
|
|
|
|
namespace Flarum\Suspend;
|
|
|
|
use Flarum\Api\Serializer\UserSerializer;
|
|
use Flarum\User\User;
|
|
|
|
class AddUserSuspendAttributes
|
|
{
|
|
public function __invoke(UserSerializer $serializer, User $user): array
|
|
{
|
|
$attributes = [];
|
|
$canSuspend = $serializer->getActor()->can('suspend', $user);
|
|
|
|
if ($canSuspend) {
|
|
$attributes['suspendReason'] = $user->suspend_reason;
|
|
}
|
|
|
|
if ($serializer->getActor()->id === $user->id || $canSuspend) {
|
|
$attributes['suspendMessage'] = $user->suspend_message;
|
|
$attributes['suspendedUntil'] = $serializer->formatDate($user->suspended_until);
|
|
}
|
|
|
|
$attributes['canSuspend'] = $canSuspend;
|
|
|
|
return $attributes;
|
|
}
|
|
}
|