diff options
| author | Alexander Færøy | 2014-05-31 13:10:46 +0200 | 
|---|---|---|
| committer | Alexander Færøy | 2014-05-31 13:10:46 +0200 | 
| commit | 2d0759e6ca5767b48bcc85bf38c2c43d5f0b63b1 (patch) | |
| tree | 1c5e6d817c88e67b46e216a50e0aef5428bf63df /scripts/licq.pl | |
| parent | 2d080422d79d1fd49d6c5528593ccaaff9bfc583 (diff) | |
| download | scripts.irssi.org-2d0759e6ca5767b48bcc85bf38c2c43d5f0b63b1.tar.bz2 | |
Import scripts from scripts.irssi.org
Diffstat (limited to 'scripts/licq.pl')
| -rw-r--r-- | scripts/licq.pl | 63 | 
1 files changed, 63 insertions, 0 deletions
| diff --git a/scripts/licq.pl b/scripts/licq.pl new file mode 100644 index 0000000..cc7b1ec --- /dev/null +++ b/scripts/licq.pl @@ -0,0 +1,63 @@ +$VERSION = "0.5"; +%IRSSI = ( +    authors     => "Jari Matilainen", +    contact     => "jmn98015\@student.mdh.se", +    name        => "licq", +    description => "Licq statusbar thingy", +    license     => "Public Domain", +    url         => "http://jari.cjb.net,http://irssi.org,http://scripts.irssi.de", +); + +use Irssi::TextUI; + +my $result; +my $refresh_tag; +my $rdir = "$ENV{'HOME'}/.licq/users/"; + +sub licq { +  my ($item,$get_size_only) = @_; +  $result = 0; +  if(-e $rdir) { +  	opendir(DIR, $rdir); + +  	while ( $_ = readdir(DIR) ) { +		next if(($_ eq ".") or ($_ eq "..")); + +		my $filename = "$rdir" . "$_"; +		if(-e $filename) { +			open(FILE, $filename); +  			$_ = ""; +  			$_ = <FILE> until /NewMessages/; +  			my @total = split / /, $_; +  			if(defined $total[2]) { +				$result += $total[2]; +			} +		} +  	} +  } + +  closedir(DIR); + +  $item->default_handler($get_size_only, undef, $result, 1); +} + +sub refresh_licq { +  Irssi::statusbar_items_redraw('licq'); +} + +sub init_licq { +	my $time = Irssi::settings_get_int('licq_refresh_time'); +	$rdir = Irssi::settings_get_str('licq_path'); +	Irssi::timeout_remove($refresh_tag) if ($refresh_tag); +	$refresh_tag = Irssi::timeout_add($time*1000, 'refresh_licq', undef); +} + +Irssi::settings_add_int('LICQ','licq_refresh_time',10); +Irssi::settings_add_str('LICQ','licq_path',$rdir); +Irssi::statusbar_item_register('licq', '{sb ICQ: $0-}', 'licq'); + +init_licq(); +Irssi::signal_add('setup changed','init_licq'); +refresh_licq(); + +# EOF | 
