aboutsummaryrefslogtreecommitdiff
path: root/include/modules/invite.h
diff options
context:
space:
mode:
authorGravatar Sadie Powell2022-04-16 16:16:29 +0100
committerGravatar Sadie Powell2022-04-16 16:16:29 +0100
commit30edd1070df3ddb2ae64b61b65c25f88a0b61e49 (patch)
tree85b33545d32405f7d531bfac2d0b991a6eba3e70 /include/modules/invite.h
parentFix the command used to retrieve the number of cores on Alpine. (diff)
parentBump peter-evans/create-pull-request from 3 to 4 (diff)
Merge branch 'insp3' into master.
Diffstat (limited to 'include/modules/invite.h')
-rw-r--r--include/modules/invite.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/include/modules/invite.h b/include/modules/invite.h
index 9cd3862c7..dc097ea2d 100644
--- a/include/modules/invite.h
+++ b/include/modules/invite.h
@@ -26,6 +26,23 @@ namespace Invite
class API;
class Invite;
+
+ /** Used to indicate who we announce invites to on a channel. */
+ enum AnnounceState
+ {
+ /** Don't send invite announcements. */
+ ANNOUNCE_NONE,
+
+ /** Send invite announcements to all users. */
+ ANNOUNCE_ALL,
+
+ /** Send invite announcements to channel operators and higher. */
+ ANNOUNCE_OPS,
+
+ /** Send invite announcements to channel half-operators (if available) and higher. */
+ ANNOUNCE_DYNAMIC
+ };
+
typedef insp::intrusive_list<Invite, LocalUser> List;
}
@@ -52,6 +69,9 @@ public:
*/
virtual Invite* Find(LocalUser* user, Channel* chan) = 0;
+ /** Returns the announcement behaviour for invites from <security:announceinvites>. */
+ virtual AnnounceState GetAnnounceState() const = 0;
+
/** Returns the list of channels a user has been invited to but has not yet joined.
* @param user User whose invite list to retrieve
* @return List of channels the user is invited to or NULL if the list is empty