Total Complexity | 9 |
Total Lines | 47 |
Duplicated Lines | 0 % |
Coverage | 100% |
Changes | 0 |
1 | <?php |
||
9 | abstract class Role |
||
10 | { |
||
11 | /** |
||
12 | * Whether the current user can update from oldRole to newRole. |
||
13 | * |
||
14 | * The current user is allowed to promote another user up to the same role as himself. So |
||
15 | * a Senior can promote a Student to Senior. Or an Admin can promote a Junior to Admin. |
||
16 | * |
||
17 | * But the current user is **not** allowed to demote a user who has a higher role than himself. |
||
18 | * That means that a Senior cannot demote an Admin to Student. |
||
19 | */ |
||
20 | 17 | public static function canUpdate(?User $currentUser, string $oldRole, string $newRole): bool |
|
58 |