diff options
author | marzavec <admin@marzavec.com> | 2020-03-06 16:39:22 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-06 16:39:22 +0100 |
commit | 4e0e269007af349dee969724a8a0128c0ef22dae (patch) | |
tree | daf36b87a9863a798d201242d0bbc68d39cda56d /server/src/commands/mod/ban.js | |
parent | Merge pull request #85 from MinusGix/add_channel_invite (diff) | |
parent | Move most uses of uType filtering to use UAC levels (diff) | |
download | hackchat-4e0e269007af349dee969724a8a0128c0ef22dae.tar.gz hackchat-4e0e269007af349dee969724a8a0128c0ef22dae.zip |
Merge pull request #89 from MinusGix/nul_initial2
Added UAC and numeric user levels
Diffstat (limited to '')
-rw-r--r-- | server/src/commands/mod/ban.js | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/server/src/commands/mod/ban.js b/server/src/commands/mod/ban.js index dd5f01e..982c380 100644 --- a/server/src/commands/mod/ban.js +++ b/server/src/commands/mod/ban.js @@ -2,10 +2,12 @@ Description: Adds the target socket's ip to the ratelimiter */ +import * as UAC from "../utility/UAC/info"; + // module main export async function run(core, server, socket, data) { // increase rate limit chance and ignore if not admin or mod - if (socket.uType === 'user') { + if (!UAC.isModerator(socket.level)) { return server.police.frisk(socket.address, 10); } @@ -28,7 +30,7 @@ export async function run(core, server, socket, data) { [badClient] = badClient; // i guess banning mods or admins isn't the best idea? - if (badClient.uType !== 'user') { + if (badClient.level >= socket.level) { return server.reply({ cmd: 'warn', text: 'Cannot ban other mods, how rude', @@ -44,13 +46,13 @@ export async function run(core, server, socket, data) { server.broadcast({ cmd: 'info', text: `Banned ${targetNick}`, - }, { channel: socket.channel, uType: 'user' }); + }, { channel: socket.channel, level: (level) => level < UAC.levels.moderator }); // notify mods server.broadcast({ cmd: 'info', text: `${socket.nick} banned ${targetNick} in ${socket.channel}, userhash: ${badClient.hash}`, - }, { uType: 'mod' }); + }, { level: UAC.isModerator }); // force connection closed badClient.terminate(); |