diff options
Diffstat (limited to 'scripts/ircops.pl')
| -rw-r--r-- | scripts/ircops.pl | 44 | 
1 files changed, 44 insertions, 0 deletions
| diff --git a/scripts/ircops.pl b/scripts/ircops.pl new file mode 100644 index 0000000..96e25be --- /dev/null +++ b/scripts/ircops.pl @@ -0,0 +1,44 @@ +use Irssi; +use strict; + +use vars qw($VERSION %IRSSI); + +$VERSION = "0.1"; +%IRSSI = ( +    authors     => 'BC-bd', +    contact     => 'bd@bc-bd.org', +    name        => 'ircops', +    description => '/IRCOPS - Display IrcOps in current channel', +    license     => 'GPL v2', +    url         => 'https://bc-bd.org/svn/repos/irssi/trunk/', +); + +sub cmd_ircops { +	my ($data, $server, $channel) = @_; + +	my (@list,$text,$num); + +	if (!$channel || $channel->{type} ne 'CHANNEL') { +		Irssi::print('No active channel in window'); +		return; +	} + +	foreach my $nick ($channel->nicks()) { +		if ($nick->{serverop}) { +			push(@list,$nick->{nick}); +		} +	} + +	$num = scalar @list; + +	if ($num == 0) { +		$text = "no IrcOps on this channel"; +	} else { +		$text = "IrcOps (".$num."): ".join(" ",@list); +	} + +	$channel->print($text); +} + +Irssi::command_bind('ircops', 'cmd_ircops'); + | 
