use Pod::Usage;
use DateUtils;
+use Display;
use Logger;
use MAPS;
use Utils;
my %opts = (
usage => sub { pod2usage },
help => sub { pod2usage (-verbose => 2)},
+ verbose => sub { set_verbose },
+ debug => sub { set_debug },
optimize => 1,
);
-my ($userid, $log, %total);
+my ($log, %total);
sub CleanUp($) {
my ($userid) = @_;
my $timestamp = SubtractDays(Today2SQLDatetime, $options{History});
- $total{'Emails cleaned'} = CleanEmail $timestamp;
- $total{'Log entries removed'} = CleanLog $timestamp;
+ $total{'Emails cleaned'} = CleanEmail $timestamp, $opts{dryrun};
+ $total{'Log entries removed'} = CleanLog $timestamp, $opts{dryrun};
for (qw(white black null)) {
- $total{"${_}list entries removed"} = CleanList(
+ my $listname = ucfirst($_) . 'list entries removed';
+
+ $total{$listname} = CleanList(
userid => $userid,
type => $_,
log => $log,
+ dryrun => $opts{dryrun},
);
} # for
'debug',
'userid=s',
'optimize!',
+ 'dryrun',
) or pod2usage;
$log = Logger->new(
FindUser(%opts{userid});
-#$~ = "REPORT" if $verbose;
-
while (my $rec = GetUser) {
SetContext($rec->{userid});
} # while
# Now optimize the database
-OptimizeDB if $opts{optimize};
+if ($opts{optimize}) {
+ OptimizeDB;
+
+ $log->msg('Database optimized');
+} # if
exit;