- ServerInstance->ServerNoticeAll("*** m_invisible.so has just been loaded on this network. For more information, please visit http://inspircd.org/wiki/Modules/invisible");
- Implementation eventlist[] = { I_OnUserPreMessage, I_OnUserPreNotice, I_OnUserJoin, I_OnUserPart, I_OnUserQuit, I_OnRehash };
- ServerInstance->Modules->Attach(eventlist, this, 6);
- }
-
- virtual ~ModuleInvisible()
- {
- ServerInstance->Modes->DelMode(qm);
- ServerInstance->Modes->DelModeWatcher(ido);
- delete qm;
- delete ido;
- delete conf;
- }
+ ServerInstance->Users->ServerNoticeAll("*** m_invisible.so has just been loaded on this network. For more information, please visit http://inspircd.org/wiki/Modules/invisible");
+ Implementation eventlist[] = {
+ I_OnUserPreMessage, I_OnUserPreNotice, I_OnUserJoin, I_OnUserPart, I_OnUserQuit,
+ I_OnHostCycle, I_OnSendWhoLine, I_OnNamesListItem
+ };
+ ServerInstance->Modules->Attach(eventlist, this, 8);
+ };
+
+ ~ModuleInvisible()
+ {
+ };
+
+ Version GetVersion();
+ void OnUserJoin(Membership* memb, bool sync, bool created, CUList& excepts);
+ void OnUserPart(Membership* memb, std::string &partmessage, CUList& excepts);
+ void OnUserQuit(User* user, const std::string &reason, const std::string &oper_message);
+ ModResult OnHostCycle(User* user);
+ ModResult OnUserPreNotice(User* user,void* dest,int target_type, std::string &text, char status, CUList &exempt_list);
+ ModResult OnUserPreMessage(User* user,void* dest,int target_type, std::string &text, char status, CUList &exempt_list);
+ void OnSendWhoLine(User* source, User* user, Channel* channel, std::string& line);
+ void OnNamesListItem(User* issuer, Membership* memb, std::string &prefixes, std::string &nick);
+};