]>
Commit | Line | Data |
---|---|---|
bd45d503 C |
1 | import { UserRight, UserRole } from '../../models/users' |
2 | ||
3 | export const USER_ROLE_LABELS: { [ id in UserRole ]: string } = { | |
4 | [UserRole.USER]: 'User', | |
5 | [UserRole.MODERATOR]: 'Moderator', | |
6 | [UserRole.ADMINISTRATOR]: 'Administrator' | |
7 | } | |
8 | ||
9 | const userRoleRights: { [ id in UserRole ]: UserRight[] } = { | |
10 | [UserRole.ADMINISTRATOR]: [ | |
11 | UserRight.ALL | |
12 | ], | |
13 | ||
14 | [UserRole.MODERATOR]: [ | |
15 | UserRight.MANAGE_VIDEO_BLACKLIST, | |
16 | UserRight.MANAGE_ABUSES, | |
a37e9e74 | 17 | UserRight.MANAGE_ANY_VIDEO_CHANNEL, |
bd45d503 | 18 | UserRight.REMOVE_ANY_VIDEO, |
bd45d503 C |
19 | UserRight.REMOVE_ANY_VIDEO_PLAYLIST, |
20 | UserRight.REMOVE_ANY_VIDEO_COMMENT, | |
21 | UserRight.UPDATE_ANY_VIDEO, | |
22 | UserRight.SEE_ALL_VIDEOS, | |
23 | UserRight.MANAGE_ACCOUNTS_BLOCKLIST, | |
24 | UserRight.MANAGE_SERVERS_BLOCKLIST, | |
0f8d00e3 | 25 | UserRight.MANAGE_USERS, |
e364e31e C |
26 | UserRight.SEE_ALL_COMMENTS, |
27 | UserRight.MANAGE_REGISTRATIONS | |
bd45d503 C |
28 | ], |
29 | ||
30 | [UserRole.USER]: [] | |
31 | } | |
32 | ||
33 | export function hasUserRight (userRole: UserRole, userRight: UserRight) { | |
34 | const userRights = userRoleRights[userRole] | |
35 | ||
36 | return userRights.includes(UserRight.ALL) || userRights.includes(userRight) | |
37 | } |