| Server IP : 104.21.25.180 / Your IP : 104.23.197.122 Web Server : Apache/2.4.37 System : Linux almalinux.duckdns.org 4.18.0-553.111.1.el8_10.x86_64 #1 SMP Sun Mar 8 20:06:07 EDT 2026 x86_64 User : ricodeal ( 1046) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/libexec/webmin/virtual-server/ |
Upload File : |
#!/usr/bin/perl
# Save global cleanup rules
require './virtual-server-lib.pl';
&can_edit_templates() || &error($text{'retention_ecannot'});
&error_setup($text{'retention_err'});
&ReadParse();
&licence_status();
# Validate inputs
if ($in{'policy'} == 1) {
$in{'days'} =~ /^[1-9][0-9]*$/ ||
&error($text{'retention_edays'});
}
elsif ($in{'policy'} == 2) {
$in{'size'} =~ /^[1-9][0-9]*$/ ||
&error($text{'retention_edays'});
}
# Update config file
&lock_file($module_config_file);
$config{'retention_policy'} = $in{'policy'};
delete($config{'retention_days'});
delete($config{'retention_size'});
if ($in{'policy'} == 1) {
$config{'retention_days'} = $in{'days'};
}
elsif ($in{'policy'} == 2) {
$config{'retention_size'} = $in{'size'}*$in{'size_units'};
}
$config{'retention_mode'} = $in{'mode'};
$config{'retention_doms'} = join(" ", split(/\0/, $in{'doms'}));
$config{'retention_folders'} = $in{'folders'};
&save_module_config();
&unlock_file($module_config_file);
# Enable cron job
&setup_spamclear_cron_job();
&webmin_log("retention");
&redirect("");