]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/users.h
Merge pull request #244 from SaberUK/insp20-configure-fix
[user/henk/code/inspircd.git] / include / users.h
index 56297bed86d8e5146475b64d3872ea0ba93d875f..6852b3fb92f9b0f3929968025688e9215b178dbd 100644 (file)
@@ -29,6 +29,7 @@
 #include "inspsocket.h"
 #include "dns.h"
 #include "mode.h"
+#include "membership.h"
 
 /** connect class types
  */
@@ -735,14 +736,8 @@ class CoreExport UserIOHandler : public StreamSocket
 
 typedef unsigned int already_sent_t;
 
-class CoreExport LocalUser : public User
+class CoreExport LocalUser : public User, public InviteBase
 {
-       /** A list of channels the user has a pending invite to.
-        * Upon INVITE channels are added, and upon JOIN, the
-        * channels are removed from this list.
-        */
-       InvitedList invites;
-
  public:
        LocalUser(int fd, irc::sockets::sockaddrs* client, irc::sockets::sockaddrs* server);
        CullResult cull();
@@ -830,7 +825,7 @@ class CoreExport LocalUser : public User
        /** Returns the list of channels this user has been invited to but has not yet joined.
         * @return A list of channels the user is invited to
         */
-       InvitedList* GetInviteList();
+       InviteList& GetInviteList();
 
        /** Returns true if a user is invited to a channel.
         * @param channel A channel name to look up
@@ -851,6 +846,8 @@ class CoreExport LocalUser : public User
         */
        void RemoveInvite(const irc::string &channel);
 
+       void RemoveExpiredInvites();
+
        /** Returns true or false for if a user can execute a privilaged oper command.
         * This is done by looking up their oper type from User::oper, then referencing
         * this to their oper classes and checking the commands they can execute.