From df94bc00d5b7ba66b2ff82f1be4132f20bcc44a8 Mon Sep 17 00:00:00 2001 From: pk910 Date: Thu, 7 Jul 2011 21:57:24 +0200 Subject: [PATCH] cmd_invitemeall added --- src/chanserv.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/src/chanserv.c b/src/chanserv.c index e968d63..065f459 100644 --- a/src/chanserv.c +++ b/src/chanserv.c @@ -4512,6 +4512,28 @@ static CHANSERV_FUNC(cmd_inviteme) return 1; } +static CHANSERV_FUNC(cmd_invitemeall) +{ + struct handle_info *target = user->handle_info; + struct userData *uData; + + if(!target->channels) + { + reply("CSMSG_SQUAT_ACCESS", target->handle); + return 1; + } + + for(uData = target->channels; uData; uData = uData->u_next) + { + struct chanData *cData = uData->channel; + if(uData->access >= cData->lvlOpts[lvlInviteMe]) + { + irc_invite(cmd->parent->bot, user, cData->channel); + } + } + return 1; +} + static void show_suspension_info(struct svccmd *cmd, struct userNode *user, struct suspended *suspended) { @@ -8529,6 +8551,7 @@ init_chanserv(const char *nick) DEFINE_COMMAND(topic, 1, MODCMD_REQUIRE_REGCHAN, "template", "op", "flags", "+never_csuspend", NULL); DEFINE_COMMAND(mode, 1, MODCMD_REQUIRE_REGCHAN, "template", "op", NULL); DEFINE_COMMAND(inviteme, 1, MODCMD_REQUIRE_CHANNEL, "access", "1", NULL); + DEFINE_COMMAND(invitemeall, 1, MODCMD_REQUIRE_AUTHED, NULL); DEFINE_COMMAND(invite, 1, MODCMD_REQUIRE_CHANNEL, "access", "master", NULL); DEFINE_COMMAND(set, 1, MODCMD_REQUIRE_CHANUSER, "access", "op", NULL); DEFINE_COMMAND(wipeinfo, 2, MODCMD_REQUIRE_CHANUSER, "access", "master", NULL); -- 2.20.1