X-Git-Url: http://git.ipfire.org/?p=people%2Fteissler%2Fipfire-2.x.git;a=blobdiff_plain;f=html%2Fcgi-bin%2Fbackup.cgi;h=a0b2dcf1641d56415e1a7e8dfba4946c9df22e7d;hp=252f5150357f93af7eca4a0cc0655b832f585de3;hb=5ad5a6bcd654f9db982135f6c3ccc8352a2afa87;hpb=901a50cfed3edc538e2258baab5a98d28ff75790 diff --git a/html/cgi-bin/backup.cgi b/html/cgi-bin/backup.cgi index 252f51503..a0b2dcf16 100644 --- a/html/cgi-bin/backup.cgi +++ b/html/cgi-bin/backup.cgi @@ -21,8 +21,8 @@ use strict; # enable only the following on debugging purpose -use warnings; -use CGI::Carp 'fatalsToBrowser'; +#use warnings; +#use CGI::Carp 'fatalsToBrowser'; use File::Copy; require '/var/ipfire/general-functions.pl'; @@ -61,6 +61,15 @@ if ( $cgiparams{'ACTION'} eq "download" ) print @fileholder; exit (0); } +if ( $cgiparams{'ACTION'} eq "downloadaddon" ) +{ + open(DLFILE, "; + print "Content-Type:application/x-download\n"; + print "Content-Disposition:attachment;filename=$cgiparams{'FILE'}\n\n"; + print @fileholder; + exit (0); +} elsif ( $cgiparams{'ACTION'} eq "restore" ) { my $upload = $a->param("UPLOAD"); @@ -72,6 +81,18 @@ elsif ( $cgiparams{'ACTION'} eq "restore" ) close UPLOADFILE; system("/usr/local/bin/backupctrl restore >/dev/null 2>&1"); } +elsif ( $cgiparams{'ACTION'} eq "restoreaddon" ) +{ + my $upload = $a->param("UPLOAD"); + open UPLOADFILE, ">/var/$cgiparams{'UPLOAD'}"; + binmode $upload; + while ( <$upload> ) { + print UPLOADFILE; + } + close UPLOADFILE; + system("cp /var/ipfire/backup/addons/backup/$cgiparams{'UPLOAD'} /tmp/restore.ipf >/dev/null 2>&1"); + system("/usr/local/bin/backupctrl restore >/dev/null 2>&1"); +} &Header::showhttpheaders(); @@ -90,7 +111,7 @@ if ( $cgiparams{'ACTION'} eq "backup" ) } if ( $cgiparams{'ACTION'} eq "addonbackup" ) { - system("/usr/local/bin/backupctrl addonbackup $cgiparams{'ADDON'}"); + system("/usr/local/bin/backupctrl addonbackup $cgiparams{'ADDON'} >/dev/null 2>&1"); } elsif ( $cgiparams{'ACTION'} eq "delete" ) { @@ -151,19 +172,6 @@ END ; &Header::closebox(); -############################################################################################################################ -####################################### Backups des Systems wiederherstellen ############################################### - -&Header::openbox('100%', 'center', $Lang::tr{'restore'}); - -print < -$Lang::tr{'backup'}
- -END -; -&Header::closebox(); - ############################################################################################################################ ############################################# Backups von Addons erstellen ################################################# @@ -183,8 +191,8 @@ print "$Lang::tr{'backup from'} $_ $Lang::tr{'size'} $Siz print <
- - + +
@@ -214,5 +222,20 @@ END } print ""; &Header::closebox(); + +############################################################################################################################ +####################################### Backups des Systems wiederherstellen ############################################### + +&Header::openbox('100%', 'center', $Lang::tr{'restore'}); + +print < +
$Lang::tr{'backupwarning'}


+$Lang::tr{'backup'}
+$Lang::tr{'backupaddon'}
+ +END +; +&Header::closebox(); &Header::closebigbox(); &Header::closepage();