// 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')) {
$month = getMonth();
$year = getYear();
-// Init variable
+// Init variables
$lastOnline = '';
+$excludeSql = '';
// Shall I include only active members?
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
+
+// Is ext-holiday installed?
+// @TODO Rewrite these if() blocks to a filter
+if (isExtensionActive('holiday')) {
+ // Exclude those as well
+ $excludeSql .= " AND `d`.`holiday_active`='N'";
} // END - if
// Only confirmed members shall receive birthday mails...
$result_birthday = SQL_QUERY_ESC("SELECT
- `userid`,
- `email`,
- `birth_year`
+ `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)) {