From 4195c967cc25eefa2c1c5bc889788eacb4531fbd Mon Sep 17 00:00:00 2001 From: sullrich Date: Fri, 27 Nov 2009 16:17:03 -0500 Subject: Correctly output only selected backup area when do not backup packages is selected. Resolves #168 --- usr/local/www/diag_backup.php | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'usr') diff --git a/usr/local/www/diag_backup.php b/usr/local/www/diag_backup.php index a880a13..b3389b3 100755 --- a/usr/local/www/diag_backup.php +++ b/usr/local/www/diag_backup.php @@ -186,9 +186,18 @@ if ($_POST) { $data = ""; if($options == "nopackages") { + if(!$_POST['backuparea']) { + /* backup entire configuration */ + $data = file_get_contents("{$g['conf_path']}/config.xml"); + } else { + /* backup specific area of configuration */ + $data = backup_config_section($_POST['backuparea']); + $name = "{$_POST['backuparea']}-{$name}"; + } $sfn = "{$g['tmp_path']}/config.xml.nopkg"; - exec("sed '//,/<\/installedpackages>/d' /conf/config.xml > {$sfn}"); - $data = file_get_contents($sfn); + file_put_contents($sfn, $data); + exec("sed '//,/<\/installedpackages>/d' {$sfn} > {$sfn}-new"); + $data = file_get_contents($sfn . "-new"); } else { if(!$_POST['backuparea']) { /* backup entire configuration */ -- cgit v1.1