Commit workspace changes
This commit is contained in:
@@ -80,6 +80,14 @@ class ArtworkPolicy
|
||||
*/
|
||||
public function update(User $user, Artwork $artwork): bool
|
||||
{
|
||||
if ((int) ($artwork->group_id ?? 0) > 0) {
|
||||
if ((int) $artwork->user_id === (int) $user->id && (string) ($artwork->artwork_status ?? '') === 'draft') {
|
||||
return true;
|
||||
}
|
||||
|
||||
return $artwork->group?->canPublishArtworks($user) ?? false;
|
||||
}
|
||||
|
||||
return $user->id === $artwork->user_id;
|
||||
}
|
||||
|
||||
@@ -96,6 +104,14 @@ class ArtworkPolicy
|
||||
*/
|
||||
public function delete(User $user, Artwork $artwork): bool
|
||||
{
|
||||
if ((int) ($artwork->group_id ?? 0) > 0) {
|
||||
if ((int) $artwork->user_id === (int) $user->id && (string) ($artwork->artwork_status ?? '') === 'draft') {
|
||||
return true;
|
||||
}
|
||||
|
||||
return $artwork->group?->canPublishArtworks($user) ?? false;
|
||||
}
|
||||
|
||||
return $user->id === $artwork->user_id;
|
||||
}
|
||||
|
||||
@@ -104,6 +120,10 @@ class ArtworkPolicy
|
||||
*/
|
||||
public function restore(User $user, Artwork $artwork): bool
|
||||
{
|
||||
if ((int) ($artwork->group_id ?? 0) > 0) {
|
||||
return ($artwork->group?->canPublishArtworks($user) ?? false) || $this->isAdmin($user);
|
||||
}
|
||||
|
||||
return $user->id === $artwork->user_id || $this->isAdmin($user);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user