]> git.mxchange.org Git - mailer.git/blobdiff - inc/reset/reset_birthday.php
More wrapper functions introduced, duplicate language strings merged:
[mailer.git] / inc / reset / reset_birthday.php
index 2614f26b4d649fac9bf0e6c6eb6d7d8d26430680..b194ef628f45829cf204e1632717a28b04bf337d 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 /************************************************************************
- * MXChange v0.2.1                                    Start: 10/24/2009 *
- * ===============                              Last change: 10/24/2009 *
+ * Mailer v0.2.1-FINAL                                Start: 10/24/2009 *
+ * ===================                          Last change: 06/20/2010 *
  *                                                                      *
  * -------------------------------------------------------------------- *
  * File              : reset_birthday.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 *
 // Some security stuff...
 if (!defined('__SECURITY')) {
        die();
+} elseif ((!isHtmlOutputMode()) || (!isResetModeEnabled())) {
+       // Do not execute when script is in CSS mode
+       return;
 } elseif (!isExtensionActive('birthday')) {
+       logDebugMessage(__FILE__, __LINE__, 'Not resetting, needed extension disabled.');
        return;
 }
 
-// Do not execute when script is in CSS mode
-if ((getOutputMode() != 0) || (!isResetModeEnabled())) return;
-//* DEBUG: */ outputHtml(basename(__FILE__)."<br />");
+// Debug line
+//* DEBUG: */ logDebugMessage(__FILE__, __LINE__, 'Daily reset started.');
 
 // Get current day (01 to 31), month (01 to 12) and year (4-digits year)
-$day   = date('d', time());
-$month = date('m', time());
-$year  = date('Y', time());
+$day   = getDay();
+$month = getMonth();
+$year  = getYear();
 
 // Shall I include only active members?
-$add = "%s"; $value = '';
-if ((getConfig('birthday_active')) && (isExtensionActive('autopurge')) && (getConfig('autopurge_inactive') == 'Y') && (getConfig('ap_inactive_since') > 0)) {
-       $add = " AND `last_online` >= (UNIX_TIMESTAMP() - %s)";
-       $value = getConfig('ap_inactive_since');
+$add = '%s'; $value = '';
+if ((getConfig('birthday_active')) && (isExtensionActive('autopurge')) && (getConfig('autopurge_inactive') == 'Y') && (getApInactiveSince() > 0)) {
+       $add = " AND `last_online` >= (UNIX_TIMESTAMP() - {?ap_inactive_since?})";
 } // END - if
 
 // Only confirmed members shall receive birthday mails...
@@ -67,13 +68,13 @@ WHERE
        `status`='CONFIRMED' AND
        `birth_day`=%s AND
        `birth_month`=%s AND
-       `birthday_sent` < (UNIX_TIMESTAMP() - ".(getConfig('ONE_DAY') * 364).")
+       `birthday_sent` < (UNIX_TIMESTAMP() - ({?ONE_DAY?} * 364))
        ".$add."
 ORDER BY
        `userid` ASC",
        array($day, $month, $value), __FILE__, __LINE__);
 
-if (SQL_NUMROWS($result_birthday) > 0) {
+if (!SQL_HASZERONUMS($result_birthday)) {
        // Start sending out birthday mails
        while ($content = SQL_FETCHARRAY($result_birthday)) {
                // Calculate own timestamp for birthday and today
@@ -86,17 +87,19 @@ if (SQL_NUMROWS($result_birthday) > 0) {
                if (getConfig('birthday_points') > 0) {
                        // Add more entries to the array
                        $content['age']    = $age;
-                       $content['points'] = translateComma(getConfig('birthday_points'));
                        $content['check']  = '';
 
                        // @TODO 4 is hard-coded here, should we move it out in config?
-                       for ($idx = 0; $idx < 4; $idx++) {
-                               $content['check'] .= generateRandomCode("8", mt_rand(0, $month.$day), $content['userid'], ($age * ($idx + 1)));
+                       for ($idx = '0'; $idx < 4; $idx++) {
+                               $content['check'] .= generateRandomCode('8', mt_rand(0, $month . $day), $content['userid'], ($age * ($idx + 1)));
                        } // END - for
 
                        // Insert row into database
-                       SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_user_birthday` (userid, points, chk_value) VALUES ('%s','%s','%s' )",
-                               array(bigintval($content['userid']), getConfig('birthday_points'), $content['check']), __FILE__, __LINE__);
+                       SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_user_birthday` (`userid`, `points`, `chk_value`) VALUES (%s,{?birthday_points?},'%s' )",
+                               array(
+                                       bigintval($content['userid']),
+                                       $content['check']
+                               ), __FILE__, __LINE__);
 
                        // Load email template with confirmation link
                        $message = loadEmailTemplate('member_birthday_confirm', $content, bigintval($content['userid']));
@@ -106,7 +109,7 @@ if (SQL_NUMROWS($result_birthday) > 0) {
                }
 
                // Send email
-               sendEmail($content['email'], getMessage('HAPPY_BIRTHDAY'), $message);
+               sendEmail($content['email'], '{--MEMBER_HAPPY_BIRTHDAY_SUBJECT--}', $message);
 
                // Remember him that he has received a birthday mail
                SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_user_data` SET `birthday_sent`=UNIX_TIMESTAMP() WHERE `userid`=%s LIMIT 1",
@@ -114,8 +117,11 @@ if (SQL_NUMROWS($result_birthday) > 0) {
        } // END - while
 
        // Free memory
-       SQL_FREERESULT($result);
-}
+       SQL_FREERESULT($result_birthday);
+} // END - if
+
+// Debug line
+//* DEBUG: */ logDebugMessage(__FILE__, __LINE__, 'Daily reset ended.');
 
 // [EOF]
 ?>