Server IP : 195.201.23.43 / Your IP : 3.144.132.48 Web Server : Apache System : Linux webserver2.vercom.be 5.4.0-192-generic #212-Ubuntu SMP Fri Jul 5 09:47:39 UTC 2024 x86_64 User : kdecoratie ( 1041) PHP Version : 7.1.33-63+ubuntu20.04.1+deb.sury.org+1 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/kdecoratie/cgi-bin/plugins/ |
Upload File : |
#!/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 which contains 2 # columns separated by a tab char, and store it in DirData directory. # First column is authenticated user login and second column is text you want # to add. #----------------------------------------------------------------------------- # Perl Required Modules: None #----------------------------------------------------------------------------- # <----- # ENTER HERE THE USE COMMAND FOR ALL REQUIRED PERL MODULES #if (!eval ('require "TheModule.pm";')) { return $@?"Error: $@":"Error: Need Perl module TheModule"; } # -----> #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(" Plugin userinfo: 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 columns to Authenticated users report. # This function is called when building rows of the report (One call for each # row). So it allows you to add a column in report, for example with code : # print "<TD>This is a new cell</TD>"; # Parameters: User #----------------------------------------------------------------------------- sub ShowInfoUser_userinfo { my $param="$_[0]"; # <----- my $filetoload=''; if ($param && $param ne '__title__' && ! $userinfoloaded) { # Load userinfo file if ($SiteConfig && open(USERINFOFILE,"$DirData/userinfo.$SiteConfig.txt")) { $filetoload="$DirData/userinfo.$SiteConfig.txt"; } elsif (open(USERINFOFILE,"$DirData/userinfo.txt")) { $filetoload="$DirData/userinfo.txt"; } else { error("Couldn't open UserInfo file \"$DirData/userinfo.txt\": $!"); } # This is the fastest way to load with regexp that I know %UserInfo = map(/^([^\t]+)\t+([^\t]+)/o,<USERINFOFILE>); close USERINFOFILE; debug(" Plugin userinfo: UserInfo file loaded: ".(scalar keys %UserInfo)." entries found."); $userinfoloaded=1; } if ($param eq '__title__') { print "<th>$Message[114]</th>"; } elsif ($param) { print "<td>"; if ($UserInfo{$param}) { print "$UserInfo{$param}"; } else { print " "; } # Undefined user info print "</td>"; } else { print "<td> </td>"; } return 1; # -----> } 1; # Do not remove this linePrivate