\n";
print "\n";
$average_nb=$average_u=$average_v=$average_p=$average_h=$average_k=0;
$total_u=$total_v=$total_p=$total_h=$total_k=0;
$max_v=$max_p=$max_h=$max_k=1;
# Define total and max
for (my $ix=1; $ix<=12; $ix++) {
- my $monthix=sprintf("%02s",$ix);
- $total_u+=$MonthUnique{$YearRequired.$monthix}||0;
- $total_v+=$MonthVisits{$YearRequired.$monthix}||0;
- $total_p+=$MonthPages{$YearRequired.$monthix}||0;
- $total_h+=$MonthHits{$YearRequired.$monthix}||0;
- $total_k+=$MonthBytes{$YearRequired.$monthix}||0;
- #if (($MonthUnique{$YearRequired.$monthix}||0) > $max_v) { $max_v=$MonthUnique{$YearRequired.$monthix}; }
- if (($MonthVisits{$YearRequired.$monthix}||0) > $max_v) { $max_v=$MonthVisits{$YearRequired.$monthix}; }
- #if (($MonthPages{$YearRequired.$monthix}||0) > $max_p) { $max_p=$MonthPages{$YearRequired.$monthix}; }
- if (($MonthHits{$YearRequired.$monthix}||0) > $max_h) { $max_h=$MonthHits{$YearRequired.$monthix}; }
- if (($MonthBytes{$YearRequired.$monthix}||0) > $max_k) { $max_k=$MonthBytes{$YearRequired.$monthix}; }
+ my $curmonth = $statmonths[$ix]->{month};
+ my $curyear = $statmonths[$ix]->{year};
+ my $monthix=sprintf("%02s",$curmonth);
+ $total_u+=$MonthUnique{$curyear.$monthix}||0;
+ $total_v+=$MonthVisits{$curyear.$monthix}||0;
+ $total_p+=$MonthPages{$curyear.$monthix}||0;
+ $total_h+=$MonthHits{$curyear.$monthix}||0;
+ $total_k+=$MonthBytes{$curyear.$monthix}||0;
+ #if (($MonthUnique{$curyear.$monthix}||0) > $max_v) { $max_v=$MonthUnique{$curyear.$monthix}; }
+ if (($MonthVisits{$curyear.$monthix}||0) > $max_v) { $max_v=$MonthVisits{$curyear.$monthix}; }
+ #if (($MonthPages{$curyear.$monthix}||0) > $max_p) { $max_p=$MonthPages{$curyear.$monthix}; }
+ if (($MonthHits{$curyear.$monthix}||0) > $max_h) { $max_h=$MonthHits{$curyear.$monthix}; }
+ if (($MonthBytes{$curyear.$monthix}||0) > $max_k) { $max_k=$MonthBytes{$curyear.$monthix}; }
}
# Define average
# TODO
# Show bars for month
if ($PluginsLoaded{'ShowGraph'}{'graphapplet'}) {
my @blocklabel=();
for (my $ix=1; $ix<=12; $ix++) {
- my $monthix=sprintf("%02s",$ix);
- push @blocklabel,"$MonthNumLib{$monthix}\§$YearRequired";
+ my $curmonth = $statmonths[$ix]->{month};
+ my $curyear = $statmonths[$ix]->{year};
+ my $monthix=sprintf("%02s",$curmonth);
+ push @blocklabel,"$MonthNumLib{$monthix}\§$curyear";
}
my @vallabel=("$Message[11]","$Message[10]","$Message[56]","$Message[57]","$Message[75]");
my @valcolor=("$color_u","$color_v","$color_p","$color_h","$color_k");
my @valmax=($max_v,$max_v,$max_h,$max_h,$max_k);
my @valtotal=($total_u,$total_v,$total_p,$total_h,$total_k);
my @valaverage=();
#my @valaverage=($average_v,$average_p,$average_h,$average_k);
my @valdata=();
my $xx=0;
for (my $ix=1; $ix<=12; $ix++) {
- my $monthix=sprintf("%02s",$ix);
- $valdata[$xx++]=$MonthUnique{$YearRequired.$monthix}||0;
- $valdata[$xx++]=$MonthVisits{$YearRequired.$monthix}||0;
- $valdata[$xx++]=$MonthPages{$YearRequired.$monthix}||0;
- $valdata[$xx++]=$MonthHits{$YearRequired.$monthix}||0;
- $valdata[$xx++]=$MonthBytes{$YearRequired.$monthix}||0;
+ my $curmonth = $statmonths[$ix]->{month};
+ my $curyear = $statmonths[$ix]->{year};
+ my $monthix=sprintf("%02s",$curmonth);
+ $valdata[$xx++]=$MonthUnique{$curyear.$monthix}||0;
+ $valdata[$xx++]=$MonthVisits{$curyear.$monthix}||0;
+ $valdata[$xx++]=$MonthPages{$curyear.$monthix}||0;
+ $valdata[$xx++]=$MonthHits{$curyear.$monthix}||0;
+ $valdata[$xx++]=$MonthBytes{$curyear.$monthix}||0;
}
ShowGraph_graphapplet("$title","month",$ShowMonthStats,\@blocklabel,\@vallabel,\@valcolor,\@valmax,\@valtotal,\@valaverage,\@valdata);
}
else {
print "\n";
print "";
print "| | \n";
- for (my $ix=1; $ix<=12; $ix++) {
- my $monthix=sprintf("%02s",$ix);
+ for (my $ix=1; $ix<=13; $ix++) {
+ my $curmonth = ($ix != 13) ? ($statmonths[13-$ix]->{month}) : ($statmonths[13]->{month});
+ my $curyear = ($ix != 13) ? ($statmonths[13-$ix]->{year}) : ($statmonths[13]->{year});
+ my $monthix=sprintf("%02s",$curmonth);
my $bredde_u=0; my $bredde_v=0;my $bredde_p=0;my $bredde_h=0;my $bredde_k=0;
- if ($max_v > 0) { $bredde_u=int(($MonthUnique{$YearRequired.$monthix}||0)/$max_v*$BarHeight)+1; }
- if ($max_v > 0) { $bredde_v=int(($MonthVisits{$YearRequired.$monthix}||0)/$max_v*$BarHeight)+1; }
- if ($max_h > 0) { $bredde_p=int(($MonthPages{$YearRequired.$monthix}||0)/$max_h*$BarHeight)+1; }
- if ($max_h > 0) { $bredde_h=int(($MonthHits{$YearRequired.$monthix}||0)/$max_h*$BarHeight)+1; }
- if ($max_k > 0) { $bredde_k=int(($MonthBytes{$YearRequired.$monthix}||0)/$max_k*$BarHeight)+1; }
+ if ($max_v > 0) { $bredde_u=int(($MonthUnique{$curyear.$monthix}||0)/$max_v*$BarHeight)+1; }
+ if ($max_v > 0) { $bredde_v=int(($MonthVisits{$curyear.$monthix}||0)/$max_v*$BarHeight)+1; }
+ if ($max_h > 0) { $bredde_p=int(($MonthPages{$curyear.$monthix}||0)/$max_h*$BarHeight)+1; }
+ if ($max_h > 0) { $bredde_h=int(($MonthHits{$curyear.$monthix}||0)/$max_h*$BarHeight)+1; }
+ if ($max_k > 0) { $bredde_k=int(($MonthBytes{$curyear.$monthix}||0)/$max_k*$BarHeight)+1; }
+ if($ix == 13) { print " | \n"; }
print "";
- if ($ShowMonthStats =~ /U/i) { print " "; }
- if ($ShowMonthStats =~ /V/i) { print " "; }
- if ($ShowMonthStats =~ /P/i) { print " "; }
- if ($ShowMonthStats =~ /H/i) { print " "; }
- if ($ShowMonthStats =~ /B/i) { print " "; }
+ if ($ShowMonthStats =~ /U/i) { print " "; }
+ if ($ShowMonthStats =~ /V/i) { print " "; }
+ if ($ShowMonthStats =~ /P/i) { print " "; }
+ if ($ShowMonthStats =~ /H/i) { print " "; }
+ if ($ShowMonthStats =~ /B/i) { print " "; }
print " | \n";
}
print " | ";
print " \n";
# Show lib for month
print "";
# if (!$StaticLinks) {
# print "| << | ";
# }
# else {
print " | ";
# }
- for (my $ix=1; $ix<=12; $ix++) {
- my $monthix=sprintf("%02s",$ix);
-# if (!$StaticLinks) {
-# print "$MonthNumLib{$monthix} $YearRequired | ";
-# }
-# else {
- print "".(! $StaticLinks && $monthix==$nowmonth && $YearRequired==$nowyear?'':'');
- print "$MonthNumLib{$monthix} $YearRequired";
- print (! $StaticLinks && $monthix==$nowmonth && $YearRequired==$nowyear?'':'');
- print " | ";
-# }
+ for (my $ix=1; $ix<=13; $ix++) {
+ my $curmonth = ($ix != 13) ? ($statmonths[13-$ix]->{month}) : ($statmonths[13]->{month});
+ my $curyear = ($ix != 13) ? ($statmonths[13-$ix]->{year}) : ($statmonths[13]->{year});
+ my $monthix=sprintf("%02s",$curmonth);
+# if (!$StaticLinks) {
+# print "$MonthNumLib{$monthix} $curyear | ";
+# }
+# else {
+ if($ix == 13) { print " | \n"; }
+ print "".(! $StaticLinks && $monthix==$nowmonth && $curyear==$nowyear?'':'');
+ print "$MonthNumLib{$monthix} $curyear";
+ print (! $StaticLinks && $monthix==$nowmonth && $curyear==$nowyear?'':'');
+ print " | ";
+# }
}
-# if (!$StaticLinks) {
+# if (!$StaticLinks) {
# print ">> | ";
# }
# else {
print " | ";
# }
print " \n";
print " \n";
}
@@ -9088,29 +9282,38 @@ if (scalar keys %HTMLOutput) {
print "\n";
print "| $Message[5] | ";
if ($ShowMonthStats =~ /U/i) { print "$Message[11] | "; }
if ($ShowMonthStats =~ /V/i) { print "$Message[10] | "; }
if ($ShowMonthStats =~ /P/i) { print "$Message[56] | "; }
if ($ShowMonthStats =~ /H/i) { print "$Message[57] | "; }
if ($ShowMonthStats =~ /B/i) { print "$Message[75] | "; }
print " \n";
- for (my $ix=1; $ix<=12; $ix++) {
- my $monthix=sprintf("%02s",$ix);
+
+ for (my $ix=0; $ix<=12; $ix++) {
+ my $curmonth = ($ix != 0) ? ($statmonths[$ix]->{month}) : ($statmonths[13]->{month});
+ my $curyear = ($ix != 0) ? ($statmonths[$ix]->{year}) : ($statmonths[13]->{year});
+ my $monthix=sprintf("%02s",$curmonth);
+ my $NewLinkParamsNoDate = $NewLinkParams;
+ $NewLinkParamsNoDate =~ s/(^|&|&)year=[^&]*//i;
+ $NewLinkParamsNoDate =~ s/(^|&|&)month=[^&]*//i;
+ $NewLinkParamsNoDate =~ s/(^|&|&)framename=[^&]*//i;
+ $NewLinkParamsNoDate =~ tr/&/&/s; $NewLinkParamsNoDate =~ s/^&//; $NewLinkParamsNoDate =~ s/&$//;
print "";
- print "| ".(! $StaticLinks && $monthix==$nowmonth && $YearRequired==$nowyear?'':'');
- print "$MonthNumLib{$monthix} $YearRequired";
- print (! $StaticLinks && $monthix==$nowmonth && $YearRequired==$nowyear?'':'');
- print " | ";
- if ($ShowMonthStats =~ /U/i) { print "",$MonthUnique{$YearRequired.$monthix}?$MonthUnique{$YearRequired.$monthix}:"0"," | "; }
- if ($ShowMonthStats =~ /V/i) { print "",$MonthVisits{$YearRequired.$monthix}?$MonthVisits{$YearRequired.$monthix}:"0"," | "; }
- if ($ShowMonthStats =~ /P/i) { print "",$MonthPages{$YearRequired.$monthix}?$MonthPages{$YearRequired.$monthix}:"0"," | "; }
- if ($ShowMonthStats =~ /H/i) { print "",$MonthHits{$YearRequired.$monthix}?$MonthHits{$YearRequired.$monthix}:"0"," | "; }
- if ($ShowMonthStats =~ /B/i) { print "",Format_Bytes(int($MonthBytes{$YearRequired.$monthix}||0))," | "; }
+ print "".(! $StaticLinks && $monthix==$nowmonth && $curyear==$nowyear?'':'');
+ print "$MonthNumLib{$monthix} $curyear";
+ print (! $StaticLinks && $monthix==$nowmonth && $curyear==$nowyear?'':'');
+ print " | ";
+ if ($ShowMonthStats =~ /U/i) { print "",$MonthUnique{$curyear.$monthix}?$MonthUnique{$curyear.$monthix}:"0"," | "; }
+ if ($ShowMonthStats =~ /V/i) { print "",$MonthVisits{$curyear.$monthix}?$MonthVisits{$curyear.$monthix}:"0"," | "; }
+ if ($ShowMonthStats =~ /P/i) { print "",$MonthPages{$curyear.$monthix}?$MonthPages{$curyear.$monthix}:"0"," | "; }
+ if ($ShowMonthStats =~ /H/i) { print "",$MonthHits{$curyear.$monthix}?$MonthHits{$curyear.$monthix}:"0"," | "; }
+ if ($ShowMonthStats =~ /B/i) { print "",Format_Bytes(int($MonthBytes{$curyear.$monthix}||0))," | "; }
print " \n";
+ if($ix == 0) { print "| | \n"; }
}
# Average row
# TODO
# Total row
print "| $Message[102] | ";
if ($ShowMonthStats =~ /U/i) { print "$total_u | "; }
if ($ShowMonthStats =~ /V/i) { print "$total_v | "; }
if ($ShowMonthStats =~ /P/i) { print "$total_p | "; }
@@ -10209,17 +10412,59 @@ if (scalar keys %HTMLOutput) {
print " | $Message[2] | ";
print "".($rest_h?"$p %":" ")." | ";
print " \n";
}
&tab_end();
}
print "\n \n\n";
-
+
+ # BY WINDOW SIZE
+ #----------------------------
+ if ($ShowWindowSizeStats) {
+ if ($Debug) { debug("ShowWindowSizeStats",2); }
+ print "$Center \n";
+ my $Totalh=0; foreach (keys %_windowsize_h) { $Totalh+=$_windowsize_h{$_}; }
+ my $title="$Message[173] ($Message[77] $MaxNbOf{'WindowSizesShown'})";
+ &tab_head("$title",0,0,'windowsizes');
+ print "| $Message[173] | $Message[15] | \n";
+ my $total_h=0;
+ my $count=0;
+ &BuildKeyList($MaxNbOf{'WindowSizesShown'},$MinHit{'WindowSize'},\%_windowsize_h,\%_windowsize_h);
+ foreach my $key (@keylist) {
+ my $p=' ';
+ if ($Totalh) { $p=int($_windowsize_h{$key}/$Totalh*1000)/10; $p="$p %"; }
+ $total_h+=$_windowsize_h{$key}||0;
+ print "";
+ if ($key eq 'Unknown') {
+ print "| $Message[0] | ";
+ print "$p | ";
+ }
+ else {
+ my $windowsize=$key;
+ print "$windowsize | ";
+ print "$p | ";
+ }
+ print " \n";
+ $count++;
+ }
+ $rest_h=$Totalh-$total_h;
+ if ($rest_h > 0) {
+ # All others sessions
+ my $p=0;
+ if ($Totalh) { $p=int($rest_h/$Totalh*1000)/10; }
+ print "| $Message[2] | ";
+ print "".($rest_h?"$p %":" ")." | ";
+ print " \n";
+ }
+ &tab_end();
+ }
+ print "\n \n\n";
+
# BY REFERENCE
#---------------------------
if ($ShowOriginStats) {
if ($Debug) { debug("ShowOriginStats",2); }
print "$Center \n";
my $Totalp=0; foreach (0..5) { $Totalp+=($_ != 4 || $IncludeInternalLinksInOriginSection)?$_from_p[$_]:0; }
my $Totalh=0; foreach (0..5) { $Totalh+=($_ != 4 || $IncludeInternalLinksInOriginSection)?$_from_h[$_]:0; }
&tab_head($Message[36],19,0,'referer');
@@ -10424,17 +10669,17 @@ if (scalar keys %HTMLOutput) {
if ($new_browser_h{'msiecumul'}) { $_misc_h{'AddToFavourites'}=int(0.5+$_misc_h{'AddToFavourites'}*$Totalh/$new_browser_h{'msiecumul'}); }
}
my $title="$Message[139]";
&tab_head("$title",19,0,'misc');
print "| $Message[139] | ";
print " | ";
print " | ";
print " \n";
- my %label=('AddToFavourites'=>$Message[137],'JavascriptDisabled'=>$Message[168],'JavaEnabled'=>$Message[140],'DirectorSupport'=>$Message[141],
+ my %label=('AddToFavourites'=>$Message[137],'NoJavaScript'=>$Message[168],'JavaEnabled'=>$Message[140],'SVGSupport'=>$Message[174],'DirectorSupport'=>$Message[141],
'FlashSupport'=>$Message[142],'RealPlayerSupport'=>$Message[143],'QuickTimeSupport'=>$Message[144],
'WindowsMediaPlayerSupport'=>$Message[145],'PDFSupport'=>$Message[146]);
foreach my $key (@MiscListOrder) {
my $mischar=substr($key,0,1);
if ($ShowMiscStats !~ /$mischar/i) { next; }
my $total=0;
my $p;
if ($MiscListCalc{$key} eq 'v') { $total=$TotalVisits; }
diff -up8rN --strip-trailing-cr original/lib/browsers.pm custom/lib/browsers.pm
--- original/lib/browsers.pm 2006-12-09 19:27:39.000000000 +0000
+++ custom/lib/browsers.pm 2006-12-03 21:56:25.000000000 +0000
@@ -36,17 +36,16 @@
# Most frequent standard web browsers are first in this list (except msie, netscape and firefox)
'firebird',
'go!zilla',
'icab',
'konqueror',
'links',
'lynx',
'omniweb',
-'opera',
# Other standard web browsers
'22acidownload',
'aol\-iweng',
'amaya',
'amigavoyager',
'aweb',
'bonecho',
'bpftp',
@@ -81,17 +80,16 @@
'multizilla',
'ncsa_mosaic',
'netcaptor',
'netpositive',
'nutscrape',
'msfrontpageexpress',
'phoenix',
'shiira', # Must be before safari
-'safari',
'tzgeturl',
'viking',
'webfetcher',
'webexplorer',
'webmirror',
'webvcr',
# Site grabbers
'teleport',
@@ -197,17 +195,16 @@
'staroffice',
'gnus',
'nikto',
'microsoft\-webdav\-miniredir',
'microsoft\sdata\saccess\sinternet\spublishing\sprovider\scache\smanager',
'microsoft\sdata\saccess\sinternet\spublishing\sprovider\sdav',
'microsoft\sdata\saccess\sinternet\spublishing\sprovider\sprotocol\sdiscovery',
'POE\-Component\-Client\-HTTP',
-'mozilla', # Must be at end because a lot of browsers contains mozilla in string
'libwww', # Must be at end because some browser have both 'browser id' and 'libwww'
'lwp'
);
# BrowsersHashIDLib
# List of browser's name ('browser id in lower case', 'browser text')
#---------------------------------------------------------------
%BrowsersHashIDLib = (
|