Improve handling of slug names used in commands

This commit is contained in:
Junior 2024-10-02 13:36:55 +00:00
parent bba074bafb
commit d00f47c1d8

View File

@ -99,25 +99,29 @@ client.on('message', async msg => {
if ( msg.content.startsWith(">>restart") && Config.CHANNELS_ALLOW.includes(msg.channel.id) ) { if ( msg.content.startsWith(">>restart") && Config.CHANNELS_ALLOW.includes(msg.channel.id) ) {
if ( msg.member.roles.cache.has(Config.RESTART_ROLE) ) { if ( msg.member.roles.cache.has(Config.RESTART_ROLE) ) {
let cmdParts = msg.content.split(" "); let cmdParts = msg.content.trim().split(" ");
let server = Servers.find(element => element.slug == cmdParts[1]); let server = Servers.find(element => element.slug == cmdParts[1].trim());
let restartFile = '/automation/mcrestart/' + server.slug + '.restart'; if ( typeof server === 'undefined' ) {
FS.stat(restartFile, function(err, stat) { msg.channel.send("**Error:** There is no server with a slug of \"`" + cmdParts[1].trim() + "`\"");
if ( err == null ) { } else {
msg.channel.send("**Warning:** " + server.name + " is already queued for a restart"); let restartFile = '/automation/mcrestart/' + server.slug + '.restart';
} else if ( err.code === 'ENOENT' ) { FS.stat(restartFile, function(err, stat) {
FS.closeSync(FS.openSync(restartFile, 'w')); if ( err == null ) {
msg.channel.send("**Notice:** " + server.name + " queued for restart by " + msg.author.username); msg.channel.send("**Warning:** " + server.name + " is already queued for a restart");
} } else if ( err.code === 'ENOENT' ) {
}); FS.closeSync(FS.openSync(restartFile, 'w'));
msg.channel.send("**Notice:** " + server.name + " queued for restart by " + msg.author.username);
}
});
}
} else { } else {
msg.channel.send("**Error:** You do not have permission to restart servers"); msg.channel.send("**Error:** You do not have permission to restart servers");
} }
} }
if ( msg.content.startsWith(">>server ") && Config.CHANNELS_ALLOW.includes(msg.channel.id) ) { if ( msg.content.startsWith(">>server ") && Config.CHANNELS_ALLOW.includes(msg.channel.id) ) {
let cmdParts = msg.content.split(" "); let cmdParts = msg.content.trim().split(" ");
let server = Servers.find(element => element.slug == cmdParts[1]); let server = Servers.find(element => element.slug == cmdParts[1].trim());
if ( server ) { if ( server ) {
let hostStatus = "Offline"; let hostStatus = "Offline";
if (server.hostIsAlive()) hostStatus = "Online"; if (server.hostIsAlive()) hostStatus = "Online";
@ -167,7 +171,7 @@ client.on('message', async msg => {
} }
} else { } else {
if ( cmdParts[1] ) { if ( cmdParts[1] ) {
msg.channel.send("No server with the slug \"" + cmdParts[1] + "\" exists"); msg.channel.send("No server with the slug \"`" + cmdParts[1] + "`\" exists");
} else { } else {
msg.channel.send("**Usage:** >>server *slug*"); msg.channel.send("**Usage:** >>server *slug*");
} }