aboutsummaryrefslogtreecommitdiff
path: root/lib/classes/JsonApi/Routes/Clipboards/Authority.php
blob: 5cc053a4563d0a2c1e37320cb50d8dc1b5bc5acc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
namespace JsonApi\Routes\Clipboards;

use User;

final class Authority
{
    public static function canCreateClipboard(User $user): bool
    {
        return true;
    }

    public static function canAccessClipboard(User $user, \Clipboard $clipboard): bool
    {
        return $user->id === $clipboard->user_id
            || $user->perms === 'root';
    }

    public static function canUpdateClipboard(User $user, \Clipboard $clipboard): bool
    {
        return self::canAccessClipboard($user, $clipboard);
    }

    public static function canDeleteClipboard(User $user, \Clipboard $clipboard): bool
    {
        return self::canUpdateClipboard($user, $clipboard);
    }
}