X-Git-Url: http://git.rot13.org/?p=BackupPC.git;a=blobdiff_plain;f=lib%2FBackupPC%2FCGI%2FSummary.pm;h=697ec523571290231dd76a406897d02f5c00509e;hp=71bbdeb142a9ab5308e37e94eecb8fb4a55a0003;hb=refs%2Ftags%2Fv3_2_0;hpb=e951f787a66c5bd9e9955c3f657a5b44289c0fe1 diff --git a/lib/BackupPC/CGI/Summary.pm b/lib/BackupPC/CGI/Summary.pm index 71bbdeb..697ec52 100644 --- a/lib/BackupPC/CGI/Summary.pm +++ b/lib/BackupPC/CGI/Summary.pm @@ -10,7 +10,7 @@ # Craig Barratt # # COPYRIGHT -# Copyright (C) 2003 Craig Barratt +# Copyright (C) 2003-2009 Craig Barratt # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -28,7 +28,7 @@ # #======================================================================== # -# Version 2.1.0, released 20 Jun 2004. +# Version 3.2.0, released 31 Jul 2010. # # See http://backuppc.sourceforge.net. # @@ -45,15 +45,16 @@ sub action $strNone, $strGood, $hostCntGood, $hostCntNone); $hostCntGood = $hostCntNone = 0; - GetStatusInfo("hosts"); + GetStatusInfo("hosts info"); my $Privileged = CheckPermission(); foreach my $host ( GetUserHosts(1) ) { - my($fullDur, $incrCnt, $incrAge, $fullSize, $fullRate, $reasonHilite); + my($fullDur, $incrCnt, $incrAge, $fullSize, $fullRate, $reasonHilite, + $lastAge, $tempState, $tempReason, $lastXferErrors); my($shortErr); my @Backups = $bpc->BackupInfoRead($host); my $fullCnt = $incrCnt = 0; - my $fullAge = $incrAge = -1; + my $fullAge = $incrAge = $lastAge = -1; $bpc->ConfigRead($host); %Conf = $bpc->Conf(); @@ -78,6 +79,16 @@ sub action $incrSizeTot += $Backups[$i]{size} / (1024 * 1024); } } + if ( $fullAge > $incrAge && $fullAge >= 0 ) { + $lastAge = $fullAge; + } else { + $lastAge = $incrAge; + } + if ( $lastAge < 0 ) { + $lastAge = ""; + } else { + $lastAge = sprintf("%.1f", (time - $lastAge) / (24 * 3600)); + } if ( $fullAge < 0 ) { $fullAge = ""; $fullRate = ""; @@ -95,28 +106,50 @@ sub action $incrTot += $incrCnt; $fullSize = sprintf("%.2f", $fullSize / 1000); $incrAge = " " if ( $incrAge eq "" ); + $lastXferErrors = $Backups[@Backups-1]{xferErrs} if ( @Backups ); $reasonHilite = $Conf{CgiStatusHilightColor}{$Status{$host}{reason}} || $Conf{CgiStatusHilightColor}{$Status{$host}{state}}; + if ( $Conf{BackupsDisable} == 1 ) { + if ( $Status{$host}{state} ne "Status_backup_in_progress" + && $Status{$host}{state} ne "Status_restore_in_progress" ) { + $reasonHilite = $Conf{CgiStatusHilightColor}{Disabled_OnlyManualBackups}; + $tempState = "Disabled_OnlyManualBackups"; + $tempReason = ""; + } else { + $tempState = $Status{$host}{state}; + $tempReason = $Status{$host}{reason}; + } + } elsif ($Conf{BackupsDisable} == 2 ) { + $reasonHilite = $Conf{CgiStatusHilightColor}{Disabled_AllBackupsDisabled}; + $tempState = "Disabled_AllBackupsDisabled"; + $tempReason = ""; + } else { + $tempState = $Status{$host}{state}; + $tempReason = $Status{$host}{reason}; + } $reasonHilite = " bgcolor=\"$reasonHilite\"" if ( $reasonHilite ne "" ); - if ( $Status{$host}{state} ne "Status_backup_in_progress" - && $Status{$host}{state} ne "Status_restore_in_progress" + if ( $tempState ne "Status_backup_in_progress" + && $tempState ne "Status_restore_in_progress" + && $Conf{BackupsDisable} == 0 && $Status{$host}{error} ne "" ) { ($shortErr = $Status{$host}{error}) =~ s/(.{48}).*/$1.../; $shortErr = " ($shortErr)"; } $str = < ${HostLink($host)} +${HostLink($host)} ${UserLink(defined($Hosts->{$host}) ? $Hosts->{$host}{user} : "")} - $fullCnt - $fullAge - $fullSize - $fullRate - $incrCnt - $incrAge - $Lang->{$Status{$host}{state}} - $Lang->{$Status{$host}{reason}}$shortErr + $fullCnt + $fullAge + $fullSize + $fullRate + $incrCnt + $incrAge + $lastAge + $Lang->{$tempState} + $lastXferErrors + $Lang->{$tempReason}$shortErr EOF if ( @Backups == 0 ) { $hostCntNone++; @@ -129,6 +162,8 @@ EOF $fullSizeTot = sprintf("%.2f", $fullSizeTot / 1000); $incrSizeTot = sprintf("%.2f", $incrSizeTot / 1000); my $now = timeStamp2(time); + my $DUlastTime = timeStamp2($Info{DUlastValueTime}); + my $DUmaxTime = timeStamp2($Info{DUDailyMaxTime}); my $content = eval ("qq{$Lang->{BackupPC_Summary}}"); Header($Lang->{BackupPC__Server_Summary}, $content);