X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fdaily%2Fdaily_birthday.php;h=2b6bcc195215858acb3717086b5d9cacd50dbe58;hp=a4de24302ce2160e2166331c9558590a6d5bf78d;hb=49acdb7a7adbcf25a8e8683b5581bfcec72b23bd;hpb=094f3a6af3b901020395eafee16b3b5e151f1137 diff --git a/inc/daily/daily_birthday.php b/inc/daily/daily_birthday.php index a4de24302c..2b6bcc1952 100644 --- a/inc/daily/daily_birthday.php +++ b/inc/daily/daily_birthday.php @@ -10,13 +10,8 @@ * -------------------------------------------------------------------- * * Kurzbeschreibung : Versendet Geburtstagsmails beim Reset * * -------------------------------------------------------------------- * - * $Revision:: $ * - * $Date:: $ * - * $Tag:: 0.2.1-FINAL $ * - * $Author:: $ * - * -------------------------------------------------------------------- * * Copyright (c) 2003 - 2009 by Roland Haeder * - * Copyright (c) 2009 - 2012 by Mailer Developer Team * + * Copyright (c) 2009 - 2015 by Mailer Developer Team * * For more information visit: http://mxchange.org * * * * This program is free software; you can redistribute it and/or modify * @@ -38,7 +33,7 @@ // Some security stuff... if (!defined('__SECURITY')) { die(); -} elseif ((!isHtmlOutputMode()) || (!isResetModeEnabled())) { +} elseif ((!isHtmlOutputMode()) || (!isDailyResetEnabled())) { // Do not execute when script is in non-HTML mode return; } elseif (!isExtensionActive('birthday')) { @@ -55,35 +50,37 @@ $day = getDay(); $month = getMonth(); $year = getYear(); -// Init variable +// Init variables $lastOnline = ''; +$excludeSql = ''; // Shall I include only active members? +// @TODO Move this out to an extension if ((getConfig('birthday_active') == 'Y') && (isExtensionActive('autopurge')) && ((getApInactiveSince() > 0))) { - $add = ' AND (UNIX_TIMESTAMP() - `last_online`) < {?ap_inactive_since?}'; + $excludeSql = ' AND (UNIX_TIMESTAMP() - `d`.`last_online`) < {?ap_inactive_since?}'; } // END - if // Only confirmed members shall receive birthday mails... -$result_birthday = SQL_QUERY_ESC("SELECT - `userid`, - `email`, - `birth_year` +$result_birthday = sqlQueryEscaped("SELECT + `d`.`userid`, + `d`.`email`, + `d`.`birth_year` FROM - `{?_MYSQL_PREFIX?}_user_data` + `{?_MYSQL_PREFIX?}_user_data` AS `d` WHERE - `status`='CONFIRMED' - " . runFilterChain('user_exclusion_sql', ' ') . " AND - `birth_day`=%s AND - `birth_month`=%s AND - `birthday_sent` < (UNIX_TIMESTAMP() - ({?ONE_DAY?} * 364)) - ".$lastOnline." + `d`.`status`='CONFIRMED' + " . runFilterChain('user_exclusion_sql', ' ' . $excludeSql) . " AND + `d`.`birth_day`=%s AND + `d`.`birth_month`=%s AND + `d`.`birthday_sent` < (UNIX_TIMESTAMP() - ({?ONE_DAY?} * 364)) + " . $lastOnline . " ORDER BY - `userid` ASC", + `d`.`userid` ASC", array($day, $month), __FILE__, __LINE__); -if (!SQL_HASZERONUMS($result_birthday)) { +if (!ifSqlHasZeroNumRows($result_birthday)) { // Start sending out birthday mails - while ($content = SQL_FETCHARRAY($result_birthday)) { + while ($content = sqlFetchArray($result_birthday)) { // Calculate own timestamp for birthday and today $bd = $content['birth_year'] + 12 * $month + 365 * $day; $now = $year + 12 * $month + 365 * $day; @@ -96,13 +93,13 @@ if (!SQL_HASZERONUMS($result_birthday)) { $content['age'] = $age; $content['check'] = ''; - // @TODO 4 is hard-coded here, should we move it out in config? + // Generate long random code 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,{?birthday_points?},'%s' )", + sqlQueryEscaped("INSERT INTO `{?_MYSQL_PREFIX?}_user_birthday` (`userid`, `points`, `chk_value`) VALUES (%s,{?birthday_points?},'%s' )", array( bigintval($content['userid']), $content['check'] @@ -119,12 +116,12 @@ if (!SQL_HASZERONUMS($result_birthday)) { sendEmail($content['userid'], '{--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", + sqlQueryEscaped("UPDATE `{?_MYSQL_PREFIX?}_user_data` SET `birthday_sent`=UNIX_TIMESTAMP() WHERE `userid`=%s LIMIT 1", array(bigintval($content['userid'])), __FILE__, __LINE__); } // END - while // Free memory - SQL_FREERESULT($result_birthday); + sqlFreeResult($result_birthday); } // END - if // Debug line