Merge branch 'thh-small-changes' into next
* thh-small-changes: Small comment fixes. --sums is not compatible with --checkgroups.
This commit is contained in:
commit
7624accb6e
|
@ -73,6 +73,8 @@ $OptStatsType = 'all' if !$OptStatsType;
|
||||||
### get time period from --month
|
### get time period from --month
|
||||||
# get verbal description of time period, drop SQL code
|
# get verbal description of time period, drop SQL code
|
||||||
my ($Period) = &GetTimePeriod($OptMonth);
|
my ($Period) = &GetTimePeriod($OptMonth);
|
||||||
|
# bail out if --month is invalid or set to 'ALL';
|
||||||
|
# we don't support the latter
|
||||||
&Bleat(2,"--month option has an invalid format - please use 'YYYY-MM' or ".
|
&Bleat(2,"--month option has an invalid format - please use 'YYYY-MM' or ".
|
||||||
"'YYYY-MM:YYYY-MM'!") if (!$Period or $Period eq 'all time');
|
"'YYYY-MM:YYYY-MM'!") if (!$Period or $Period eq 'all time');
|
||||||
|
|
||||||
|
|
|
@ -78,9 +78,16 @@ if ($OptReportType) {
|
||||||
$OptReportType = 'default';
|
$OptReportType = 'default';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
# read list of newsgroups from --checkgroups
|
# honor $OptCheckgroupsFile,
|
||||||
# into a hash reference
|
# warn for $OptSums if set concurrently
|
||||||
my $ValidGroups = &ReadGroupList($OptCheckgroupsFile) if $OptCheckgroupsFile;
|
my $ValidGroups;
|
||||||
|
if ($OptCheckgroupsFile) {
|
||||||
|
# read list of newsgroups from --checkgroups
|
||||||
|
# into a hash reference
|
||||||
|
$ValidGroups = &ReadGroupList($OptCheckgroupsFile);
|
||||||
|
&Bleat(1,"--sums option can't possibly work with --checkgroups option set")
|
||||||
|
if $OptSums;
|
||||||
|
}
|
||||||
|
|
||||||
### read configuration
|
### read configuration
|
||||||
my %Conf = %{ReadConfig($OptConfFile)};
|
my %Conf = %{ReadConfig($OptConfFile)};
|
||||||
|
@ -375,6 +382,9 @@ example:
|
||||||
|
|
||||||
See the B<gatherstats> man page for details.
|
See the B<gatherstats> man page for details.
|
||||||
|
|
||||||
|
This option does not work together with the B<--checkgroups> option as
|
||||||
|
all "virtual" groups will not be present in the checkgroups file.
|
||||||
|
|
||||||
=item B<--checkgroups> I<filename>
|
=item B<--checkgroups> I<filename>
|
||||||
|
|
||||||
Restrict output to those newgroups present in a file in checkgroups format
|
Restrict output to those newgroups present in a file in checkgroups format
|
||||||
|
@ -384,6 +394,9 @@ line is ignored). All other newsgroups will be removed from output.
|
||||||
Contrary to B<gatherstats>, I<filename> is not a template, but refers to
|
Contrary to B<gatherstats>, I<filename> is not a template, but refers to
|
||||||
a single file in checkgroups format.
|
a single file in checkgroups format.
|
||||||
|
|
||||||
|
The B<--sums> option will not work together with this option as "virtual"
|
||||||
|
groups will not be present in the checkgroups file.
|
||||||
|
|
||||||
=item B<-r>, B<--report> I<default|average|sums>
|
=item B<-r>, B<--report> I<default|average|sums>
|
||||||
|
|
||||||
Choose the report type: I<default>, I<average> or I<sums>
|
Choose the report type: I<default>, I<average> or I<sums>
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
#
|
#
|
||||||
# Copyright (c) 2010-2013 Thomas Hochstein <thh@inter.net>
|
# Copyright (c) 2010-2013 Thomas Hochstein <thh@inter.net>
|
||||||
#
|
#
|
||||||
# This module can be redistributed and/or modified under the same terms under
|
# This module can be redistributed and/or modified under the same terms under
|
||||||
# which Perl itself is published.
|
# which Perl itself is published.
|
||||||
|
|
||||||
package NewsStats;
|
package NewsStats;
|
||||||
|
@ -244,7 +244,7 @@ sub ReadGroupList {
|
||||||
### ignoring everything after the first whitespace and so accepting files
|
### ignoring everything after the first whitespace and so accepting files
|
||||||
### in checkgroups format as well as (parts of) an INN active file)
|
### in checkgroups format as well as (parts of) an INN active file)
|
||||||
### IN : $Filename : file to read
|
### IN : $Filename : file to read
|
||||||
### OUT: \%ValidGroups: hash containing all valid newsgroups
|
### OUT: \%ValidGroups: reference to a hash containing all valid newsgroups
|
||||||
my ($Filename) = @_;
|
my ($Filename) = @_;
|
||||||
my %ValidGroups;
|
my %ValidGroups;
|
||||||
open (my $LIST,"<$Filename") or &Bleat(2,"Cannot read $Filename: $!");
|
open (my $LIST,"<$Filename") or &Bleat(2,"Cannot read $Filename: $!");
|
||||||
|
@ -275,12 +275,12 @@ sub GetTimePeriod {
|
||||||
my ($Verbal, $SQL);
|
my ($Verbal, $SQL);
|
||||||
# define a regular expression for a month
|
# define a regular expression for a month
|
||||||
my $REMonth = '\d{4}-\d{2}';
|
my $REMonth = '\d{4}-\d{2}';
|
||||||
|
|
||||||
# default to last month if option is not set
|
# default to last month if option is not set
|
||||||
if(!$Month) {
|
if(!$Month) {
|
||||||
$Month = &LastMonth;
|
$Month = &LastMonth;
|
||||||
}
|
}
|
||||||
|
|
||||||
# check for valid input
|
# check for valid input
|
||||||
if ($Month =~ /^$REMonth$/) {
|
if ($Month =~ /^$REMonth$/) {
|
||||||
# single month (YYYY-MM)
|
# single month (YYYY-MM)
|
||||||
|
@ -299,7 +299,7 @@ sub GetTimePeriod {
|
||||||
# invalid input
|
# invalid input
|
||||||
return (undef,undef);
|
return (undef,undef);
|
||||||
}
|
}
|
||||||
|
|
||||||
return ($Verbal,$SQL);
|
return ($Verbal,$SQL);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -407,7 +407,7 @@ sub OutputData {
|
||||||
my %ValidKeys = %{$ValidKeys} if $ValidKeys;
|
my %ValidKeys = %{$ValidKeys} if $ValidKeys;
|
||||||
my ($FileName, $Handle, $OUT);
|
my ($FileName, $Handle, $OUT);
|
||||||
our $LastIteration;
|
our $LastIteration;
|
||||||
|
|
||||||
# define output types
|
# define output types
|
||||||
my %LegalOutput;
|
my %LegalOutput;
|
||||||
@LegalOutput{('dump','list','pretty')} = ();
|
@LegalOutput{('dump','list','pretty')} = ();
|
||||||
|
@ -439,7 +439,7 @@ sub OutputData {
|
||||||
# safeguards for filename creation:
|
# safeguards for filename creation:
|
||||||
# replace potential problem characters with '_'
|
# replace potential problem characters with '_'
|
||||||
$FileName = sprintf('%s-%s',$FileTempl,$Caption);
|
$FileName = sprintf('%s-%s',$FileTempl,$Caption);
|
||||||
$FileName =~ s/[^a-zA-Z0-9_-]+/_/g;
|
$FileName =~ s/[^a-zA-Z0-9_-]+/_/g;
|
||||||
open ($OUT,">$FileName")
|
open ($OUT,">$FileName")
|
||||||
or &Bleat(2,sprintf("Cannot open output file '%s': $!",
|
or &Bleat(2,sprintf("Cannot open output file '%s': $!",
|
||||||
$FileName));
|
$FileName));
|
||||||
|
@ -776,5 +776,3 @@ sub CheckValidNewsgroups {
|
||||||
|
|
||||||
#####------------------------------- done ---------------------------------#####
|
#####------------------------------- done ---------------------------------#####
|
||||||
1;
|
1;
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue