Current File : //usr/share/webmin/usermin/save_logout.cgi |
#!/usr/bin/perl
# Save per-user and group logout times options
require './usermin-lib.pl';
&error_setup($text{'logout_err'});
$access{'logout'} || &error($text{'logout_ecannot'});
&get_usermin_miniserv_config(\%miniserv);
&ReadParse();
# Save to list
for($i=0; defined($type = $in{"type_$i"}); $i++) {
next if (!$type);
$who = $in{"who_$i"};
$time = $in{"time_$i"};
if ($type == 1) {
$who =~ /^\S+$/ || &error(&text('logout_euser', $i+1));
}
elsif ($type == 2) {
$who =~ /^\S+$/ || &error(&text('logout_egroup', $i+1));
$who = "\@$who";
}
elsif ($type == 3) {
-r $who && $who =~ /^\// || &error(&text('logout_efile', $i+1));
}
$time =~ /^\d+$/ || &error(&text('logout_etime', $i+1));
push(@logout, [ $who, $time ]);
}
# Update config
$miniserv{'logouttimes'} = join(" ", map { $_->[0]."=".$_->[1] } @logout);
&lock_file($usermin_miniserv_config);
&put_usermin_miniserv_config(\%miniserv);
&unlock_file($usermin_miniserv_config);
&reload_usermin_miniserv();
&webmin_log("logout");
&redirect("");