]> git.mxchange.org Git - mailer.git/blobdiff - inc/modules/admin/what-list_autopurge.php
A lot while() conditions rewritten to SQL_FETCHARRAY(), see bug #107, @TODO tags...
[mailer.git] / inc / modules / admin / what-list_autopurge.php
index a66eff4229c6949e63016694fb2602bd943e58c4..83de762679c8b0da0c296dc6a541071fe75ce744 100644 (file)
  ************************************************************************/
 
 // Some security stuff...
-if ((ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) || (!IS_ADMIN()))
-{
+if ((!defined('__SECURITY')) || (!IS_ADMIN())) {
        $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
        require($INC);
 }
+
 // Add description as navigation point
-ADD_DESCR("admin", basename(__FILE__));
+ADD_DESCR("admin", __FILE__);
 
-// Ok, let's have a look...
-$since = bigintval(time() - $_CONFIG['ap_in_since']);
-$EXCLUDE_LIST = " AND d.userid != c.def_refid";
+// Exclude default referal id if set
+$EXCLUDE_LIST = "";
+if (getConfig('def_refid') > 0) {
+       $EXCLUDE_LIST = " AND d.userid != ".getConfig('def_refid')."";
+} // END - if
 
 // Check for more extensions
-if (EXT_IS_ACTIVE("beg"))     $EXCLUDE_LIST .= " AND d.userid != c.beg_uid";
-if (EXT_IS_ACTIVE("bonus"))   $EXCLUDE_LIST .= " AND d.userid != c.bonus_uid";
-if (EXT_IS_ACTIVE("doubler")) $EXCLUDE_LIST .= " AND d.userid != c.doubler_uid";
+// @TODO Rewrite those lines to filter
+if (EXT_IS_ACTIVE("beg"))                  $EXCLUDE_LIST .= " AND d.userid != ".getConfig('beg_uid')."";
+if (EXT_IS_ACTIVE("bonus"))                $EXCLUDE_LIST .= " AND d.userid != ".getConfig('bonus_uid')."";
+if (EXT_IS_ACTIVE("doubler"))              $EXCLUDE_LIST .= " AND d.userid != ".getConfig('doubler_uid')."";
+if (GET_EXT_VERSION("holiday") >= "0.1.3") $EXCLUDE_LIST .= " AND d.holiday_active='N'";
 
 // Check for all accounts
-$result = SQL_QUERY_ESC("SELECT DISTINCT d.userid, d.sex, d.surname, d.family, d.email, d.joined, d.last_online, d.ap_notified
-FROM "._MYSQL_PREFIX."_user_data AS d, "._MYSQL_PREFIX."_config AS c
-WHERE d.status='CONFIRMED' AND d.joined < %s AND d.last_online < %s AND d.ap_notified < %s
+$result = SQL_QUERY_ESC("SELECT DISTINCT d.userid, d.gender, d.surname, d.family, d.email, d.joined, d.last_online, d.ap_notified
+FROM `{!_MYSQL_PREFIX!}_user_data` AS d
+WHERE d.`status`='CONFIRMED' AND d.joined < (UNIX_TIMESTAMP() - %s) AND d.last_online < (UNIX_TIMESTAMP() - %s) AND d.ap_notified < (UNIX_TIMESTAMP() - %s)
 ".$EXCLUDE_LIST."
-ORDER BY d.userid", array($since, $since, $since), __FILE__, __LINE__);
+ORDER BY d.userid",
+       array(
+               getConfig('ap_inactive_since'),
+               getConfig('ap_inactive_since'),
+               getConfig('ap_inactive_since')
+       ), __FILE__, __LINE__);
 
-if (SQL_NUMROWS($result) > 0)
-{
+if (SQL_NUMROWS($result) > 0) {
        // Ok, we have found some inactive accounts
-       $SW = 2; $OUT = "";
-       while(list($uid, $sex, $sname, $fname, $email, $joined, $last, $notified) = SQL_FETCHROW($result))
-       {
+       $OUT = ""; $SW = 2;
+       while ($content = SQL_FETCHARRAY($result)) {
                // Prepare data for the row template
+               // @TODO Rewritings: sname->surname,fname->family in templates
                $content = array(
                        'sw'       => $SW,
-                       'uid'      => ADMIN_USER_PROFILE_LINK($uid),
-                       'sex'      => TRANSLATE_SEX($sex),
-                       'sname'    => $sname,
-                       'fname'    => $fname,
-                       'email'    => "<A href=\"".CREATE_EMAIL_LINK($email, "user_data")."\">".$email."</A>",
-                       'joined'   => MAKE_DATETIME($joined, "2"),
-                       'last'     => MAKE_DATETIME($last, "2"),
-                       'notified' => MAKE_DATETIME($notified, "2"),
+                       'uid'      => ADMIN_USER_PROFILE_LINK($content['userid']),
+                       'gender'   => TRANSLATE_GENDER($content['gender']),
+                       'sname'    => $content['surname'],
+                       'fname'    => $content['family'],
+                       'email'    => "<a href=\"".CREATE_EMAIL_LINK($content['email'], "user_data")."\">".$content['email']."</a>",
+                       'joined'   => MAKE_DATETIME($content['joined'], "2"),
+                       'last'     => MAKE_DATETIME($content['last_online'], "2"),
+                       'notified' => MAKE_DATETIME($content['ap_notified'], "2"),
                );
 
                // Load row template
@@ -82,15 +90,15 @@ if (SQL_NUMROWS($result) > 0)
 
        // Free memory
        SQL_FREERESULT($result);
+       // @TODO Rewrite this constant
        define('__AUTOPURGE_ROWS', $OUT);
 
        // Load main template
        LOAD_TEMPLATE("admin_list_autopurge");
-}
- else
-{
+} else {
        // All members are active or you don't have any registered
-       LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_AUTOPURGE_ALL_ACTIVE);
+       LOAD_TEMPLATE("admin_settings_saved", false, getMessage('ADMIN_AUTOPURGE_ALL_ACTIVE'));
 }
+
 //
 ?>