2 ################################################################################
4 # File: $RCSfile: mapsscrub,v $
5 # Revision: $Revision: 1.1 $
6 # Description: This script scrubs messages from the MAPS database based on the
8 # Author: Andrew@DeFaria.com
9 # Created: Fri Nov 29 14:17:21 2002
10 # Modified: $Date: 2013/06/12 14:05:47 $
13 # (c) Copyright 2000-2006, Andrew@DeFaria.com, all rights reserved.
15 ################################################################################
21 use lib "$FindBin::Bin/../lib";
27 my $verbose = defined $ARGV[0] && $ARGV[0] eq "-v" ? 1 : 0;
29 my $total_log_entries = 0;
30 my $total_list_entries = 0;
31 my $total_users_emails = 0;
33 my ($history, $nbr_emails, $nbr_log_entries, $nbr_list_entries, $users_emails);
36 @<<<<<<<<<<<<<<<< @>> @##### @##### @##### @#####
37 $userid,$history,$nbr_emails,$nbr_log_entries,$nbr_list_entries,$users_emails
40 @||||||||||||||||||||||||||||||||||||||||||||||||
43 User ID Age Email Log List User's Emails
44 ----------------- --- ------ ------ ------ -------------
50 return if $verbose == 0;
58 my %options = GetUserOptions($userid);
60 $history = $options{"History"};
62 my $timestamp = SubtractDays(Today2SQLDatetime, $history);
64 $nbr_emails = CleanEmail $timestamp;
65 $nbr_log_entries = CleanLog $timestamp;
66 $nbr_list_entries = CleanList $timestamp, "null";
67 $users_emails = count("email", "userid = \"$userid\"");
71 return ($nbr_emails, $nbr_log_entries, $nbr_list_entries, $users_emails);
75 my $handle = FindUser;
77 #$~ = "REPORT" if $verbose;
79 while (($userid) = GetUser($handle)) {
84 my ($emails, $log_entries, $list_entries, $users_emails) = CleanUp($userid);
86 $total_emails += $emails;
87 $total_log_entries += $log_entries;
88 $total_list_entries += $list_entries;
89 $total_users_emails += $users_emails;
97 $nbr_emails = $total_emails;
98 $nbr_log_entries = $total_log_entries;
99 $nbr_list_entries = $total_list_entries;
100 $users_emails = $total_users_emails;
104 # Now optimize the database