gatherstats.pl: Move TLH check to NewsStats.pm.
authorThomas Hochstein <thh@inter.net>
Mon, 1 Nov 2010 16:53:14 +0000 (17:53 +0100)
committerThomas Hochstein <thh@inter.net>
Mon, 1 Nov 2010 19:13:25 +0000 (20:13 +0100)
Signed-off-by: Thomas Hochstein <thh@inter.net>
NewsStats.pm
gatherstats.pl

index 2cb1be2..781272d 100644 (file)
@@ -156,10 +156,11 @@ sub ListNewsgroups {
 ### hierarchy names where every newsgroup and hierarchy appears only once:
 ### de.alt.test,de.alt.admin -> de.ALL, de.alt.ALL, de.alt.test, de.alt.admin
 ### IN : $Newsgroups  : a list of newsgroups (content of Newsgroups: header)
+###      $TLH         : top level hierarchy (all other newsgroups are ignored)
 ###      $ValidGroupsR: reference to a hash containing all valid newsgroups
 ###                     as keys
 ### OUT: %Newsgroups  : hash containing all newsgroup and hierarchy names as keys
-  my ($Newsgroups,$ValidGroupsR) = @_;
+  my ($Newsgroups,$TLH,$ValidGroupsR) = @_;
   my %ValidGroups = %{$ValidGroupsR} if $ValidGroupsR;
   my %Newsgroups;
   chomp($Newsgroups);
@@ -167,6 +168,8 @@ sub ListNewsgroups {
   $Newsgroups =~ s/\s//;
   # call &HierarchyCount for each newsgroup in $Newsgroups:
   for (split /,/, $Newsgroups) {
+    # don't count newsgroup/hierarchy in wrong TLH
+    next if($TLH and !/^$TLH/);
     # don't count invalid newsgroups
     if(%ValidGroups and !defined($ValidGroups{$_})) {
       warn (sprintf("DROPPED: %s\n",$_));
index a721b3e..14cd883 100755 (executable)
@@ -77,7 +77,7 @@ foreach my $Month (&ListMonth($StartMonth,$EndMonth)) {
     my %Postings;
     while (($_) = $DBQuery->fetchrow_array) {
       # get list oft newsgroups and hierarchies from Newsgroups:
-      my %Newsgroups = ListNewsgroups($_,$Options{'l'} ? \%ValidGroups : '');
+      my %Newsgroups = ListNewsgroups($_,$Conf{'TLH'},$Options{'l'} ? \%ValidGroups : '');
       # count each newsgroup and hierarchy once
       foreach (sort keys %Newsgroups) {
         $Postings{$_}++;
This page took 0.011168 seconds and 4 git commands to generate.