Merge branch 'master' of git+ssh://github.com/adefaria/clearscm
[clearscm.git] / maps / bin / mapsscrub
index 2f854b4..ab724eb 100755 (executable)
@@ -2,9 +2,9 @@
 ################################################################################
 #
 # File:         $RCSfile: mapsscrub,v $
-# Revision:    $Revision: 1.1 $
+# Revision:     $Revision: 1.1 $
 # Description:  This script scrubs messages from the MAPS database based on the
-#              users settings.
+#               users settings.
 # Author:       Andrew@DeFaria.com
 # Created:      Fri Nov 29 14:17:21  2002
 # Modified:     $Date: 2013/06/12 14:05:47 $
@@ -18,17 +18,17 @@ use warnings;
 
 use FindBin;
 
-use lib $FindBin::Bin;
+use lib "$FindBin::Bin/../lib";
 
 use MAPS;
 use MAPSUtil;
 
 my $userid;
-my $verbose            = defined $ARGV[0] && $ARGV[0] eq "-v" ? 1 : 0;
-my $total_emails       = 0;
-my $total_log_entries  = 0;
-my $total_list_entries = 0;
-my $total_users_emails = 0;
+my $verbose            = defined $ARGV[0] && $ARGV[0] eq "-v" ? 1 : 0;
+my $total_emails       = 0;
+my $total_log_entries  = 0;
+my $total_list_entries = 0;
+my $total_users_emails = 0;
 
 my ($history, $nbr_emails, $nbr_log_entries, $nbr_list_entries, $users_emails);
 
@@ -44,25 +44,28 @@ User ID           Age  Email    Log   List User's Emails
 ----------------- --- ------ ------ ------ -------------
 .
 
-sub verbose {
-  my $msg = shift;
+sub verbose($) {
+  my ($msg) = @_;
 
-  return if $verbose eq 0;
+  return if $verbose == 0;
 
   print "$msg\n";
 } # verbose
 
-sub CleanUp {
-  my $userid = shift;
+sub CleanUp($) {
+  my ($userid) = @_;
+
+  my %options = GetUserOptions($userid);
 
-  my %options = GetUserOptions $userid;
   $history = $options{"History"};
-  my $timestamp = SubtractDays (Today2SQLDatetime, $history);
 
-  $nbr_emails          = CleanEmail $timestamp;
-  $nbr_log_entries     = CleanLog $timestamp;
-  $nbr_list_entries    = CleanList $timestamp, "null";
-  $users_emails                = MAPSDB::count ("email", "userid = \"$userid\"");
+  my $timestamp = SubtractDays(Today2SQLDatetime, $history);
+
+  $nbr_emails       = CleanEmail $timestamp;
+  $nbr_log_entries  = CleanLog $timestamp;
+  $nbr_list_entries = CleanList $timestamp, "null";
+  $users_emails     = count("email", "userid = \"$userid\"");
+
   write () if $verbose;
 
   return ($nbr_emails, $nbr_log_entries, $nbr_list_entries, $users_emails);
@@ -73,26 +76,29 @@ my $handle = FindUser;
 
 #$~ = "REPORT" if $verbose;
 
-while (($userid) = GetUser $handle) {
-  last if !defined $userid;
-  SetContext $userid;
-  my ($emails, $log_entries, $list_entries, $users_emails) = CleanUp $userid;
-  $total_emails                += $emails;
-  $total_log_entries   += $log_entries;
-  $total_list_entries  += $list_entries;
-  $total_users_emails  += $users_emails;
+while (($userid) = GetUser($handle)) {
+  last unless $userid;
+
+  SetContext($userid);
+
+  my ($emails, $log_entries, $list_entries, $users_emails) = CleanUp($userid);
+
+  $total_emails       += $emails;
+  $total_log_entries  += $log_entries;
+  $total_list_entries += $list_entries;
+  $total_users_emails += $users_emails;
 } # while
 
 $handle->finish;
 
 if ($verbose) {
-  $userid              = "Total:";
-  $history             = "n/a";
-  $nbr_emails          = $total_emails;
-  $nbr_log_entries     = $total_log_entries;
-  $nbr_list_entries    = $total_list_entries;
-  $users_emails                = $total_users_emails;
-  write ();
+  $userid           = "Total:";
+  $history          = "n/a";
+  $nbr_emails       = $total_emails;
+  $nbr_log_entries  = $total_log_entries;
+  $nbr_list_entries = $total_list_entries;
+  $users_emails     = $total_users_emails;
+  write();
 } # if
 
 # Now optimize the database