]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/channels.h
Remove ProtocolInterface::PushToClient()
[user/henk/code/inspircd.git] / include / channels.h
index 4d1d14c13ea5819a96e34fdb021b371442688cff..0a131ddb35eca048542de758537c2a835819bbdb 100644 (file)
@@ -34,7 +34,7 @@
  * This class represents a channel, and contains its name, modes, topic, topic set time,
  * etc, and an instance of the BanList type.
  */
-class CoreExport Channel : public Extensible, public InviteBase<Channel>
+class CoreExport Channel : public Extensible
 {
  public:
        /** A map of Memberships on a channel keyed by User pointers
@@ -205,8 +205,9 @@ class CoreExport Channel : public Extensible, public InviteBase<Channel>
         * If the reason field is NULL, no reason will be sent.
         * @param user The user who is parting (must be on this channel)
         * @param reason The part reason
+        * @return True if the user was on the channel and left, false if they weren't and nothing happened
         */
-       void PartUser(User *user, std::string &reason);
+       bool PartUser(User* user, std::string& reason);
 
        /** Join a local user to a channel, with or without permission checks. May be a channel that doesn't exist yet.
         * @param user The user to join to the channel.
@@ -331,6 +332,11 @@ class CoreExport Channel : public Extensible, public InviteBase<Channel>
        /** Get the status of an "action" type extban
         */
        ModResult GetExtBanStatus(User *u, char type);
+
+       /** Write a NOTICE to all local users on the channel
+        * @param text Text to send
+        */
+       void WriteNotice(const std::string& text);
 };
 
 inline bool Channel::HasUser(User* user)