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;
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 eq 0;
58 my %options = GetUserOptions $userid;
59 $history = $options{"History"};
60 my $timestamp = SubtractDays (Today2SQLDatetime, $history);
62 $nbr_emails = CleanEmail $timestamp;
63 $nbr_log_entries = CleanLog $timestamp;
64 $nbr_list_entries = CleanList $timestamp, "null";
65 $users_emails = MAPSDB::count ("email", "userid = \"$userid\"");
68 return ($nbr_emails, $nbr_log_entries, $nbr_list_entries, $users_emails);
72 my $handle = FindUser;
74 #$~ = "REPORT" if $verbose;
76 while (($userid) = GetUser $handle) {
77 last if !defined $userid;
79 my ($emails, $log_entries, $list_entries, $users_emails) = CleanUp $userid;
80 $total_emails += $emails;
81 $total_log_entries += $log_entries;
82 $total_list_entries += $list_entries;
83 $total_users_emails += $users_emails;
91 $nbr_emails = $total_emails;
92 $nbr_log_entries = $total_log_entries;
93 $nbr_list_entries = $total_list_entries;
94 $users_emails = $total_users_emails;
98 # Now optimize the database