From 8b694bc392c36551e428b84454efb81cdbc8bcd3 Mon Sep 17 00:00:00 2001 From: Adam Date: Mon, 6 Feb 2017 14:23:18 -0500 Subject: Track override in CommandSource and use it in the logger --- src/command.cpp | 27 +++++++++++++++++++++++---- src/logger.cpp | 6 ++++++ 2 files changed, 29 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/command.cpp b/src/command.cpp index e7fc61457..02decd1b7 100644 --- a/src/command.cpp +++ b/src/command.cpp @@ -152,6 +152,29 @@ bool CommandSource::IsOper() return false; } +bool CommandSource::HasOverridePriv(const Anope::string &priv) +{ + if (!HasPriv(priv)) + return false; + + override = true; + return true; +} + +bool CommandSource::HasOverrideCommand(const Anope::string &priv) +{ + if (!HasCommand(priv)) + return false; + + override = true; + return true; +} + +bool CommandSource::IsOverride() const +{ + return override; +} + void CommandSource::Reply(const Anope::string &message) { const char *translated_message = Language::Translate(this->nc, message.c_str()); @@ -170,10 +193,6 @@ Command::Command(Module *o, const Anope::string &sname, size_t minparams, size_t { } -Command::~Command() -{ -} - void Command::SetDesc(const Anope::string &d) { this->desc = d; diff --git a/src/logger.cpp b/src/logger.cpp index f6e961ee8..d686391d9 100644 --- a/src/logger.cpp +++ b/src/logger.cpp @@ -298,6 +298,12 @@ void Logger::InsertVariables(FormatInfo &fi) fi.Add("command"_kw = command->GetName()); } +void Logger::CheckOverride() +{ + if (type == LogType::COMMAND && source != nullptr && source->IsOverride()) + type = LogType::OVERRIDE; +} + Anope::string Logger::FormatSource() const { if (user) -- cgit