Changes for 2.1.3:
[BackupPC.git] / cgi-bin / BackupPC_Admin
index c99ba4c..8dbcadf 100755 (executable)
@@ -1,4 +1,4 @@
-#!/bin/perl -T
+#!/bin/perl
 #============================================================= -*-perl-*-w
 #
 # BackupPC_Admin: Apache/CGI interface for BackupPC.
@@ -39,7 +39,7 @@
 #
 #========================================================================
 #
-# Version 2.1.0_CVS, released 3 Jul 2003.
+# Version 2.1.3, released 21 Jan 2007.
 #
 # See http://backuppc.sourceforge.net.
 #
@@ -49,7 +49,7 @@ use strict;
 no  utf8;
 use CGI;
 use CGI::Carp qw(fatalsToBrowser);
-use lib "/usr/local/BackupPC/lib";
+use lib "/usr/local/BackupPC2.1.0/lib";
 
 use BackupPC::Lib;
 use BackupPC::CGI::Lib qw(:all);
@@ -61,6 +61,7 @@ my %ActionDispatch = (
     $Lang->{Start_Incr_Backup}   => "StartStopBackup",
     $Lang->{Start_Full_Backup}   => "StartStopBackup",
     $Lang->{Stop_Dequeue_Backup} => "StartStopBackup",
+    $Lang->{Stop_Dequeue_Archive} => "StartStopBackup",
     "queue"                     => "Queue",
     "view"                      => "View",
     "LOGlist"                   => "LOGlist",
@@ -72,6 +73,13 @@ my %ActionDispatch = (
     "hostInfo"                  => "HostInfo",
     "generalInfo"               => "GeneralInfo",
     "restoreInfo"               => "RestoreInfo",
+    "archiveInfo"               => "ArchiveInfo",
+    $Lang->{Start_Archive}       => "Archive",
+    "Archive"                    => "Archive",
+    "Reload"                     => "ReloadServer",
+    "startServer"                => "StartServer",
+    "Stop"                       => "StopServer",
+    "adminOpts"                  => "AdminOptions",
 );
 
 #
@@ -80,6 +88,19 @@ my %ActionDispatch = (
 $In{action} ||= "hostInfo"    if ( defined($In{host}) );
 $In{action}   = "generalInfo" if ( !defined($ActionDispatch{$In{action}}) );
 my $action    = $ActionDispatch{$In{action}};
+
+#
+# For some reason under mod_perl, the use lib above is unreliable,
+# and sometimes the module below cannot be found.  Explicitly push
+# the directory onto INC if it is missing.  This is an ugly hack;
+# need to figure out what's really going on...
+#
+my $installDir = '/usr/local/BackupPC2.1.0/lib';
+push(@INC, $installDir) if ( !grep($_ eq $installDir, @INC) );
+
+#
+# Load the relevant action script and run it
+#
 require "BackupPC/CGI/$action.pm"
            if ( !defined($BackupPC::CGI::{"${action}::"}) );
 $BackupPC::CGI::{"${action}::"}{action}();