Current Path : /home/tools/awstats/plugins/ |
FreeBSD hs32.drive.ne.jp 9.1-RELEASE FreeBSD 9.1-RELEASE #1: Wed Jan 14 12:18:08 JST 2015 root@hs32.drive.ne.jp:/sys/amd64/compile/hs32 amd64 |
Current File : //home/tools/awstats/plugins/userinfo.pm |
#!/usr/bin/perl #----------------------------------------------------------------------------- # UserInfo AWStats plugin # This plugin allow you to add information on authenticated users chart from # a text file. Like full user name and lastname. # You must create a file called userinfo.configvalue.txt and store it in # plugin directory that contains 2 columns separated by a tab char. # First column is authenticated user login and second column is text # you want add. #----------------------------------------------------------------------------- # Perl Required Modules: None #----------------------------------------------------------------------------- # $Revision: 1.3 $ - $Author: eldy $ - $Date: 2003/09/16 17:00:53 $ # <----- # ENTER HERE THE USE COMMAND FOR ALL REQUIRED PERL MODULES. # -----> use strict;no strict "refs"; #----------------------------------------------------------------------------- # PLUGIN VARIABLES #----------------------------------------------------------------------------- # <----- # ENTER HERE THE MINIMUM AWSTATS VERSION REQUIRED BY YOUR PLUGIN # AND THE NAME OF ALL FUNCTIONS THE PLUGIN MANAGE. my $PluginNeedAWStatsVersion="5.5"; my $PluginHooksFunctions="ShowInfoUser"; # -----> # <----- # IF YOUR PLUGIN NEED GLOBAL VARIABLES, THEY MUST BE DECLARED HERE. use vars qw/ $userinfoloaded %UserInfo /; # -----> #----------------------------------------------------------------------------- # PLUGIN FUNCTION: Init_pluginname #----------------------------------------------------------------------------- sub Init_userinfo { my $InitParams=shift; my $checkversion=&Check_Plugin_Version($PluginNeedAWStatsVersion); # <----- # ENTER HERE CODE TO DO INIT PLUGIN ACTIONS debug(" InitParams=$InitParams",1); $userinfoloaded=0; %UserInfo=(); # -----> return ($checkversion?$checkversion:"$PluginHooksFunctions"); } #----------------------------------------------------------------------------- # PLUGIN FUNCTION: ShowInfoUser_pluginname # UNIQUE: NO (Several plugins using this function can be loaded) # Function called to add additionnal information for Users in users' report. # Parameters: URL #----------------------------------------------------------------------------- sub ShowInfoUser_userinfo { # <----- my $userinfotoshow="$_[0]"; if ($userinfotoshow && ! $userinfoloaded) { # Load userinfo file my $filetoload=''; if ($SiteConfig && open(USERINFOFILE,"$PluginDir/userinfo.$SiteConfig.txt")) { $filetoload="$PluginDir/userinfo.$SiteConfig.txt"; } elsif (open(USERINFOFILE,"$PluginDir/userinfo.txt")) { $filetoload="$PluginDir/userinfo.txt"; } else { error("Couldn't open UserInfo file \"$PluginDir/userinfo.txt\": $!"); } # This is the fastest way to load with regexp that I know %UserInfo = map(/^([^\t]+)\t+([^\t]+)/o,<USERINFOFILE>); close USERINFOFILE; debug("UserInfo file loaded: ".(scalar keys %UserInfo)." entries found."); $userinfoloaded=1; } if ($userinfotoshow) { if ($UserInfo{$userinfotoshow}) { print "<td>$UserInfo{$userinfotoshow}</td>"; } else { print "<td> </td>"; } # Undefined user info } else { print "<td> </td>"; } # User info title return 1; # -----> } 1; # Do not remove this line