]> git.donarmstrong.com Git - infobot.git/blobdiff - src/Modules/News.pl
- irctextcounters: add percentage to top3
[infobot.git] / src / Modules / News.pl
index 64ca9ee76dc733adfab0d9934db010acaa96cbff..8075a5143e2f22391830403b4dac7ea83d1cae7c 100644 (file)
@@ -192,7 +192,7 @@ sub readNews {
     close NEWS;
 
     my $cn = scalar(keys %::news);
-    &::status("News: Read ".
+    &::status("News: read ".
        $ci. &::fixPlural(" item", $ci). " for ".
        $cn. &::fixPlural(" chan", $cn). ", ".
        $cu. &::fixPlural(" user", $cu), " cache"
@@ -381,14 +381,24 @@ sub list {
     my $count = scalar keys %{ $::news{$chan} };
     &::msg($::who, "|==== News for \002$chan\002: ($count items)");
     my $newest = 0;
+    my $expire = 0;
+    my $eno    = 0;
     foreach (keys %{ $::news{$chan} }) {
        my $t   = $::news{$chan}{$_}{Time};
+       my $e   = $::news{$chan}{$_}{Expire};
        $newest = $t if ($t > $newest);
+       if ($e > 1 and $e < $expire) {
+           $expire     = $e;
+           $eno        = &newsS2N($item);
+       }
     }
     my $timestr = &::Time2String(time() - $newest);
     &::msg($::who, "|= Last updated $timestr ago.");
     &::msg($::who, " \037Num\037  \037Item ".(" "x40)." \037");
 
+    &DEBUG("list: expire = $expire");
+    &DEBUG("list: eno    = $eno");
+
     my $i = 1;
     foreach ( &getNewsAll() ) {
        my $subtopic    = $_;
@@ -690,14 +700,11 @@ sub set {
 
 sub latest {
     my($tchan, $flag) = @_;
-    &::DEBUG("news: latest(): who => $who, ::who => $::who");
 
     # hack hack hack.
     $chan      ||= $tchan;
     $who       = $::who;
 
-    &::DEBUG("news: latest(): who => $who, ::who => $::who");
-
     # todo: if chan = undefined, guess.
 #    if (!exists $::news{$chan}) {
     if (!exists $::channels{$chan}) {