]> git.netwichtig.de Git - user/henk/code/inspircd.git/commitdiff
Move admin settings into core_info
authorAttila Molnar <attilamolnar@hush.com>
Fri, 7 Mar 2014 17:09:21 +0000 (18:09 +0100)
committerAttila Molnar <attilamolnar@hush.com>
Fri, 7 Mar 2014 17:09:21 +0000 (18:09 +0100)
include/configreader.h
src/configreader.cpp
src/coremods/core_info/cmd_admin.cpp
src/coremods/core_info/core_info.cpp
src/coremods/core_info/core_info.h

index fd6452b31bed41f5eb082c061c154dc4d2e06186..3cb75ad3760017c402d787724e2d0222a794363d 100644 (file)
@@ -297,21 +297,6 @@ class CoreExport ServerConfig
         */
        std::string ServerDesc;
 
-       /** Holds the admin's name, for output in
-        * the /ADMIN command.
-        */
-       std::string AdminName;
-
-       /** Holds the email address of the admin,
-        * for output in the /ADMIN command.
-        */
-       std::string AdminEmail;
-
-       /** Holds the admin's nickname, for output
-        * in the /ADMIN command
-        */
-       std::string AdminNick;
-
        /** Pretend disabled commands don't exist.
         */
        bool DisabledDontExist;
index 6d5fc9a8759da7c9006a76dd7df6cef14e9a2603..b9417bf3caa62afe470814c2c9530d5713cb9542 100644 (file)
@@ -372,9 +372,6 @@ void ServerConfig::Fill()
        XLineMessage = options->getString("xlinemessage", options->getString("moronbanner", "You're banned!"));
        ServerDesc = ConfValue("server")->getString("description", "Configure Me");
        Network = ConfValue("server")->getString("network", "Network");
-       AdminName = ConfValue("admin")->getString("name", "");
-       AdminEmail = ConfValue("admin")->getString("email", "null@example.com");
-       AdminNick = ConfValue("admin")->getString("nick", "admin");
        NetBufferSize = ConfValue("performance")->getInt("netbuffersize", 10240, 1024, 65534);
        dns_timeout = ConfValue("dns")->getInt("timeout", 5);
        DisabledCommands = ConfValue("disabled")->getString("commands", "");
index 4832f22b6623a64c59041bc9ab915e149b13ffec..722ef866803069a1d26e19eb3a118b83f6ad439e 100644 (file)
@@ -36,13 +36,13 @@ CmdResult CommandAdmin::Handle (const std::vector<std::string>& parameters, User
                return CMD_SUCCESS;
        user->SendText(":%s %03d %s :Administrative info for %s", ServerInstance->Config->ServerName.c_str(),
                RPL_ADMINME, user->nick.c_str(),ServerInstance->Config->ServerName.c_str());
-       if (!ServerInstance->Config->AdminName.empty())
+       if (!AdminName.empty())
                user->SendText(":%s %03d %s :Name     - %s", ServerInstance->Config->ServerName.c_str(),
-                       RPL_ADMINLOC1, user->nick.c_str(), ServerInstance->Config->AdminName.c_str());
+                       RPL_ADMINLOC1, user->nick.c_str(), AdminName.c_str());
        user->SendText(":%s %03d %s :Nickname - %s", ServerInstance->Config->ServerName.c_str(),
-               RPL_ADMINLOC2, user->nick.c_str(), ServerInstance->Config->AdminNick.c_str());
+               RPL_ADMINLOC2, user->nick.c_str(), AdminNick.c_str());
        user->SendText(":%s %03d %s :E-Mail   - %s", ServerInstance->Config->ServerName.c_str(),
-               RPL_ADMINEMAIL, user->nick.c_str(), ServerInstance->Config->AdminEmail.c_str());
+               RPL_ADMINEMAIL, user->nick.c_str(), AdminEmail.c_str());
        return CMD_SUCCESS;
 }
 
index 09f8ad18d588f6ffb0f78078c8dd471d9ac38e05..56c3c956db04fb6e5a7577d553212127f892fdcf 100644 (file)
@@ -36,6 +36,14 @@ class CoreModInfo : public Module
        {
        }
 
+       void ReadConfig(ConfigStatus& status) CXX11_OVERRIDE
+       {
+               ConfigTag* tag = ServerInstance->Config->ConfValue("admin");
+               cmdadmin.AdminName = tag->getString("name");
+               cmdadmin.AdminEmail = tag->getString("email", "null@example.com");
+               cmdadmin.AdminNick = tag->getString("nick", "admin");
+       }
+
        Version GetVersion() CXX11_OVERRIDE
        {
                return Version("Provides the ADMIN, COMMANDS, INFO, MODULES, MOTD, TIME and VERSION commands", VF_VENDOR|VF_CORE);
index 894616cf71f910f4cc77e4fb46c041baa1722240..f5dd9e6483a27116ec6ac98a66b0e1f8bd8dbb6c 100644 (file)
 class CommandAdmin : public Command
 {
  public:
+       /** Holds the admin's name, for output in
+        * the /ADMIN command.
+        */
+       std::string AdminName;
+
+       /** Holds the email address of the admin,
+        * for output in the /ADMIN command.
+        */
+       std::string AdminEmail;
+
+       /** Holds the admin's nickname, for output
+        * in the /ADMIN command
+        */
+       std::string AdminNick;
+
        /** Constructor for admin.
         */
        CommandAdmin(Module* parent);