giveownership fix; handle_join +ov "fix"; revert OSMSG_FLOOD_MODERATE
authorEntrope <entrope@clan-dk.org>
Mon, 1 Mar 2004 16:23:51 +0000 (16:23 +0000)
committerEntrope <entrope@clan-dk.org>
Mon, 1 Mar 2004 16:23:51 +0000 (16:23 +0000)
* Fix !giveownership by staff.

* If ChanServ gives ops to someone onjoin, do not also give them voice.

* Translate OSMSG_FLOOD_MODERATE according to the channel options
(well, hopefully in the future we will support that) rather than the
join-flooding user's options.
git-archimport-id: srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-19

src/chanserv.c
src/opserv.c

index 36871b4450c3670d449521599f4cc7df46892c3c..a2e6dd12a38de3b11449ea569c58ded4eb162016 100644 (file)
@@ -5301,6 +5301,7 @@ static CHANSERV_FUNC(cmd_giveownership)
             }
             owner = curr_user;
         }
+        curr_user = owner;
     }
     if(!(new_owner_hi = modcmd_get_handle_info(user, argv[1])))
         return 0;
@@ -5795,6 +5796,8 @@ handle_join(struct modeNode *mNode)
     {
         if(modes)
         {
+            if(modes & MODE_CHANOP)
+                modes &= ~MODE_VOICE;
             change.args[0].mode = modes;
             change.args[0].member = mNode;
             mod_chanmode_announce(chanserv, channel, &change);
index 80db462f8f29450e134320fcc1921dad45543d43..0fb5fd25c6cb53a1ae514d14fbc6a58001a55b7a 100644 (file)
@@ -1875,7 +1875,7 @@ opserv_join_check(struct modeNode *mNode)
                 change.modes_set |= MODE_MODERATED;
             if (change.modes_set || change.argc)
                 mod_chanmode_announce(opserv, channel, &change);
-            send_channel_notice(channel, opserv, user_find_message(user, "OSMSG_FLOOD_MODERATE")); 
+            send_target_message(0, channel->name, opserv, "OSMSG_FLOOD_MODERATE");
             opserv_alert("Warning: Possible join flood in %s (currently %d users; channel moderated).", channel->name, channel->members.used);
         } else {
             opserv_alert("Warning: Possible join flood in %s (currently %d users).", channel->name, channel->members.used);