diff options
author | Peter Powell <petpow@saberuk.com> | 2017-10-21 16:34:48 +0100 |
---|---|---|
committer | Peter Powell <petpow@saberuk.com> | 2017-10-21 16:34:48 +0100 |
commit | dcd3438011d59aa4de4df64abf06bca1cbf36859 (patch) | |
tree | 86d9da14ef7258831b25d8aac70383d2964d3a9f /include/modules | |
parent | 9f7c187c518466114cb3e3b51979d2c63c2ce7a0 (diff) |
Add a helper function for calling the OnCheckExemption event.
Diffstat (limited to 'include/modules')
-rw-r--r-- | include/modules/exemption.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/include/modules/exemption.h b/include/modules/exemption.h index 2f4ee02fc..b590a5797 100644 --- a/include/modules/exemption.h +++ b/include/modules/exemption.h @@ -25,6 +25,16 @@ namespace CheckExemption { class EventListener; class EventProvider; + + /** Helper function for calling the CheckExemption::EventListener::OnCheckExemption event. + * @param prov The CheckExemption::EventProvider which is calling the event. + * @param user The user to check exemption for. + * @param chan The channel to check exemption on. + * @param restriction The restriction to check for. + * @return Either MOD_RES_ALLOW if the exemption was confirmed, MOD_RES_DENY if the exemption was + * denied or MOD_RES_PASSTHRU if no module handled the event. + */ + inline ModResult Call(const CheckExemption::EventProvider& prov, User* user, Channel* chan, const std::string& restriction); } class CheckExemption::EventListener @@ -56,3 +66,10 @@ class CheckExemption::EventProvider { } }; + +inline ModResult CheckExemption::Call(const CheckExemption::EventProvider& prov, User* user, Channel* chan, const std::string& restriction) +{ + ModResult result; + FIRST_MOD_RESULT_CUSTOM(prov, CheckExemption::EventListener, OnCheckExemption, result, (user, chan, restriction)); + return result; +} |