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
|
#!/usr/local/bin/perl
# edit_limits.cgi
# Display access control and usage limits for this domain's user
require './virtual-server-lib.pl';
&ReadParse();
$d = &get_domain($in{'dom'});
$access{'edit'} == 1 && &can_edit_domain($d) || &error($text{'edit_ecannot'});
# Validate and store inputs
&error_setup($text{'limits_err'});
$in{'mailboxlimit_def'} || $in{'mailboxlimit'} =~ /^[1-9]\d*$/ ||
&error($text{'setup_emailboxlimit'});
$d->{'mailboxlimit'} = $in{'mailboxlimit_def'} ? undef : $in{'mailboxlimit'};
$in{'dbslimit_def'} || $in{'dbslimit'} =~ /^[1-9]\d*$/ ||
&error($text{'setup_edbslimit'});
$d->{'dbslimit'} = $in{'dbslimit_def'} ? undef : $in{'dbslimit'};
$in{'domslimit_def'} || $in{'domslimit'} =~ /^\d+$/ ||
&error($text{'limit_edoms'});
$d->{'domslimit'} = $in{'domslimit_def'} == 1 ? undef :
$in{'domslimit_def'} == 2 ? "*" : $in{'domslimit'};
$d->{'nodbname'} = $in{'nodbname'};
$d->{'norename'} = $in{'norename'};
$d->{'forceunder'} = $in{'forceunder'};
%sel_features = map { $_, 1 } split(/\0/, $in{'features'});
foreach $f (@opt_features, "virt", @feature_plugins) {
$d->{"limit_".$f} = $sel_features{$f};
}
# Update files
&set_all_null_print();
&save_domain($d);
&modify_webmin($d, $d);
&run_post_actions();
&webmin_log("limits", "domain", $d->{'dom'}, $d);
&redirect("edit_domain.cgi?dom=$in{'dom'}");
|