diff options
| author | Wilmer van der Gaast <wilmer@gaast.net> | 2013-02-10 12:48:32 +0000 | 
|---|---|---|
| committer | Wilmer van der Gaast <wilmer@gaast.net> | 2013-02-10 12:48:32 +0000 | 
| commit | e4f5ca868fc4313a6a9a00c5eda0a03767abc703 (patch) | |
| tree | 990e1ec4fc29662e1966ccef09447dd625712b8b /root_commands.c | |
| parent | be98957a88f66215ab6fb84810a1b2d394eac879 (diff) | |
| parent | 875ba16b0224b9bf50a0ea15aa96fe545c76b845 (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.c | 23 | 
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] ); | 
