1
0
mirror of https://github.com/anope/anope.git synced 2026-07-10 21:03:13 +02:00

Allow userless command sources

This commit is contained in:
Adam
2012-06-18 05:04:30 -04:00
parent 873d4287de
commit 2dec8e767a
153 changed files with 1029 additions and 1060 deletions
+6 -6
View File
@@ -29,7 +29,7 @@ class CommandCSKick : public Command
const Anope::string &target = params[1];
const Anope::string &reason = params.size() > 2 ? params[2] : "Requested";
User *u = source.u;
User *u = source.GetUser();
ChannelInfo *ci = cs_findchan(params[0]);
Channel *c = findchan(params[0]);
User *u2 = finduser(target);
@@ -45,7 +45,7 @@ class CommandCSKick : public Command
return;
}
AccessGroup u_access = ci->AccessFor(u);
AccessGroup u_access = source.AccessFor(ci);
if (!u_access.HasPriv("KICK"))
source.Reply(ACCESS_DENIED);
@@ -61,17 +61,17 @@ class CommandCSKick : public Command
else
{
// XXX
Log(LOG_COMMAND, u, this, ci) << "for " << u2->nick;
Log(LOG_COMMAND, source, this, ci) << "for " << u2->nick;
if (ci->HasFlag(CI_SIGNKICK) || (ci->HasFlag(CI_SIGNKICK_LEVEL) && !u_access.HasPriv("SIGNKICK")))
c->Kick(ci->WhoSends(), u2, "%s (%s)", reason.c_str(), u->nick.c_str());
c->Kick(ci->WhoSends(), u2, "%s (%s)", reason.c_str(), source.GetNick().c_str());
else
c->Kick(ci->WhoSends(), u2, "%s", reason.c_str());
}
}
else if (u_access.HasPriv("FOUNDER"))
{
Log(LOG_COMMAND, u, this, ci) << "for " << target;
Log(LOG_COMMAND, source, this, ci) << "for " << target;
int matched = 0, kicked = 0;
for (CUserList::iterator it = c->users.begin(), it_end = c->users.end(); it != it_end;)
@@ -90,7 +90,7 @@ class CommandCSKick : public Command
++kicked;
if (ci->HasFlag(CI_SIGNKICK) || (ci->HasFlag(CI_SIGNKICK_LEVEL) && !u_access.HasPriv("SIGNKICK")))
c->Kick(ci->WhoSends(), uc->user, "%s (Matches %s) (%s)", reason.c_str(), target.c_str(), u->nick.c_str());
c->Kick(ci->WhoSends(), uc->user, "%s (Matches %s) (%s)", reason.c_str(), target.c_str(), source.GetNick().c_str());
else
c->Kick(ci->WhoSends(), uc->user, "%s (Matches %s)", reason.c_str(), target.c_str());
}