From f06ba4a6f55d769d1a5dd872ab394f86f047b6d9 Mon Sep 17 00:00:00 2001 From: "Erik C. Thauvin" Date: Wed, 1 Feb 2023 02:37:04 -0800 Subject: [PATCH] Added disabled modules and commands listing --- src/main/kotlin/net/thauvin/erik/mobibot/Addons.kt | 10 ++++++++++ src/main/kotlin/net/thauvin/erik/mobibot/Mobibot.kt | 6 +++++- .../net/thauvin/erik/mobibot/commands/Modules.kt | 8 ++++++-- 3 files changed, 21 insertions(+), 3 deletions(-) diff --git a/src/main/kotlin/net/thauvin/erik/mobibot/Addons.kt b/src/main/kotlin/net/thauvin/erik/mobibot/Addons.kt index 020edf4..1127f02 100644 --- a/src/main/kotlin/net/thauvin/erik/mobibot/Addons.kt +++ b/src/main/kotlin/net/thauvin/erik/mobibot/Addons.kt @@ -74,7 +74,10 @@ class Addons(private val props: Properties) { if (logger.isDebugEnabled) { logger.debug("Module $name is disabled.") } + names.disabledModules.add(name) } + } else { + names.disabledModules.add(name) } } return enabled @@ -106,7 +109,10 @@ class Addons(private val props: Properties) { if (logger.isDebugEnabled) { logger.debug("Command $name is disabled.") } + names.disabledCommands.add(name) } + } else { + names.disabledCommands.add(name) } } return enabled @@ -168,12 +174,16 @@ class Addons(private val props: Properties) { */ object Names { val modules: MutableList = mutableListOf() + val disabledModules: MutableList = mutableListOf() val commands: MutableList = mutableListOf() + val disabledCommands: MutableList = mutableListOf() val ops: MutableList = mutableListOf() fun sort() { modules.sort() + disabledModules.sort() commands.sort() + disabledCommands.sort() ops.sort() } } diff --git a/src/main/kotlin/net/thauvin/erik/mobibot/Mobibot.kt b/src/main/kotlin/net/thauvin/erik/mobibot/Mobibot.kt index f811764..2dff959 100644 --- a/src/main/kotlin/net/thauvin/erik/mobibot/Mobibot.kt +++ b/src/main/kotlin/net/thauvin/erik/mobibot/Mobibot.kt @@ -148,6 +148,10 @@ class Mobibot(nickname: String, val channel: String, logsDirPath: String, p: Pro event.sendMessage("The commands are:") event.sendList(addons.names.commands, 8, isBold = true, isIndent = true) if (event.isChannelOp(channel)) { + if (addons.names.disabledCommands.isNotEmpty()) { + event.sendMessage("The disabled commands are:") + event.sendList(addons.names.disabledCommands, 8, isBold = false, isIndent = true) + } event.sendMessage("The op commands are:") event.sendList(addons.names.ops, 8, isBold = true, isIndent = true) } @@ -412,7 +416,7 @@ class Mobibot(nickname: String, val channel: String, logsDirPath: String, p: Pro addons.add(Ignore()) addons.add(LinksManager()) addons.add(Me()) - addons.add(Modules(addons.names.modules)) + addons.add(Modules(addons.names.modules, addons.names.disabledModules)) addons.add(Msg()) addons.add(Nick()) addons.add(Posting()) diff --git a/src/main/kotlin/net/thauvin/erik/mobibot/commands/Modules.kt b/src/main/kotlin/net/thauvin/erik/mobibot/commands/Modules.kt index f64178d..b2293b0 100644 --- a/src/main/kotlin/net/thauvin/erik/mobibot/commands/Modules.kt +++ b/src/main/kotlin/net/thauvin/erik/mobibot/commands/Modules.kt @@ -36,9 +36,9 @@ import net.thauvin.erik.mobibot.Utils.isChannelOp import net.thauvin.erik.mobibot.Utils.sendList import org.pircbotx.hooks.types.GenericMessageEvent -class Modules(private val modules: List) : AbstractCommand() { +class Modules(private val modules: List, private val disabledModules: List) : AbstractCommand() { override val name = "modules" - override val help = listOf("To view a list of enabled modules:", helpFormat("%c $name")) + override val help = listOf("To view a list of enabled/disabled modules:", helpFormat("%c $name")) override val isOpOnly = true override val isPublic = false override val isVisible = true @@ -51,6 +51,10 @@ class Modules(private val modules: List) : AbstractCommand() { event.respondPrivateMessage("The enabled modules are: ") event.sendList(modules, 7, isIndent = true) } + if (disabledModules.isNotEmpty()) { + event.respondPrivateMessage("The disabled modules are: ") + event.sendList(disabledModules, 7, isIndent = true) + } } else { helpResponse(channel, args, event) }