]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_conn_join.cpp
Add support for blocking tag messages with the deaf mode.
[user/henk/code/inspircd.git] / src / modules / m_conn_join.cpp
index d5a095e7f89721df6e99f5492ebe76d04fe8921d..ee479771616dc227d75d42eaf391d14b9325dd4a 100644 (file)
@@ -1,10 +1,15 @@
 /*
  * InspIRCd -- Internet Relay Chat Daemon
  *
- *   Copyright (C) 2010 Daniel De Graaf <danieldg@inspircd.org>
+ *   Copyright (C) 2014 Daniel Vassdal <shutter@canternet.org>
+ *   Copyright (C) 2013-2015 Attila Molnar <attilamolnar@hush.com>
+ *   Copyright (C) 2013, 2017, 2019 Sadie Powell <sadie@witchery.services>
+ *   Copyright (C) 2012 Robby <robby@chatbelgie.be>
+ *   Copyright (C) 2009-2010 Daniel De Graaf <danieldg@inspircd.org>
+ *   Copyright (C) 2009 Uli Schlachter <psychon@inspircd.org>
+ *   Copyright (C) 2009 Robin Burchell <robin+git@viroteck.net>
  *   Copyright (C) 2007 Dennis Friis <peavey@inspircd.org>
- *   Copyright (C) 2007 Robin Burchell <robin+git@viroteck.net>
- *   Copyright (C) 2007 Craig Edwards <craigedwards@brainbox.cc>
+ *   Copyright (C) 2007 Craig Edwards <brain@inspircd.org>
  *
  * This file is part of InspIRCd.  InspIRCd is free software: you can
  * redistribute it and/or modify it under the terms of the GNU General Public
@@ -66,7 +71,8 @@ class ModuleConnJoin : public Module
        unsigned int defdelay;
 
  public:
-       ModuleConnJoin() : ext("join_timer", this)
+       ModuleConnJoin()
+               : ext("join_timer", ExtensionItem::EXT_USER, this)
        {
        }
 
@@ -74,17 +80,17 @@ class ModuleConnJoin : public Module
        {
                ConfigTag* tag = ServerInstance->Config->ConfValue("autojoin");
                defchans = tag->getString("channel");
-               defdelay = tag->getInt("delay", 0, 0, 60);
+               defdelay = tag->getDuration("delay", 0, 0, 60*15);
        }
 
-       void Prioritize()
+       void Prioritize() CXX11_OVERRIDE
        {
                ServerInstance->Modules->SetPriority(this, I_OnPostConnect, PRIORITY_LAST);
        }
 
        Version GetVersion() CXX11_OVERRIDE
        {
-               return Version("Forces users to join the specified channel(s) on connect", VF_VENDOR);
+               return Version("Allows the server administrator to force users to join one or more channels on connect.", VF_VENDOR);
        }
 
        void OnPostConnect(User* user) CXX11_OVERRIDE
@@ -94,7 +100,7 @@ class ModuleConnJoin : public Module
                        return;
 
                std::string chanlist = localuser->GetClass()->config->getString("autojoin");
-               unsigned int chandelay = localuser->GetClass()->config->getInt("autojoindelay", 0, 0, 60);
+               unsigned int chandelay = localuser->GetClass()->config->getDuration("autojoindelay", 0, 0, 60*15);
 
                if (chanlist.empty())
                {