#!/usr/pkg/bin/perl

use Net::IRC;
$|++;

my $chan	= '#longturn';
my $nick	= 'ltex';
my $irc		= new Net::IRC;
my $ok		= 0;
my $conn	= $irc->newconn(
	Server		=> 'irc.freenode.net',
	Port		=> '6667',
	Nick		=> $nick,
	Ircname		=> 'longturn.org ltex bot',
	Username	=> 'ltex bot',
);
open(my $in, ">&STDIN");

$conn->add_handler('376', \&on_connect);
$conn->add_handler('join', \&on_join);
$conn->add_handler('public', \&on_public);
$irc->addfh(\*STDIN, \&on_stdin);

print "irc module started\n";
while (1) {
	$irc->do_one_loop();
}

sub on_connect {
	my $conn = shift;
	$conn->join($chan);
}

sub on_join {
	my ($conn, $event) = @_;
	$ok = 1 if $nick eq $event->{nick};
}

sub on_public {
	my ($conn, $event) = @_;
	my $msg		= $event->{args}[0];
	my $chan	= $event->{to}[0];
	my $who		= $event->{nick};
	if ($msg =~ /^$nick:/) {
		#$conn->privmsg($chan, "$who: ");
	}
}

sub on_stdin {
	return if !$ok;
	my $in = <STDIN>;
	chomp $in;
	$conn->privmsg($chan, "> $in");
}
