mirror of
https://github.com/flarum/core.git
synced 2025-08-04 15:37:51 +02:00
fix: actor only fields
This commit is contained in:
@@ -243,7 +243,7 @@ class UserResource extends AbstractDatabaseResource
|
|||||||
}),
|
}),
|
||||||
|
|
||||||
Schema\DateTime::make('markedAllAsReadAt')
|
Schema\DateTime::make('markedAllAsReadAt')
|
||||||
->visible(fn (User $user, Context $context) => $context->getActor()->id === $user->id)
|
->visible(fn (User $user, Context $context) => ($context->collection instanceof self || $context->collection instanceof ForumResource) && $context->getActor()->id === $user->id)
|
||||||
->writable(fn (User $user, Context $context) => $context->getActor()->id === $user->id)
|
->writable(fn (User $user, Context $context) => $context->getActor()->id === $user->id)
|
||||||
->set(function (User $user, $value) {
|
->set(function (User $user, $value) {
|
||||||
if (! empty($value)) {
|
if (! empty($value)) {
|
||||||
@@ -252,17 +252,17 @@ class UserResource extends AbstractDatabaseResource
|
|||||||
}),
|
}),
|
||||||
|
|
||||||
Schema\Integer::make('unreadNotificationCount')
|
Schema\Integer::make('unreadNotificationCount')
|
||||||
->visible(fn (User $user, Context $context) => $context->getActor()->id === $user->id)
|
->visible(fn (User $user, Context $context) => ($context->collection instanceof self || $context->collection instanceof ForumResource) && $context->getActor()->id === $user->id)
|
||||||
->get(function (User $user): int {
|
->get(function (User $user): int {
|
||||||
return $user->getUnreadNotificationCount();
|
return $user->getUnreadNotificationCount();
|
||||||
}),
|
}),
|
||||||
Schema\Integer::make('newNotificationCount')
|
Schema\Integer::make('newNotificationCount')
|
||||||
->visible(fn (User $user, Context $context) => $context->getActor()->id === $user->id)
|
->visible(fn (User $user, Context $context) => ($context->collection instanceof self || $context->collection instanceof ForumResource) && $context->getActor()->id === $user->id)
|
||||||
->get(function (User $user): int {
|
->get(function (User $user): int {
|
||||||
return $user->getNewNotificationCount();
|
return $user->getNewNotificationCount();
|
||||||
}),
|
}),
|
||||||
Schema\Arr::make('preferences')
|
Schema\Arr::make('preferences')
|
||||||
->visible(fn (User $user, Context $context) => $context->getActor()->id === $user->id)
|
->visible(fn (User $user, Context $context) => ($context->collection instanceof self || $context->collection instanceof ForumResource) && $context->getActor()->id === $user->id)
|
||||||
->writable(fn (User $user, Context $context) => $context->getActor()->id === $user->id)
|
->writable(fn (User $user, Context $context) => $context->getActor()->id === $user->id)
|
||||||
->set(function (User $user, array $value) {
|
->set(function (User $user, array $value) {
|
||||||
foreach ($value as $k => $v) {
|
foreach ($value as $k => $v) {
|
||||||
@@ -271,7 +271,7 @@ class UserResource extends AbstractDatabaseResource
|
|||||||
}),
|
}),
|
||||||
|
|
||||||
Schema\Boolean::make('isAdmin')
|
Schema\Boolean::make('isAdmin')
|
||||||
->visible(fn (User $user, Context $context) => $context->getActor()->id === $user->id)
|
->visible(fn (User $user, Context $context) => ($context->collection instanceof self || $context->collection instanceof ForumResource) && $context->getActor()->id === $user->id)
|
||||||
->get(fn (User $user, Context $context) => $context->getActor()->isAdmin()),
|
->get(fn (User $user, Context $context) => $context->getActor()->isAdmin()),
|
||||||
|
|
||||||
Schema\Boolean::make('canEdit')
|
Schema\Boolean::make('canEdit')
|
||||||
|
Reference in New Issue
Block a user