3 # Display the configs for a usermin module
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'});
10 &ui_print_header(undef, $text{'configs_title2'}, "");
11 &get_usermin_miniserv_config(\%miniserv);
14 $prog = "edit_configs.cgi?mod=$in{'mod'}&mode=";
15 if (-r "$miniserv{'root'}/$in{'mod'}/config.info") {
16 push(@tabs, [ "global", $text{'configs_global'}, $prog."global" ]);
18 if (-r "$miniserv{'root'}/$in{'mod'}/uconfig.info") {
19 push(@tabs, [ "user", $text{'configs_user'}, $prog."user" ]);
21 print &ui_tabs_start(\@tabs, "mode", $in{'mode'} || $tabs[0]->[0], 1);
23 &read_file("$config{'usermin_dir'}/$in{'mod'}/config", \%mconfig);
24 if (-r "$miniserv{'root'}/$in{'mod'}/config.info") {
25 # Display config form for the module
26 print &ui_tabs_start_tab("mode", "global");
27 print $text{'configs_globaldesc'},"<p>\n";
28 %minfo = &get_usermin_module_info($in{'mod'});
29 print &ui_form_start("save_configs.cgi", "post");
30 print &ui_hidden("mod", $in{'mod'}),"\n";
31 print &ui_table_start(&text('config_header', $minfo{'desc'}),
34 # Use config.info to create config inputs
35 &generate_config(\%mconfig, "$miniserv{'root'}/$in{'mod'}/config.info");
36 print &ui_table_end();
37 print &ui_form_end([ [ "save", $text{'save'} ] ]);
38 print &ui_tabs_end_tab();
41 if (-r "$miniserv{'root'}/$in{'mod'}/uconfig.info") {
42 # Display default user config form for the module
43 print &ui_tabs_start_tab("mode", "user");
44 print $text{'configs_userdesc'},"<p>\n";
45 %minfo = &get_usermin_module_info($in{'mod'});
46 print &ui_form_start("save_uconfigs.cgi", "post");
47 print &ui_hidden("mod", $in{'mod'}),"\n";
48 print &ui_table_start(&text('configs_uheader', $minfo{'desc'}),
51 &read_file("$miniserv{'root'}/$in{'mod'}/defaultuconfig", \%uconfig);
52 &read_file("$config{'usermin_dir'}/$in{'mod'}/uconfig", \%uconfig);
55 &read_file("$config{'usermin_dir'}/$in{'mod'}/canconfig", \%canconfig);
56 $noprefs = $mconfig{'noprefs'} == 1 ? 1 :
59 print &ui_table_row($text{'configs_prefs'},
60 &ui_radio("noprefs", $noprefs,
61 [ [ 0, $text{'yes'} ], [ 1, $text{'no'} ],
62 [ 2, $text{'configs_sels'} ] ]));
65 # Use uconfig.info to create config inputs
66 &generate_config(\%uconfig,
67 "$miniserv{'root'}/$in{'mod'}/uconfig.info",
68 undef, $noprefs == 2 ? \%canconfig : undef, "_can");
69 print &ui_table_end();
70 print &ui_form_end([ [ "save", $text{'save'} ] ]);
71 print &ui_tabs_end_tab();
74 print &ui_tabs_end(1);
76 &ui_print_footer("list_configs.cgi", $text{'configs_return'});