- return 0;
- }
-
- virtual void OnUserKick(userrec* source, userrec* user, chanrec* chan, const std::string &reason)
- {
- if (chan->IsModeSet('J') && (source != user))
- {
- delaylist* dl;
- if (!chan->GetExt("norejoinusers", dl))
- {
- dl = new delaylist;
- chan->Extend("norejoinusers", dl);
- }
-
- ServerInstance->Log(DEBUG, "m_kicknorejoin.so: setting record for %s, %d second delay", user->nick, strtoint(chan->GetModeParameter('J')));
- (*dl)[user] = time(NULL) + strtoint(chan->GetModeParameter('J'));
- }
- }
-
- virtual void OnChannelDelete(chanrec* chan)
- {
- delaylist* dl;
-
- if (chan->GetExt("norejoinusers", dl))
- {
- DELETE(dl);
- chan->Shrink("norejoinusers");
- }
- }
-
- virtual void OnCleanup(int target_type, void* item)
- {
- if(target_type == TYPE_CHANNEL)
- OnChannelDelete((chanrec*)item);