]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_delayjoin.cpp
Introduce "X" snomask for remote *:line messages [patch by jackmcbarn]
[user/henk/code/inspircd.git] / src / modules / m_delayjoin.cpp
index a7a8575b4c7a19bff41d7ccd08fe79269b6312a7..c79fa03810197562bd8e72c533695c99bbb37ba8 100644 (file)
@@ -128,8 +128,17 @@ void ModuleDelayJoin::OnUserKick(User* source, Membership* memb, const std::stri
 
 ModResult ModuleDelayJoin::OnHostCycle(User* user)
 {
-       // TODO
-       return MOD_RES_DENY;
+       for (UCListIter f = user->chans.begin(); f != user->chans.end(); f++)
+       {
+               Channel* chan = *f;
+               Membership* memb = chan->GetUser(user);
+
+               if (memb && unjoined.get(memb))
+               {
+                       return MOD_RES_DENY;
+               }
+       }
+       return MOD_RES_PASSTHRU;
 }
 
 void ModuleDelayJoin::OnUserQuit(User* user, const std::string &reason, const std::string &oper_message)