Permalink
Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
46 lines (36 sloc) 1.1 KB
# /FIND - display people who are in more than one channel with you
# (it's ugly code)
use strict;
use Irssi;
use vars qw($VERSION %IRSSI);
$VERSION = "0.2";
%IRSSI = (
authors => "Erkki Seppälä",
contact => "flux\@inside.org",
name => "Find",
description => "Finds a nick by real name, if he's on a channel with you.",
license => "Public Domain",
url => "http://xulfad.inside.org/~flux/software/irssi/",
changed => "Mon Mar 4 23:25:18 EET 2002"
);
sub cmd_find {
my ($findName, $server, $channel) = @_;
if ($findName eq "") {
Irssi::print("usage: /find erkki");
return 1;
}
my %channicks, $channel;
my %found;
foreach $channel (Irssi::active_server()->channels()) {
foreach my $nick ($channel->nicks()) {
$found{$nick->{nick}} = 1 if $nick->{realname} =~ /$findName/i;
}
}
if (keys %found) {
Irssi::print($findName . " could be found with these nicks: " . join(", ", keys %found));
} else {
Irssi::print("Sorry, " . $findName . " could not be found.");
}
return 1;
}
Irssi::command_bind('find', 'cmd_find');