3 # Save an entire config file
5 require './apache-lib.pl';
7 $access{'types'} eq '*' && $access{'virts'} eq '*' ||
8 &error($text{'manual_ecannot'});
10 $conf = &get_config();
11 @files = &unique(map { $_->{'file'} } @$conf);
12 &indexof($in{'file'}, @files) >= 0 || &error($text{'manual_efile'});
15 &execute_command("cp ".quotemeta($in{'file'})." $temp");
16 $in{'data'} =~ s/\r//g;
17 &lock_file($in{'file'});
18 &open_tempfile(FILE, ">$in{'file'}");
19 &print_tempfile(FILE, $in{'data'});
20 &close_tempfile(FILE);
21 &unlock_file($in{'file'});
22 if ($config{'test_manual'}) {
23 $err = &test_config();
25 &execute_command("mv $temp '$in{'file'}'");
26 &error(&text('manual_etest', "<pre>$err</pre>"));
30 &webmin_log("manual", undef, undef, { 'file' => $in{'file'} });