File: change_ui.cgi

package info (click to toggle)
webmin-extra 1.180-4
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 12,324 kB
  • ctags: 1,200
  • sloc: perl: 39,117; makefile: 125
file content (40 lines) | stat: -rwxr-xr-x 1,552 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#!/usr/local/bin/perl
# change_ui.cgi
# Change colour scheme

require './usermin-lib.pl';
$access{'ui'} || &error($text{'acl_ecannot'});
&error_setup($text{'ui_err'});
&ReadParse();
$in{'feedback_def'} || $in{'feedback'} =~ /\S/ || &error($text{'ui_efeedback'});
$in{'feedbackmail_def'} || gethostbyname($in{'feedbackmail'}) ||
    &check_ipaddress($in{'feedbackmail'}) || &error($text{'ui_efeedbackmail'});
$in{'feedbackhost_def'} || $in{'feedbackhost'} =~ /^\S+$/ ||
	&error($text{'ui_efeedbackhost'});

&lock_file($usermin_config);
&get_usermin_config(\%uconfig);
for($i=0; $i<@webmin::cs_names; $i++) {
	$cd = $webmin::cs_codes[$i];
	if ($in{"${cd}_def"}) { delete($uconfig{$cd}); }
	elsif ($in{"${cd}_rgb"} !~ /^[0-9a-fA-F]{6}$/) {
		&error(&webmin::text('ui_ergb', $webmin::cs_names[$i]));
		}
	else { $uconfig{$cd} = $in{"${cd}_rgb"}; }
	}
$uconfig{'texttitles'} = $in{'texttitles'};
$uconfig{'sysinfo'} = $in{'sysinfo'};
$uconfig{'feedback'} = $in{'feedback_def'} ? undef : $in{'feedback'};
$uconfig{'feedbackmail'} = $in{'feedbackmail_def'} ? undef :$in{'feedbackmail'};
$uconfig{'feedbackhost'} = $in{'feedbackhost_def'} ? undef :$in{'feedbackhost'};
$uconfig{'gotoone'} = $in{'gotoone'};
$uconfig{'gotomodule'} = $in{'gotomodule'};
$uconfig{'nohostname'} = $in{'nohostname'};
$uconfig{'hostnamemode'} = $in{'hostnamemode'};
$uconfig{'hostnamedisplay'} = $in{'hostnamedisplay'};
$uconfig{'notabs'} = $in{'notabs'};
&write_file($usermin_config, \%uconfig);
&unlock_file($usermin_config);
&webmin_log('ui', undef, undef, \%in);
&redirect("");