From 79f3c34d24d6ae6aba17dd643726e20754140d80 Mon Sep 17 00:00:00 2001 From: RblSb Date: Tue, 15 Mar 2022 06:51:53 +0300 Subject: Update locked playlist restrictions And add "toggleItemType" permission. Closes #36 --- src/Client.hx | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src/Client.hx') diff --git a/src/Client.hx b/src/Client.hx index ae35ef4..64d7e54 100644 --- a/src/Client.hx +++ b/src/Client.hx @@ -1,10 +1,12 @@ package; +import Types.Permission; +import Types.Permissions; +import haxe.EnumFlags; #if nodejs import js.node.http.IncomingMessage; import js.npm.ws.WebSocket; #end -import haxe.EnumFlags; enum ClientGroup { Banned; @@ -47,6 +49,15 @@ class Client { } #end + public function hasPermission(permission:Permission, permissions:Permissions):Bool { + final p = permissions; + if (isBanned) return p.banned.contains(permission); + if (isAdmin) return p.admin.contains(permission); + if (isLeader) return p.leader.contains(permission); + if (isUser) return p.user.contains(permission); + return p.guest.contains(permission); + } + inline function get_isBanned():Bool { return group.has(Banned); } -- cgit v1.2.3