1 #============================================================= -*-perl-*-
3 # BackupPC::CGI::LOGlist package
7 # This module implements the LOGlist action for the CGI interface.
10 # Craig Barratt <cbarratt@users.sourceforge.net>
13 # Copyright (C) 2003-2007 Craig Barratt
15 # This program is free software; you can redistribute it and/or modify
16 # it under the terms of the GNU General Public License as published by
17 # the Free Software Foundation; either version 2 of the License, or
18 # (at your option) any later version.
20 # This program is distributed in the hope that it will be useful,
21 # but WITHOUT ANY WARRANTY; without even the implied warranty of
22 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23 # GNU General Public License for more details.
25 # You should have received a copy of the GNU General Public License
26 # along with this program; if not, write to the Free Software
27 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
29 #========================================================================
31 # Version 3.1.0, released 25 Nov 2007.
33 # See http://backuppc.sourceforge.net.
35 #========================================================================
37 package BackupPC::CGI::LOGlist;
40 use BackupPC::CGI::Lib qw(:all);
44 my $Privileged = CheckPermission($In{host});
47 ErrorExit($Lang->{Only_privileged_users_can_view_log_files});
50 my($url0, $hdr, @files, $str);
52 $url0 = "&host=${EscURI($host)}";
53 $hdr = "for host $host";
59 foreach my $file ( $bpc->sortedPCLogFiles($host) ) {
60 my $url1 = "&num=$1" if ( $file =~ /LOG\.(\d+)(\.z)?$/ );
61 $url1 = "&num=" if ( $file =~ /LOG(\.z)?$/ );
62 next if ( !-f $file );
63 my $mtimeStr = $bpc->timeStamp((stat($file))[9], 1);
64 my $size = (stat($file))[7];
65 (my $fStr = $file) =~ s{.*/}{};
67 <tr><td> <a href="$MyURL?action=view&type=LOG$url0$url1"><tt>$fStr</tt></a></td>
68 <td align="right"> $size </td>
69 <td> $mtimeStr </td></tr>
72 my $content = eval("qq{$Lang->{Log_File_History__hdr}}");
73 Header($Lang->{BackupPC__Log_File_History},
74 $content, !-f "$TopDir/pc/$host/backups");
82 my $na = $1 if ( $a =~ /LOG\.(\d+)/ );
83 my $nb = $1 if ( $b =~ /LOG\.(\d+)/ );
85 if ( length($na) >= 5 && length($nb) >= 5 ) {
87 # Both new style. Bigger numbers are more recent.
90 } elsif ( length($na) >= 5 && length($nb) < 5 ) {
92 } elsif ( length($na) < 5 && length($nb) >= 5 ) {
96 # Both old style. Smaller numbers are more recent.