Send helpserv notifications only to one helper client; preferably the one in the...
authorThiefMaster <thiefmaster@gamesurge.net>
Fri, 8 Jan 2010 21:08:50 +0000 (22:08 +0100)
committerMichael Poole <mdpoole@troilus.org>
Mon, 15 Feb 2010 20:58:21 +0000 (15:58 -0500)
src/mod-helpserv.c

index ed4db97e79e1e7a2cc1e457dbe9cb02379e738ea..0219e7fc83153712914665e84de3318bc4759043 100644 (file)
@@ -630,7 +630,10 @@ static HELPSERV_FUNC(cmd_help);
 /* For messages going to helpers */
 # define helpserv_notice(target, ARGS...) send_message((target), (from_opserv ? opserv : hs->helpserv), ARGS)
 # define helpserv_notify(helper, ARGS...) do { struct userNode *_target; for (_target = (helper)->handle->users; _target; _target = _target->next_authed) { \
-        send_message(_target, (helper)->hs->helpserv, ARGS); \
+        if(!_target->next_authed || GetUserMode(helper->hs->helpchan, _target)) {\
+          send_message(_target, (helper)->hs->helpserv, ARGS); \
+          break; \
+        } \
     } } while (0)
 # define helpserv_page(TYPE, ARGS...) do { \
     int msg_type=0; struct chanNode *target=helpserv_get_page_type(hs, (TYPE), &msg_type); \
@@ -642,7 +645,10 @@ static HELPSERV_FUNC(cmd_help);
 /* For messages going to helpers */
 # define helpserv_notice(target, ...) send_message((target), (from_opserv ? opserv : hs->helpserv), __VA_ARGS__)
 # define helpserv_notify(helper, ...) do { struct userNode *_target; for (_target = (helper)->handle->users; _target; _target = _target->next_authed) { \
-        send_message(_target, (helper)->hs->helpserv, __VA_ARGS__); \
+        if(!_target->next_authed || GetUserMode(helper->hs->helpchan, _target)) {\
+          send_message(_target, (helper)->hs->helpserv, __VA_ARGS__); \
+          break; \
+        } \
     } } while (0)
 # define helpserv_page(TYPE, ...) do { \
     int msg_type=0; struct chanNode *target=helpserv_get_page_type(hs, (TYPE), &msg_type); \