]> git.ipfire.org Git - thirdparty/AWStats.git/commitdiff
Added check version in plugins use.
authoreldy <>
Wed, 2 Oct 2002 16:01:37 +0000 (16:01 +0000)
committereldy <>
Wed, 2 Oct 2002 16:01:37 +0000 (16:01 +0000)
wwwroot/cgi-bin/plugins/graph3d.pm
wwwroot/cgi-bin/plugins/hashfiles.pm
wwwroot/cgi-bin/plugins/timehires.pm
wwwroot/cgi-bin/plugins/timezone.pm

index 7d3a8eef602ffb9689ccab6a31cea1427233219c..9761e6a20bfa6114bbc0dbb85549c66ea7c18e27 100644 (file)
@@ -8,22 +8,37 @@
 # $Revision$ - $Author$ - $Date$
 
 
-use GD::Graph3D;
-$PluginGraph3D=1;
+use GD::Graph3d;
 
 
 
 #-----------------------------------------------------------------------------
 # PLUGIN GLOBAL VARIABLES
 #-----------------------------------------------------------------------------
+my $Plugin_need_awstats_version=5001;
 #...
 
 
+#-----------------------------------------------------------------------------
+# PLUGIN Init_check_Version FUNCTION
+#-----------------------------------------------------------------------------
+sub Init_graph3d_Check_Version {
+       if (! $Plugin_need_awstats_version) { return 0; }
+       $VERSION =~ /^(\d+)\.(\d+)/;
+       my $versionnum=($1*1000)+$2;
+       if      ($Plugin_need_awstats_version < $versionnum) {
+               return "Error: AWStats version $Plugin_need_awstats_version or higher is required.";
+       }
+       return 0;
+}
+
+
 #-----------------------------------------------------------------------------
 # PLUGIN Init_pluginname FUNCTION
 #-----------------------------------------------------------------------------
 sub Init_graph3d {
-       return 1;
+       my $checkversion=Init_timehires_Check_Version();
+       return ($checkversion?$checkversion:1);
 }
 
 
index 7ec4472eff38f53694f20b4f90fbee4e647f5ff0..4b4de2611281cf9f27bca50ab9026a2cb943b3c8 100644 (file)
 
 use Storable;
 use strict;no strict "refs";
-$Plugin_hashfiles=1;
 
 
 
 #-----------------------------------------------------------------------------
-# PLUGIN GLOBAL VARIABLES
+# PLUGIN VARIABLES
 #-----------------------------------------------------------------------------
-use vars qw/ $hashfileuptodate /;
+my $Plugin_need_awstats_version=5001;
+use vars qw/
+$hashfileuptodate
+/;
+#...
+
 
+#-----------------------------------------------------------------------------
+# PLUGIN Init_check_Version FUNCTION
+#-----------------------------------------------------------------------------
+sub Init_hashfiles_Check_Version {
+       my $AWStats_Version=shift;
+       if (! $Plugin_need_awstats_version) { return 0; }
+       $AWStats_Version =~ /^(\d+)\.(\d+)/;
+       my $versionnum=($1*1000)+$2;
+       if      ($Plugin_need_awstats_version > $versionnum) {
+               my $maj=int($Plugin_need_awstats_version/1000);
+               my $min=$Plugin_need_awstats_version % 1000;
+               return "Error: AWStats version $maj.$min or higher is required.";
+       }
+       return 0;
+}
 
 #-----------------------------------------------------------------------------
 # PLUGIN Init_pluginname FUNCTION
 #-----------------------------------------------------------------------------
 sub Init_hashfiles {
+       my $AWStats_Version=shift;
        $hashfileuptodate=1;
-       return 1;
+       my $checkversion=Init_hashfiles_Check_Version($AWStats_Version);
+       return ($checkversion?$checkversion:1);
 }
 
 
index 8d3e5f026bccb237192a0ca79c950310e297adba..d6f8b7ba4b83d85ed9a6faeb27ce314c94286c05 100644 (file)
 
 use Time::HiRes qw( gettimeofday );
 use strict;no strict "refs";
-$Plugin_timehires=1;
 
 
 
 #-----------------------------------------------------------------------------
-# PLUGIN GLOBAL VARIABLES
+# PLUGIN VARIABLES
 #-----------------------------------------------------------------------------
+my $Plugin_need_awstats_version=5001;
 #...
 
 
+
+#-----------------------------------------------------------------------------
+# PLUGIN Init_check_Version FUNCTION
+#-----------------------------------------------------------------------------
+sub Init_timehires_Check_Version {
+       my $AWStats_Version=shift;
+       if (! $Plugin_need_awstats_version) { return 0; }
+       $AWStats_Version =~ /^(\d+)\.(\d+)/;
+       my $versionnum=($1*1000)+$2;
+       if      ($Plugin_need_awstats_version > $versionnum) {
+               my $maj=int($Plugin_need_awstats_version/1000);
+               my $min=$Plugin_need_awstats_version % 1000;
+               return "Error: AWStats version $maj.$min or higher is required.";
+       }
+       return 0;
+}
+
+
 #-----------------------------------------------------------------------------
 # PLUGIN Init_pluginname FUNCTION
 #-----------------------------------------------------------------------------
 sub Init_timehires {
-       return 1;
+       my $AWStats_Version=shift;
+       my $checkversion=Init_timehires_Check_Version($AWStats_Version);
+       return ($checkversion?$checkversion:1);
 }
 
 
index 24f380cb2834521c5b8c87cc45ca3b8a18fc6b4a..b2679deff05c6508e667732e0f796fb631be8a06 100644 (file)
 # !!!!!!! This plugin reduces AWStats speed by 40% !!!!!!!
 # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 use strict;no strict "refs";
-$Plugin_timezone=1;
 
 
 
 #-----------------------------------------------------------------------------
-# PLUGIN GLOBAL VARIABLES
+# PLUGIN VARIABLES
 #-----------------------------------------------------------------------------
-$Plugin_timezoneSeconds=0;
+my $Plugin_need_awstats_version=5001;
 #...
 
 
+
+#-----------------------------------------------------------------------------
+# PLUGIN Init_check_Version FUNCTION
+#-----------------------------------------------------------------------------
+sub Init_timezone_Check_Version {
+       my $AWStats_Version=shift;
+       if (! $Plugin_need_awstats_version) { return 0; }
+       $AWStats_Version =~ /^(\d+)\.(\d+)/;
+       my $versionnum=($1*1000)+$2;
+       if      ($Plugin_need_awstats_version > $versionnum) {
+               my $maj=int($Plugin_need_awstats_version/1000);
+               my $min=$Plugin_need_awstats_version % 1000;
+               return "Error: AWStats version $maj.$min or higher is required.";
+       }
+       return 0;
+}
+
+
 #-----------------------------------------------------------------------------
 # PLUGIN Init_pluginname FUNCTION
 #-----------------------------------------------------------------------------
 sub Init_timezone {
+       my $AWStats_Version=shift;
        my $TZ=shift;
-       if (! $TZ) { $Plugin_timezone=0; }      # We do not need this plugin if TZ=0
-       $Plugin_timezoneSeconds=($TZ*3600);
-       return 1;
+       if (! $TZ) { return "Error: Disable plugin if TimeZone is 0 (Plugin useless)"; }        # We do not need this plugin if TZ=0
+       my $checkversion=Init_timezone_Check_Version($AWStats_Version);
+       return ($checkversion?$checkversion:($TZ*3600));
 }