aboutsummaryrefslogtreecommitdiffstats
path: root/src/server/Main.hx
diff options
context:
space:
mode:
authorRblSb <msrblsb@gmail.com>2021-02-04 01:43:37 +0300
committerRblSb <msrblsb@gmail.com>2021-02-04 01:43:37 +0300
commit2bb127e1cd582d9151ef1b70c3496bc79776a95a (patch)
tree918bacef6e9e59754948fc7103570853fbb6c419 /src/server/Main.hx
parentec90923038d902d7c0fa5220afd5b79650e17d47 (diff)
Improve changeOrder permission
closes #21
Diffstat (limited to 'src/server/Main.hx')
-rw-r--r--src/server/Main.hx13
1 files changed, 4 insertions, 9 deletions
diff --git a/src/server/Main.hx b/src/server/Main.hx
index 07f782a..565daab 100644
--- a/src/server/Main.hx
+++ b/src/server/Main.hx
@@ -472,6 +472,9 @@ class Main {
serverMessage(client, "videoLimitPerUserError");
return;
}
+ if (!data.addVideo.atEnd && !checkPermission(client, ChangeOrderPerm)) {
+ data.addVideo.atEnd = true;
+ }
final item = data.addVideo.item;
item.author = client.name;
final local = '$localIp:$port';
@@ -721,7 +724,7 @@ class Main {
}
function checkPermission(client:Client, perm:Permission):Bool {
- final state = hasPermission(client, perm);
+ final state = client.hasPermission(perm, config.permissions);
if (!state) send(client, {
type: ServerMessage, serverMessage: {
textId: "accessError"
@@ -730,14 +733,6 @@ class Main {
return state;
}
- function hasPermission(client:Client, perm:Permission):Bool {
- final p = config.permissions;
- if (client.isAdmin) return p.admin.indexOf(cast perm) != -1;
- if (client.isLeader) return p.leader.indexOf(cast perm) != -1;
- if (client.isUser) return p.user.indexOf(cast perm) != -1;
- return p.guest.indexOf(cast perm) != -1;
- }
-
final htmlChars = ~/[&^<>'"]/;
public function badNickName(name:String):Bool {
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage