--- awstats.pl.orig 2007-07-07 13:00:06.000000000 +0200
+++ awstats.pl 2008-12-29 20:32:18.000000000 +0100
@@ -295,7 +295,7 @@
%ValidHTTPCodes %ValidSMTPCodes
%TrapInfosForHTTPErrorCodes %NotPageList %DayBytes %DayHits %DayPages %DayVisits
%MaxNbOf %MinHit
-%ListOfYears %HistoryAlreadyFlushed %PosInFile %ValueInFile
+%ListOfYears %FirstMonth %HistoryAlreadyFlushed %PosInFile %ValueInFile
%val %nextval %egal
%TmpDNSLookup %TmpOS %TmpRefererServer %TmpRobot %TmpBrowser %MyDNSTable
/;
@@ -307,7 +307,7 @@
%NotPageList=();
%DayBytes = %DayHits = %DayPages = %DayVisits = ();
%MaxNbOf = %MinHit = ();
-%ListOfYears = %HistoryAlreadyFlushed = %PosInFile = %ValueInFile = ();
+%ListOfYears = %FirstMonth = %HistoryAlreadyFlushed = %PosInFile = %ValueInFile = ();
%val = %nextval = %egal = ();
%TmpDNSLookup = %TmpOS = %TmpRefererServer = %TmpRobot = %TmpBrowser = %MyDNSTable = ();
use vars qw/
@@ -3436,6 +3436,7 @@
$HistoryAlreadyFlushed{"$year$month$day$hour"}=1;
}
+ if (! $FirstMonth{"$year"} || $FirstMonth{"$year"} gt "$month") { $FirstMonth{"$year"}="$month"; }
if (! $ListOfYears{"$year"} || $ListOfYears{"$year"} lt "$month") { $ListOfYears{"$year"}="$month"; }
}
@@ -5316,7 +5317,7 @@
foreach my $key (sort { $menu->{$a} <=> $menu->{$b} } keys %$menu) {
if ($menu->{$key}==0) { next; }
if ($menulink->{$key}==1) { print ($frame?"
| ":""); print "$menutext->{$key}"; print ($frame?" |
\n":" "); }
- if ($menulink->{$key}==2) { print ($frame?" ":""); print "$menutext->{$key}\n"; print ($frame?" |
\n":" "); }
+ if ($menulink->{$key}==2) { print ($frame?" ":""); print "$menutext->{$key}\n"; print ($frame?" |
\n":" "); }
}
print ($frame?"":"\n");
}
@@ -5341,8 +5342,8 @@
$title="$Message[131]";
}
else {
- $title="$Message[131] ($Message[77] $MaxNbOf{'EMailsShown'}) - $Message[80]";
- if ($ShowEMailSenders =~ /L/i) { $title.=" - $Message[9]"; }
+ $title="$Message[131] ($Message[77] $MaxNbOf{'EMailsShown'}) - $Message[80]";
+ if ($ShowEMailSenders =~ /L/i) { $title.=" - $Message[9]"; }
}
&tab_head("$title",19,0,'emailsenders');
print "| $Message[131] : ".(scalar keys %_emails_h)." | ";
@@ -5414,8 +5415,8 @@
$title="$Message[132]";
}
else {
- $title="$Message[132] ($Message[77] $MaxNbOf{'EMailsShown'}) - $Message[80]";
- if ($ShowEMailReceivers =~ /L/i) { $title.=" - $Message[9]"; }
+ $title="$Message[132] ($Message[77] $MaxNbOf{'EMailsShown'}) - $Message[80]";
+ if ($ShowEMailReceivers =~ /L/i) { $title.=" - $Message[9]"; }
}
&tab_head("$title",19,0,'emailreceivers');
print "
|---|
| $Message[132] : ".(scalar keys %_emailr_h)." | ";
@@ -6044,6 +6045,9 @@
# ListOfYears contains max month found
$ListOfYears{"$2"}="$1";
}
+ if (! $FirstMonth{"$2"} || "$1" lt $ListOfYears{"$2"}) {
+ $FirstMonth{"$2"}="$1";
+ }
my $rangestring=($2||"").($1||"").($3||"").($4||"");
if ($rangestring gt $lastdatebeforeupdate) {
# We are on a new max for mask
@@ -7688,11 +7692,65 @@
$NewLinkParams =~ s/(^|&|&)year=[^&]*//i;
$NewLinkParams =~ s/(^|&|&)month=[^&]*//i;
$NewLinkParams =~ s/(^|&|&)framename=[^&]*//i;
- $NewLinkParams =~ s/(&|&)+/&/i;
- $NewLinkParams =~ s/^&//; $NewLinkParams =~ s/&$//;
+ $NewLinkParams =~ s/(&|&)+/&/i;
+ $NewLinkParams =~ s/^&//; $NewLinkParams =~ s/&$//;
my $NewLinkTarget='';
if ($FrameName eq 'mainright') { $NewLinkTarget=" target=\"_parent\""; }
- print "
\n";
#------- Referrals by search engines
- print "$Message[40] - $Message[80] \n";
+ print " |
$Message[40] - $Message[80] \n";
if (scalar keys %_se_referrals_h) {
print "\n";
$total_p=0; $total_h=0;
@@ -10315,7 +10373,7 @@
if ($ShowOriginStats =~ /H/i) { print "| ".($_from_h[2]?$_from_h[2]:" ")." | ".($_from_h[2]?"$p_h[2] %":" ")." | "; }
print "\n";
#------- Referrals by external HTML link
- print "$Message[41] - $Message[80] \n";
+ print " | $Message[41] - $Message[80] \n";
if (scalar keys %_pagesrefs_h) {
print "\n";
$total_p=0; $total_h=0;
@@ -10374,7 +10432,7 @@
# By Keyphrases
if ($ShowKeyphrasesStats && $ShowKeywordsStats) { print "\n"; }
if ($Debug) { debug("ShowKeyphrasesStats",2); }
- &tab_head("$Message[120] ($Message[77] $MaxNbOf{'KeyphrasesShown'}) $Message[80]",19,($ShowKeyphrasesStats && $ShowKeywordsStats)?95:70,'keyphrases');
+ &tab_head("$Message[120] ($Message[77] $MaxNbOf{'KeyphrasesShown'}) $Message[80]",19,($ShowKeyphrasesStats && $ShowKeywordsStats)?95:70,'keyphrases');
print " | | $TotalDifferentKeyphrases $Message[103] | $Message[14] | $Message[15] | \n";
$total_s=0;
my $count=0;
@@ -10406,7 +10464,7 @@
# By Keywords
if ($ShowKeyphrasesStats && $ShowKeywordsStats) { print "\n"; }
if ($Debug) { debug("ShowKeywordsStats",2); }
- &tab_head("$Message[121] ($Message[77] $MaxNbOf{'KeywordsShown'}) $Message[80]",19,($ShowKeyphrasesStats && $ShowKeywordsStats)?95:70,'keywords');
+ &tab_head("$Message[121] ($Message[77] $MaxNbOf{'KeywordsShown'}) $Message[80]",19,($ShowKeyphrasesStats && $ShowKeywordsStats)?95:70,'keywords');
print " | | $TotalDifferentKeywords $Message[13] | $Message[14] | $Message[15] | \n";
$total_s=0;
my $count=0;
@@ -10493,7 +10551,7 @@
foreach my $key (@keylist) {
my $p=int($_errors_h{$key}/$TotalHitsErrors*1000)/10;
print "";
- if ($TrapInfosForHTTPErrorCodes{$key}) { print "| $key | "; }
+ if ($TrapInfosForHTTPErrorCodes{$key}) { print "$key | "; }
else { print "$key | "; }
print "".($httpcodelib{$key}?$httpcodelib{$key}:'Unknown error')." | $_errors_h{$key} | $p % | ".Format_Bytes($_errors_k{$key})." | ";
print " \n";
| |