diff options
Diffstat (limited to 'include/modules')
31 files changed, 732 insertions, 92 deletions
diff --git a/include/modules/bs_badwords.h b/include/modules/bs_badwords.h index 678512c96..390e502c0 100644 --- a/include/modules/bs_badwords.h +++ b/include/modules/bs_badwords.h @@ -71,3 +71,21 @@ struct BadWords virtual void Check() = 0; }; +namespace Event +{ + struct CoreExport BadWordEvents : Events + { + /** Called before a badword is added to the badword list + * @param ci The channel + * @param bw The badword + */ + virtual void OnBadWordAdd(ChannelInfo *ci, const BadWord *bw) anope_abstract; + + /** Called before a badword is deleted from a channel + * @param ci The channel + * @param bw The badword + */ + virtual void OnBadWordDel(ChannelInfo *ci, const BadWord *bw) anope_abstract; + }; +} + diff --git a/include/modules/bs_bot.h b/include/modules/bs_bot.h new file mode 100644 index 000000000..c6d670f35 --- /dev/null +++ b/include/modules/bs_bot.h @@ -0,0 +1,34 @@ +/* + * (C) 2014 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + * + */ + +namespace Event +{ + struct CoreExport BotCreate : Events + { + /** Called when a new bot is made + * @param bi The bot + */ + virtual void OnBotCreate(BotInfo *bi) anope_abstract; + }; + + struct CoreExport BotChange : Events + { + /** Called when a bot is changed + * @param bi The bot + */ + virtual void OnBotChange(BotInfo *bi) anope_abstract; + }; + + struct CoreExport BotDelete : Events + { + /** Called when a bot is deleted + * @param bi The bot + */ + virtual void OnBotDelete(BotInfo *bi) anope_abstract; + }; +} diff --git a/include/modules/bs_info.h b/include/modules/bs_info.h new file mode 100644 index 000000000..c9f360dfc --- /dev/null +++ b/include/modules/bs_info.h @@ -0,0 +1,20 @@ +/* + * + * (C) 2014 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + * + */ + +namespace Event +{ + struct CoreExport BotInfoEvent : Events + { + /** Called when a user uses botserv/info on a bot or channel. + */ + virtual void OnBotInfo(CommandSource &source, BotInfo *bi, ChannelInfo *ci, InfoFormatter &info) anope_abstract; + }; + extern CoreExport EventHandlers<BotInfoEvent> OnBotInfo; +} + diff --git a/include/modules/bs_kick.h b/include/modules/bs_kick.h index 61cd987d5..a783b6017 100644 --- a/include/modules/bs_kick.h +++ b/include/modules/bs_kick.h @@ -44,3 +44,17 @@ struct KickerData virtual ~KickerData() { } virtual void Check(ChannelInfo *ci) = 0; }; + +namespace Event +{ + struct CoreExport BotBan : Events + { + /** Called when a bot places a ban + * @param u User being banned + * @param ci Channel the ban is placed on + * @param mask The mask being banned + */ + virtual void OnBotBan(User *u, ChannelInfo *ci, const Anope::string &mask) anope_abstract; + }; +} + diff --git a/include/modules/chanserv.h b/include/modules/chanserv.h new file mode 100644 index 000000000..37a96e9e7 --- /dev/null +++ b/include/modules/chanserv.h @@ -0,0 +1,46 @@ +/* + * (C) 2014 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + * + */ + +namespace ChanServ +{ + class ChanServService : public Service + { + public: + ChanServService(Module *m) : Service(m, "ChanServService", "ChanServ") + { + } + + /* Have ChanServ hold the channel, that is, join and set +nsti and wait + * for a few minutes so no one can join or rejoin. + */ + virtual void Hold(Channel *c) anope_abstract; + }; + static ServiceReference<ChanServService> service("ChanServService", "ChanServ"); + + namespace Event + { + struct CoreExport PreChanExpire : Events + { + /** Called before a channel expires + * @param ci The channel + * @param expire Set to true to allow the chan to expire + */ + virtual void OnPreChanExpire(ChannelInfo *ci, bool &expire) anope_abstract; + }; + static EventHandlersReference<PreChanExpire> OnPreChanExpire("OnPreChanExpire"); + + struct CoreExport ChanExpire : Events + { + /** Called before a channel expires + * @param ci The channel + */ + virtual void OnChanExpire(ChannelInfo *ci) anope_abstract; + }; + static EventHandlersReference<ChanExpire> OnChanExpire("OnChanExpire"); + } +} diff --git a/include/modules/cs_access.h b/include/modules/cs_access.h new file mode 100644 index 000000000..8c6778799 --- /dev/null +++ b/include/modules/cs_access.h @@ -0,0 +1,22 @@ +/* + * + * (C) 2014 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + * + */ + +namespace Event +{ + struct CoreExport LevelChange : Events + { + /** Called when a level for a channel is changed + * @param source The source of the command + * @param ci The channel the level was changed on + * @param priv The privilege changed + * @param what The new level + */ + virtual void OnLevelChange(CommandSource &source, ChannelInfo *ci, const Anope::string &priv, int16_t what) anope_abstract; + }; +} diff --git a/include/modules/cs_akick.h b/include/modules/cs_akick.h new file mode 100644 index 000000000..ab02985c1 --- /dev/null +++ b/include/modules/cs_akick.h @@ -0,0 +1,28 @@ +/* + * + * (C) 2014 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + * + */ + +namespace Event +{ + struct CoreExport Akick : Events + { + /** Called after adding an akick to a channel + * @param source The source of the command + * @param ci The channel + * @param ak The akick + */ + virtual void OnAkickAdd(CommandSource &source, ChannelInfo *ci, const AutoKick *ak) anope_abstract; + + /** Called before removing an akick from a channel + * @param source The source of the command + * @param ci The channel + * @param ak The akick + */ + virtual void OnAkickDel(CommandSource &source, ChannelInfo *ci, const AutoKick *ak) anope_abstract; + }; +} diff --git a/include/modules/cs_drop.h b/include/modules/cs_drop.h new file mode 100644 index 000000000..e2a9ace8a --- /dev/null +++ b/include/modules/cs_drop.h @@ -0,0 +1,20 @@ +/* + * + * (C) 2014 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + * + */ + +namespace Event +{ + struct CoreExport ChanDrop : Events + { + /** Called right before a channel is dropped + * @param source The user dropping the channel + * @param ci The channel + */ + virtual EventReturn OnChanDrop(CommandSource &source, ChannelInfo *ci) anope_abstract; + }; +} diff --git a/include/modules/cs_info.h b/include/modules/cs_info.h new file mode 100644 index 000000000..7f0429387 --- /dev/null +++ b/include/modules/cs_info.h @@ -0,0 +1,23 @@ +/* + * + * (C) 2014 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + * + */ + +namespace Event +{ + struct CoreExport ChanInfo : Events + { + /** Called when a user requests info for a channel + * @param source The user requesting info + * @param ci The channel the user is requesting info for + * @param info Data to show the user requesting information + * @param show_hidden true if we should show the user everything + */ + virtual void OnChanInfo(CommandSource &source, ChannelInfo *ci, InfoFormatter &info, bool show_hidden) anope_abstract; + }; +} + diff --git a/include/modules/cs_mode.h b/include/modules/cs_mode.h index 44ffd5a7f..4c1dc5d55 100644 --- a/include/modules/cs_mode.h +++ b/include/modules/cs_mode.h @@ -88,3 +88,23 @@ struct ModeLocks virtual void Check() = 0; }; +namespace Event +{ + struct CoreExport MLockEvents : Events + { + /** Called when a mode is about to be mlocked + * @param ci The channel the mode is being locked on + * @param lock The mode lock + * @return EVENT_CONTINUE to let other modules decide, EVENT_STOP to deny the mlock. + */ + virtual EventReturn OnMLock(ChannelInfo *ci, ModeLock *lock) anope_abstract; + + /** Called when a mode is about to be unlocked + * @param ci The channel the mode is being unlocked from + * @param lock The mode lock + * @return EVENT_CONTINUE to let other modules decide, EVENT_STOP to deny the mlock. + */ + virtual EventReturn OnUnMLock(ChannelInfo *ci, ModeLock *lock) anope_abstract; + }; +} + diff --git a/include/modules/cs_set.h b/include/modules/cs_set.h new file mode 100644 index 000000000..3ddf2f41c --- /dev/null +++ b/include/modules/cs_set.h @@ -0,0 +1,25 @@ +/* + * + * (C) 2014 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + * + */ + +namespace Event +{ + struct CoreExport SetChannelOption : Events + { + /** Called when a chanserv/set command is used + * @param source The source of the command + * @param cmd The command + * @param ci The channel the command was used on + * @param setting The setting passed to the command. Probably ON/OFF. + * @return EVENT_ALLOW to bypass access checks, EVENT_STOP to halt immediately. + */ + virtual EventReturn OnSetChannelOption(CommandSource &source, Command *cmd, ChannelInfo *ci, const Anope::string &setting) anope_abstract; + }; + static EventHandlersReference<SetChannelOption> OnSetChannelOption("OnSetChannelOption"); +} + diff --git a/include/modules/dns.h b/include/modules/dns.h index 59fc83e64..e340c3f2b 100644 --- a/include/modules/dns.h +++ b/include/modules/dns.h @@ -175,6 +175,20 @@ namespace DNS }; } // namespace DNS + +namespace Event +{ + struct CoreExport DnsRequest : Events + { + /** Called when a DNS request (question) is recieved. + * @param req The dns request + * @param reply The reply that will be sent + */ + virtual void OnDnsRequest(DNS::Query &req, DNS::Query *reply) anope_abstract; + }; + static EventHandlersReference<DnsRequest> OnDnsRequest("OnDnsRequest"); +} + #endif // DNS_H diff --git a/include/modules/fantasy.h b/include/modules/fantasy.h new file mode 100644 index 000000000..a7944cef9 --- /dev/null +++ b/include/modules/fantasy.h @@ -0,0 +1,35 @@ +/* + * + * (C) 2014 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + * + */ + +namespace Event +{ + struct BotFantasy : Events + { + /** Called on fantasy command + * @param source The source of the command + * @param c The command + * @param ci The channel it's being used in + * @param params The params + * @return EVENT_STOP to halt processing and not run the command, EVENT_ALLOW to allow the command to be executed + */ + virtual EventReturn OnBotFantasy(CommandSource &source, Command *c, ChannelInfo *ci, const std::vector<Anope::string> ¶ms) anope_abstract; + }; + + struct CoreExport BotNoFantasyAccess : Events + { + /** Called on fantasy command without access + * @param source The source of the command + * @param c The command + * @param ci The channel it's being used in + * @param params The params + * @return EVENT_STOP to halt processing and not run the command, EVENT_ALLOW to allow the command to be executed + */ + virtual EventReturn OnBotNoFantasyAccess(CommandSource &source, Command *c, ChannelInfo *ci, const std::vector<Anope::string> ¶ms) anope_abstract; + }; +} diff --git a/include/modules/global.h b/include/modules/global.h new file mode 100644 index 000000000..f4f4989ae --- /dev/null +++ b/include/modules/global.h @@ -0,0 +1,29 @@ +/* + * + * (C) 2014 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + * + */ + +namespace Global +{ + class GlobalService : public Service + { + public: + GlobalService(Module *m) : Service(m, "GlobalService", "Global") + { + } + + /** Send out a global message to all users + * @param sender Our client which should send the global + * @param source The sender of the global + * @param message The message + */ + virtual void SendGlobal(BotInfo *sender, const Anope::string &source, const Anope::string &message) = 0; + }; + static ServiceReference<GlobalService> service("GlobalService", "Global"); +} + + diff --git a/include/modules/help.h b/include/modules/help.h new file mode 100644 index 000000000..333e5f9c8 --- /dev/null +++ b/include/modules/help.h @@ -0,0 +1,27 @@ +/* + * + * (C) 2014 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + * + */ + +namespace Event +{ + struct CoreExport Help : Events + { + /** Called when someone uses the generic/help command + * @param source Command source + * @param params Params + * @return EVENT_STOP to stop processing + */ + virtual EventReturn OnPreHelp(CommandSource &source, const std::vector<Anope::string> ¶ms) anope_abstract; + + /** Called when someone uses the generic/help command + * @param source Command source + * @param params Params + */ + virtual void OnPostHelp(CommandSource &source, const std::vector<Anope::string> ¶ms) anope_abstract; + }; +} diff --git a/include/modules/hs_del.h b/include/modules/hs_del.h new file mode 100644 index 000000000..d4a5c7666 --- /dev/null +++ b/include/modules/hs_del.h @@ -0,0 +1,18 @@ +/* + * + * (C) 2003-2014 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + */ + +namespace Event +{ + struct CoreExport DeleteVhost : Events + { + /** Called when a vhost is deleted + * @param na The nickalias of the vhost + */ + virtual void OnDeleteVhost(NickAlias *na) anope_abstract; + }; +} diff --git a/include/modules/memoserv.h b/include/modules/memoserv.h new file mode 100644 index 000000000..4e5d67de6 --- /dev/null +++ b/include/modules/memoserv.h @@ -0,0 +1,66 @@ +/* + * (C) 2014 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + * + */ + +namespace MemoServ +{ + class MemoServService : public Service + { + public: + enum MemoResult + { + MEMO_SUCCESS, + MEMO_INVALID_TARGET, + MEMO_TOO_FAST, + MEMO_TARGET_FULL + }; + + MemoServService(Module *m) : Service(m, "MemoServService", "MemoServ") + { + } + + /** Sends a memo. + * @param source The source of the memo, can be anythin. + * @param target The target of the memo, nick or channel. + * @param message Memo text + * @param force true to force the memo, restrictions/delays etc are not checked + */ + virtual MemoResult Send(const Anope::string &source, const Anope::string &target, const Anope::string &message, bool force = false) = 0; + + /** Check for new memos and notify the user if there are any + * @param u The user + */ + virtual void Check(User *u) = 0; + }; + static ServiceReference<MemoServService> service("MemoServService", "MemoServ"); + + namespace Event + { + struct CoreExport MemoSend : Events + { + /** Called when a memo is sent + * @param source The source of the memo + * @param target The target of the memo + * @param mi Memo info for target + * @param m The memo + */ + virtual void OnMemoSend(const Anope::string &source, const Anope::string &target, MemoInfo *mi, Memo *m) anope_abstract; + }; + static EventHandlersReference<MemoSend> OnMemoSend("OnMemoSend"); + + struct CoreExport MemoDel : Events + { + /** Called when a memo is deleted + * @param target The target the memo is being deleted from (nick or channel) + * @param mi The memo info + * @param m The memo + */ + virtual void OnMemoDel(const Anope::string &target, MemoInfo *mi, const Memo *m) anope_abstract; + }; + static EventHandlersReference<MemoDel> OnMemoDel("OnMemoDel"); + } +} diff --git a/include/modules/nickserv.h b/include/modules/nickserv.h new file mode 100644 index 000000000..0ede4130e --- /dev/null +++ b/include/modules/nickserv.h @@ -0,0 +1,68 @@ +/* + * + * (C) 2014 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + * + */ + +namespace NickServ +{ + class NickServService : public Service + { + public: + NickServService(Module *m) : Service(m, "NickServService", "NickServ") + { + } + + virtual void Validate(User *u) anope_abstract; + virtual void Collide(User *u, NickAlias *na) anope_abstract; + virtual void Release(NickAlias *na) anope_abstract; + }; + static ServiceReference<NickServService> service("NickServService", "NickServ"); + + namespace Event + { + struct CoreExport PreNickExpire : Events + { + /** Called before a nick expires + * @param na The nick + * @param expire Set to true to allow the nick to expire + */ + virtual void OnPreNickExpire(NickAlias *na, bool &expire) anope_abstract; + }; + static EventHandlersReference<PreNickExpire> OnPreNickExpire("OnPreNickExpire"); + + struct CoreExport NickExpire : Events + { + /** Called when a nick drops + * @param na The nick + */ + virtual void OnNickExpire(NickAlias *na) anope_abstract; + }; + static EventHandlersReference<NickExpire> OnNickExpire("OnNickExpire"); + + struct CoreExport NickRegister : Events + { + /** Called when a nick is registered + * @param user The user registering the nick, of any + * @param The nick + */ + virtual void OnNickRegister(User *user, NickAlias *na) anope_abstract; + }; + static EventHandlersReference<NickRegister> OnNickRegister("OnNickRegister"); + + struct CoreExport NickValidate : Events + { + /** Called when a nick is validated. That is, to determine if a user is permissted + * to be on the given nick. + * @param u The user + * @param na The nick they are on + * @return EVENT_STOP to force the user off of the nick + */ + virtual EventReturn OnNickValidate(User *u, NickAlias *na) anope_abstract; + }; + static EventHandlersReference<NickValidate> OnNickValidate("OnNickValidate"); + } +} diff --git a/include/modules/ns_cert.h b/include/modules/ns_cert.h index e02b9bd6e..b0614b2e6 100644 --- a/include/modules/ns_cert.h +++ b/include/modules/ns_cert.h @@ -69,3 +69,26 @@ class CertService : public Service virtual NickCore* FindAccountFromCert(const Anope::string &cert) = 0; }; +namespace Event +{ + struct CoreExport NickCertEvents : Events + { + /** Called when a user adds an entry to their cert list + * @param nc The nick + * @param entry The entry + */ + virtual void OnNickAddCert(NickCore *nc, const Anope::string &entry) anope_abstract; + + /** Called from NickCore::EraseCert() + * @param nc pointer to the NickCore + * @param entry The fingerprint + */ + virtual void OnNickEraseCert(NickCore *nc, const Anope::string &entry) anope_abstract; + + /** called from NickCore::ClearCert() + * @param nc pointer to the NickCore + */ + virtual void OnNickClearCert(NickCore *nc) anope_abstract; + }; +} + diff --git a/include/modules/ns_drop.h b/include/modules/ns_drop.h new file mode 100644 index 000000000..2aef2b965 --- /dev/null +++ b/include/modules/ns_drop.h @@ -0,0 +1,21 @@ +/* + * + * (C) 2003-2014 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + */ + +namespace Event +{ + struct CoreExport NickDrop : Events + { + /** Called when a nick is dropped + * @param source The source of the command + * @param na The nick + */ + virtual void OnNickDrop(CommandSource &source, NickAlias *na) anope_abstract; + }; + extern CoreExport EventHandlers<NickDrop> OnNickDrop; +} + diff --git a/include/modules/ns_group.h b/include/modules/ns_group.h new file mode 100644 index 000000000..8b3fa49f9 --- /dev/null +++ b/include/modules/ns_group.h @@ -0,0 +1,20 @@ +/* + * + * (C) 2003-2014 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + * + */ + +namespace Event +{ + struct CoreExport NickGroup : Events + { + /** Called when a user groups their nick + * @param u The user grouping + * @param target The target they're grouping to + */ + virtual void OnNickGroup(User *u, NickAlias *target) anope_abstract; + }; +} diff --git a/include/modules/ns_info.h b/include/modules/ns_info.h new file mode 100644 index 000000000..8fae2b536 --- /dev/null +++ b/include/modules/ns_info.h @@ -0,0 +1,22 @@ +/* + * + * (C) 2003-2014 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + * + */ + +namespace Event +{ + struct CoreExport NickInfo : Events + { + /** Called when a user requests info for a nick + * @param source The user requesting info + * @param na The nick the user is requesting info from + * @param info Data to show the user requesting information + * @param show_hidden true if we should show the user everything + */ + virtual void OnNickInfo(CommandSource &source, NickAlias *na, InfoFormatter &info, bool show_hidden) anope_abstract; + }; +} diff --git a/include/modules/ns_set.h b/include/modules/ns_set.h new file mode 100644 index 000000000..a45fa0b5e --- /dev/null +++ b/include/modules/ns_set.h @@ -0,0 +1,24 @@ +/* + * + * (C) 2014 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + * + */ + +namespace Event +{ + struct CoreExport SetNickOption : Events + { + /** Called when a nickserv/set command is used. + * @param source The source of the command + * @param cmd The command + * @param nc The nickcore being modifed + * @param setting The setting passed to the command. Probably ON/OFF. + * @return EVENT_STOP to halt immediately + */ + virtual EventReturn OnSetNickOption(CommandSource &source, Command *cmd, NickCore *nc, const Anope::string &setting) anope_abstract; + }; + static EventHandlersReference<SetNickOption> OnSetNickOption("OnSetNickOption"); +} diff --git a/include/modules/ns_update.h b/include/modules/ns_update.h new file mode 100644 index 000000000..d5d01320a --- /dev/null +++ b/include/modules/ns_update.h @@ -0,0 +1,20 @@ +/* + * + * (C) 2014 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + * + */ + +namespace Event +{ + struct CoreExport NickUpdate : Events + { + /** Called when a user does /ns update + * @param u The user + */ + virtual void OnNickUpdate(User *u) anope_abstract; + }; +} + diff --git a/include/modules/os_defcon.h b/include/modules/os_defcon.h new file mode 100644 index 000000000..81b220eb3 --- /dev/null +++ b/include/modules/os_defcon.h @@ -0,0 +1,20 @@ +/* + * + * (C) 2014 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + * + */ + +namespace Event +{ + struct CoreExport DefconLevel : Events + { + /** Called when defcon level changes + * @param level The level + */ + virtual void OnDefconLevel(int level) anope_abstract; + }; +} + diff --git a/include/modules/os_session.h b/include/modules/os_session.h index ac6bf9395..91548a5c2 100644 --- a/include/modules/os_session.h +++ b/include/modules/os_session.h @@ -51,6 +51,24 @@ class SessionService : public Service static ServiceReference<SessionService> session_service("SessionService", "session"); +namespace Event +{ + struct CoreExport Exception : Events + { + /** Called after an exception has been added + * @param ex The exception + * @return EVENT_CONTINUE to let other modules decide, EVENT_STOP to halt the command and not process it + */ + virtual EventReturn OnExceptionAdd(::Exception *ex) anope_abstract; + + /** Called before an exception is deleted + * @param source The source deleting it + * @param ex The exceotion + */ + virtual void OnExceptionDel(CommandSource &source, ::Exception *ex) anope_abstract; + }; +} + void Exception::Serialize(Serialize::Data &data) const { data["mask"] << this->mask; diff --git a/include/modules/pseudoclients/chanserv.h b/include/modules/pseudoclients/chanserv.h deleted file mode 100644 index e1c3849fd..000000000 --- a/include/modules/pseudoclients/chanserv.h +++ /dev/null @@ -1,18 +0,0 @@ -#ifndef CHANSERV_H -#define CHANSERV_H - -class ChanServService : public Service -{ - public: - ChanServService(Module *m) : Service(m, "ChanServService", "ChanServ") - { - } - - /* Have ChanServ hold the channel, that is, join and set +nsti and wait - * for a few minutes so no one can join or rejoin. - */ - virtual void Hold(Channel *c) = 0; -}; - -#endif // CHANSERV_H - diff --git a/include/modules/pseudoclients/global.h b/include/modules/pseudoclients/global.h deleted file mode 100644 index 1511214c9..000000000 --- a/include/modules/pseudoclients/global.h +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef GLOBAL_H -#define GLOBAL_H - -class GlobalService : public Service -{ - public: - GlobalService(Module *m) : Service(m, "GlobalService", "Global") - { - } - - /** Send out a global message to all users - * @param sender Our client which should send the global - * @param source The sender of the global - * @param message The message - */ - virtual void SendGlobal(BotInfo *sender, const Anope::string &source, const Anope::string &message) = 0; -}; - -#endif // GLOBAL_H - diff --git a/include/modules/pseudoclients/memoserv.h b/include/modules/pseudoclients/memoserv.h deleted file mode 100644 index d35d3f8a0..000000000 --- a/include/modules/pseudoclients/memoserv.h +++ /dev/null @@ -1,34 +0,0 @@ -#ifndef MEMOSERV_H -#define MEMOSERV_H - -class MemoServService : public Service -{ - public: - enum MemoResult - { - MEMO_SUCCESS, - MEMO_INVALID_TARGET, - MEMO_TOO_FAST, - MEMO_TARGET_FULL - }; - - MemoServService(Module *m) : Service(m, "MemoServService", "MemoServ") - { - } - - /** Sends a memo. - * @param source The source of the memo, can be anythin. - * @param target The target of the memo, nick or channel. - * @param message Memo text - * @param force true to force the memo, restrictions/delays etc are not checked - */ - virtual MemoResult Send(const Anope::string &source, const Anope::string &target, const Anope::string &message, bool force = false) = 0; - - /** Check for new memos and notify the user if there are any - * @param u The user - */ - virtual void Check(User *u) = 0; -}; - -#endif // MEMOSERV_H - diff --git a/include/modules/pseudoclients/nickserv.h b/include/modules/pseudoclients/nickserv.h deleted file mode 100644 index c0238ecfc..000000000 --- a/include/modules/pseudoclients/nickserv.h +++ /dev/null @@ -1,17 +0,0 @@ -#ifndef NICKSERV_H -#define NICKSERV_H - -class NickServService : public Service -{ - public: - NickServService(Module *m) : Service(m, "NickServService", "NickServ") - { - } - - virtual void Validate(User *u) = 0; - virtual void Collide(User *u, NickAlias *na) = 0; - virtual void Release(NickAlias *na) = 0; -}; - -#endif // NICKSERV_H - diff --git a/include/modules/suspend.h b/include/modules/suspend.h index 1e49b8ad8..bd4eacd3b 100644 --- a/include/modules/suspend.h +++ b/include/modules/suspend.h @@ -1,11 +1,9 @@ /* - * (C) 2003-2014 Anope Team + * (C) 2014 Anope Team * Contact us at team@anope.org * * Please read COPYING and README for further details. * - * Based on the original code of Epona by Lara. - * Based on the original code of Services by Andy Church. */ struct SuspendInfo @@ -16,3 +14,39 @@ struct SuspendInfo SuspendInfo() { } virtual ~SuspendInfo() { } }; + +namespace Event +{ + struct CoreExport ChanSuspend : Events + { + /** Called when a channel is suspended + * @param ci The channel + */ + virtual void OnChanSuspend(ChannelInfo *ci) anope_abstract; + }; + struct CoreExport ChanUnsuspend : Events + { + /** Called when a channel is unsuspended + * @param ci The channel + */ + virtual void OnChanUnsuspend(ChannelInfo *ci) anope_abstract; + }; + extern CoreExport EventHandlers<ChanUnsuspend> OnChanUnsuspend; + + struct CoreExport NickSuspend : Events + { + /** Called when a nick is suspended + * @param na The nick alias + */ + virtual void OnNickSuspend(NickAlias *na) anope_abstract; + }; + + struct CoreExport NickUnsuspended : Events + { + /** Called when a nick is unsuspneded + * @param na The nick alias + */ + virtual void OnNickUnsuspended(NickAlias *na) anope_abstract; + }; +} + |
