3 # Save default user inputs from edit_configs.cgi
5 require './usermin-lib.pl';
6 require '../config-lib.pl';
7 $access{'configs'} || &error($text{'acl_ecannot'});
9 &can_use_module($in{'mod'}) || &error($text{'configs_ecannot'});
11 &error_setup($text{'config_err'});
12 &get_usermin_miniserv_config(\%miniserv);
14 mkdir("$config{'usermin_dir'}/$m", 0700);
15 &lock_file("$config{'usermin_dir'}/$m/uconfig");
16 &read_file("$config{'usermin_dir'}/$m/uconfig", \%uconfig);
18 &parse_config(\%uconfig, "$miniserv{'root'}/$m/uconfig.info");
20 &write_file("$config{'usermin_dir'}/$m/uconfig", \%uconfig);
21 &unlock_file("$config{'usermin_dir'}/$m/uconfig");
23 # Save the preferences config as well
24 mkdir("$config{'usermin_dir'}/$m", 0700);
25 &lock_file("$config{'usermin_dir'}/$m/config");
26 &read_file("$config{'usermin_dir'}/$m/config", \%mconfig);
27 $mconfig{'noprefs'} = $in{'noprefs'} == 1 ? 1 : 0;
28 &write_file("$config{'usermin_dir'}/$m/config", \%mconfig);
29 &unlock_file("$config{'usermin_dir'}/$m/config");
31 # Save allowed options
32 %canconfig = map { $_, 1 } split(/\0/, $in{'_can'});
33 $canfile = "$config{'usermin_dir'}/$in{'mod'}/canconfig";
34 if ($in{'noprefs'} == 2) {
36 &write_file($canfile, \%canconfig);
39 # All are allowed (or denied)
40 &unlink_file($canfile);
43 &webmin_log("uconfig", undef, undef, \%in);
44 &redirect("list_configs.cgi");