aboutsummaryrefslogtreecommitdiffstats
path: root/root_commands.c
diff options
context:
space:
mode:
authorWilmer van der Gaast <wilmer@gaast.net>2013-02-10 12:48:32 +0000
committerWilmer van der Gaast <wilmer@gaast.net>2013-02-10 12:48:32 +0000
commite4f5ca868fc4313a6a9a00c5eda0a03767abc703 (patch)
tree990e1ec4fc29662e1966ccef09447dd625712b8b /root_commands.c
parentbe98957a88f66215ab6fb84810a1b2d394eac879 (diff)
parent875ba16b0224b9bf50a0ea15aa96fe545c76b845 (diff)
Merge from vmiklos. Adds a "group info" command to list members of a group.
Diffstat (limited to 'root_commands.c')
-rw-r--r--root_commands.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/root_commands.c b/root_commands.c
index d4adfa81..6188245d 100644
--- a/root_commands.c
+++ b/root_commands.c
@@ -1290,6 +1290,29 @@ static void cmd_group( irc_t *irc, char **cmd )
}
irc_rootmsg( irc, "End of group list" );
}
+ else if( g_strncasecmp(cmd[1], "info", len ) == 0 )
+ {
+ bee_group_t *bg;
+ int n = 0;
+
+ MIN_ARGS(2);
+ bg = bee_group_by_name( irc->b, cmd[2], FALSE );
+
+ if( bg )
+ {
+ if( strchr(irc->umode, 'b') )
+ irc_rootmsg( irc, "Members of %s:", cmd[2] );
+ for( l = irc->b->users; l; l = l->next )
+ {
+ bee_user_t *bu = l->data;
+ if( bu->group == bg )
+ irc_rootmsg( irc, "%d. %s", n ++, bu->nick ? : bu->handle );
+ }
+ irc_rootmsg( irc, "End of member list" );
+ }
+ else
+ irc_rootmsg( irc, "Unknown group: %s. Please use \x02group list\x02 to get a list of available groups.", cmd[2] );
+ }
else
{
irc_rootmsg( irc, "Unknown command: %s %s. Please use \x02help commands\x02 to get a list of available commands.", "group", cmd[1] );