aboutsummaryrefslogtreecommitdiffstats
path: root/server/src/commands/mod/unban.js
diff options
context:
space:
mode:
authormarzavec <admin@marzavec.com>2018-03-14 06:26:53 +0100
committermarzavec <admin@marzavec.com>2018-03-14 06:26:53 +0100
commit39ec02d3c4cb5f5980b172d30404210de2479f0f (patch)
treeb837c9cfff94c62aa3de9880e4f7d07460734984 /server/src/commands/mod/unban.js
parentstabilized modules and server cmd field (diff)
downloadhackchat-39ec02d3c4cb5f5980b172d30404210de2479f0f.tar.gz
hackchat-39ec02d3c4cb5f5980b172d30404210de2479f0f.zip
Streamlined modules, server tweaks, better feedback
Diffstat (limited to 'server/src/commands/mod/unban.js')
-rw-r--r--server/src/commands/mod/unban.js27
1 files changed, 21 insertions, 6 deletions
diff --git a/server/src/commands/mod/unban.js b/server/src/commands/mod/unban.js
index 193b614..ee028d2 100644
--- a/server/src/commands/mod/unban.js
+++ b/server/src/commands/mod/unban.js
@@ -1,5 +1,5 @@
/*
-
+ Description: Removes a target ip from the ratelimiter
*/
'use strict';
@@ -15,17 +15,32 @@ exports.run = async (core, server, socket, data) => {
}
let ip = data.ip;
- let nick = data.nick; // for future upgrade
+ let hash = data.hash; // TODO unban by hash
+
+ // TODO unban by hash
+ let recordFound = server._police.pardon(data.ip);
+
+ if (!recordFound) {
+ server.reply({
+ cmd: 'warn',
+ text: 'Could not find target in records'
+ }, socket);
+
+ return;
+ }
- // TODO: support remove by nick future upgrade
- server._police.pardon(badClient.remoteAddress);
- console.log(`${socket.nick} [${socket.trip}] unbanned ${/*nick || */ip} in ${socket.channel}`);
+ console.log(`${socket.nick} [${socket.trip}] unbanned ${/*hash || */ip} in ${socket.channel}`);
server.reply({
cmd: 'info',
- text: `Unbanned ${/*nick || */ip}`
+ text: `${socket.nick} unbanned a userhash: ${server.getSocketHash(ip)}`
}, socket);
+ server.broadcast({
+ cmd: 'info',
+ text: `${socket.nick} unbanned a userhash: ${server.getSocketHash(ip)}`
+ }, { uType: 'mod' });
+
core.managers.stats.decrement('users-banned');
};