]> git.mxchange.org Git - mailer.git/blobdiff - inc/autopurge/purge-mails.php
Do we still need this query reset?
[mailer.git] / inc / autopurge / purge-mails.php
index 982795f103247d9d585c98bc8b7a2c208dcee5d9..f2a7020e48cf4084933921673b5e9d3811678f71 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 /************************************************************************
- * MXChange v0.2.1                                    Start: 05/29/2004 *
- * ===============                              Last change: 11/26/2004 *
+ * Mailer v0.2.1-FINAL                                Start: 05/29/2004 *
+ * ===================                          Last change: 11/26/2004 *
  *                                                                      *
  * -------------------------------------------------------------------- *
  * File              : autopurge.php                                    *
  * $Date::                                                            $ *
  * $Tag:: 0.2.1-FINAL                                                 $ *
  * $Author::                                                          $ *
- * Needs to be in all Files and every File needs "svn propset           *
- * svn:keywords Date Revision" (autoprobset!) at least!!!!!!            *
  * -------------------------------------------------------------------- *
  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
+ * Copyright (c) 2009, 2010 by Mailer Developer Team                    *
  * For more information visit: http://www.mxchange.org                  *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
@@ -42,7 +41,7 @@ if (!defined('__SECURITY')) {
 } // END - if
 
 // Abort if autopurge is not active or disabled by admin
-if ((!isExtensionActive('autopurge')) || (getConfig('auto_purge_active') != 'Y') || (getConfig('ap_del_mails') != 'Y')) {
+if ((!isExtensionActive('autopurge')) || (!isAutoPurgingActive()) || (getConfig('ap_del_mails') != 'Y')) {
        // Abort here
        return false;
 } // END - if
@@ -53,25 +52,26 @@ $result_mails = SQL_QUERY("SELECT
 FROM
        `{?_MYSQL_PREFIX?}_pool`
 WHERE
-       `data_type`='DELETED' AND `timestamp` <= (UNIX_TIMESTAMP() - {?ap_dm_timeout?})
+       `data_type`='DELETED' AND
+       `timestamp` <= (UNIX_TIMESTAMP() - {?ap_dm_timeout?})
 ORDER BY
        `sender` ASC", __FILE__, __LINE__);
 
 // Reset counter...
-$DELETED = 0;
+$deletedStats = '0';
 
 // Do we have "purged" mails?
-if (SQL_NUMROWS($result_mails) > 0) {
+if (!SQL_HASZERONUMS($result_mails)) {
        // Okay, check for their sender's
        while ($content = SQL_FETCHARRAY($result_mails)) {
                // Check now...
-               $fount = SQL_NUMROWS(SQL_QUERY_ESC("SELECT userid FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `userid`=%s LIMIT 1",
-                       array(bigintval($content['sender'])), __FILE__, __LINE__));
-               if ($found == 0) {
+               if (!fetchUserData($content['sender'])) {
                        // Okay we found some mails!
                        SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_pool` WHERE `sender`=%s",
                                array(bigintval($content['sender'])), __FILE__, __LINE__);
-                       $DELETED += SQL_AFFECTEDROWS();
+
+                       // Get all affected (deleted) rows
+                       $deletedStats += SQL_AFFECTEDROWS();
 
                        // Reset query (to prevent possible errors) ...;
                        $result_mails = SQL_QUERY("SELECT
@@ -79,60 +79,61 @@ if (SQL_NUMROWS($result_mails) > 0) {
 FROM
        `{?_MYSQL_PREFIX?}_pool`
 WHERE
-       `data_type`='DELETED' AND timestamp <= (UNIX_TIMESTAMP() - {?ap_dm_timeout?})
+       `data_type`='DELETED' AND
+       `timestamp` <= (UNIX_TIMESTAMP() - {?ap_dm_timeout?})
 ORDER BY
        `sender` ASC", __FILE__, __LINE__);
-               }
-       }
-}
+               } // END - if
+       } // END - while
+} // END - if
 
 // Free memory
 SQL_FREERESULT($result_mails);
 
 // Now let's check for stats entries as well;
 $result_mails = SQL_QUERY("SELECT
-       `userid` AS sender
+       `userid` AS `sender`
 FROM
        `{?_MYSQL_PREFIX?}_user_stats`
 WHERE
        `timestamp_send` <= (UNIX_TIMESTAMP() - {?ap_dm_timeout?})
 ORDER BY
-       `sender` ASC", __FILE__, __LINE__);
+       `userid` ASC", __FILE__, __LINE__);
 
 // Do we have "purged" mails?
-if (SQL_NUMROWS($result_mails) > 0) {
+if (!SQL_HASZERONUMS($result_mails)) {
        // Okay, check for their sender's
        while ($content = SQL_FETCHARRAY($result_mails)) {
                // Check now...
-               $found = SQL_NUMROWS(SQL_QUERY_ESC("SELECT `userid` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `userid`=%s LIMIT 1",
-                       array(bigintval($content['sender'])), __FILE__, __LINE__));
-               if ($found == 0) {
+               if (!fetchUserData($content['sender'])) {
                        // Okay we found some mails!
-                       SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_user_stats` WHERE `sender`=%s",
+                       SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_user_stats` WHERE `userid`=%s",
                                array(bigintval($content['sender'])), __FILE__, __LINE__);
-                       $DELETED += SQL_AFFECTEDROWS();
+
+                       // Get all affected (deleted) rows
+                       $deletedStats += SQL_AFFECTEDROWS();
 
                        // Reset query (to prevent possible errors) ...
                        $result_mails = SQL_QUERY("SELECT
-       `userid` AS sender
+       `userid` AS `sender`
 FROM
        `{?_MYSQL_PREFIX?}_user_stats`
 WHERE
        `timestamp_send` <= (UNIX_TIMESTAMP() - {?ap_dm_timeout?})
 ORDER BY
-       `sender` ASC", __FILE__, __LINE__);
-               }
-       }
-}
+       `userid` ASC", __FILE__, __LINE__);
+               } // END - if
+       } // END - while
+} // END - if
 
 // Free memory
 SQL_FREERESULT($result_mails);
 
 // Do we have deleted mails and the admin want's to receive a notification
-if (($DELETED > 0) && (getConfig('ap_dm_notify') == 'Y')) {
+if (($deletedStats > 0) && (getConfig('ap_dm_notify') == 'Y')) {
        // Send out email to admin
-       sendAdminNotification(getMessage('AUTOPURGE_ADMIN_DEL_MAILS_SUBJECT'), 'admin_autopurge_del_mails', $DELETED, '');
+       sendAdminNotification('{--ADMIN_AUTOPURGE_DELETE_MAILS_SUBJECT--}', 'admin_autopurge_del_mails', $deletedStats);
 } // END - if
 
-//
+// [EOF]
 ?>