]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/channels.cpp
Convert WriteNumeric() calls to pass the parameters of the numeric as method parameters
[user/henk/code/inspircd.git] / src / channels.cpp
index da5f4fd7520cefc236b5d8991e4958a5c4d03bbc..a2d5c4a30f1831c8a72fcc63ff83c51c78ce330e 100644 (file)
@@ -180,7 +180,7 @@ Channel* Channel::JoinUser(LocalUser* user, std::string cname, bool override, co
                }
                if (user->chans.size() >= maxchans)
                {
-                       user->WriteNumeric(ERR_TOOMANYCHANNELS, "%s :You are on too many channels", cname.c_str());
+                       user->WriteNumeric(ERR_TOOMANYCHANNELS, cname, "You are on too many channels");
                        return NULL;
                }
        }
@@ -240,7 +240,7 @@ Channel* Channel::JoinUser(LocalUser* user, std::string cname, bool override, co
                                        if (!MOD_RESULT.check(InspIRCd::TimingSafeCompare(ckey, key)))
                                        {
                                                // If no key provided, or key is not the right one, and can't bypass +k (not invited or option not enabled)
-                                               user->WriteNumeric(ERR_BADCHANNELKEY, "%s :Cannot join channel (Incorrect channel key)", chan->name.c_str());
+                                               user->WriteNumeric(ERR_BADCHANNELKEY, chan->name, "Cannot join channel (Incorrect channel key)");
                                                return NULL;
                                        }
                                }
@@ -250,7 +250,7 @@ Channel* Channel::JoinUser(LocalUser* user, std::string cname, bool override, co
                                        FIRST_MOD_RESULT(OnCheckInvite, MOD_RESULT, (user, chan));
                                        if (MOD_RESULT != MOD_RES_ALLOW)
                                        {
-                                               user->WriteNumeric(ERR_INVITEONLYCHAN, "%s :Cannot join channel (Invite only)", chan->name.c_str());
+                                               user->WriteNumeric(ERR_INVITEONLYCHAN, chan->name, "Cannot join channel (Invite only)");
                                                return NULL;
                                        }
                                }
@@ -261,14 +261,14 @@ Channel* Channel::JoinUser(LocalUser* user, std::string cname, bool override, co
                                        FIRST_MOD_RESULT(OnCheckLimit, MOD_RESULT, (user, chan));
                                        if (!MOD_RESULT.check((chan->GetUserCounter() < atol(limit.c_str()))))
                                        {
-                                               user->WriteNumeric(ERR_CHANNELISFULL, "%s :Cannot join channel (Channel is full)", chan->name.c_str());
+                                               user->WriteNumeric(ERR_CHANNELISFULL, chan->name, "Cannot join channel (Channel is full)");
                                                return NULL;
                                        }
                                }
 
                                if (chan->IsBanned(user))
                                {
-                                       user->WriteNumeric(ERR_BANNEDFROMCHAN, "%s :Cannot join channel (You're banned)", chan->name.c_str());
+                                       user->WriteNumeric(ERR_BANNEDFROMCHAN, chan->name, "Cannot join channel (You're banned)");
                                        return NULL;
                                }
                        }
@@ -405,12 +405,12 @@ ModResult Channel::GetExtBanStatus(User *user, char type)
  * Remove a channel from a users record, remove the reference to the Membership object
  * from the channel and destroy it.
  */
-void Channel::PartUser(User *user, std::string &reason)
+bool Channel::PartUser(User* user, std::string& reason)
 {
        MemberMap::iterator membiter = userlist.find(user);
 
        if (membiter == userlist.end())
-               return;
+               return false;
 
        Membership* memb = membiter->second;
        CUList except_list;
@@ -422,6 +422,8 @@ void Channel::PartUser(User *user, std::string &reason)
        user->chans.erase(memb);
        // Remove the Membership from this channel's userlist and destroy it
        this->DelUser(membiter);
+
+       return true;
 }
 
 void Channel::KickUser(User* src, const MemberMap::iterator& victimiter, const std::string& reason)