<?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...
`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
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']));
}
// 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",
} // END - while
// Free memory
- SQL_FREERESULT($result);
-}
+ SQL_FREERESULT($result_birthday);
+} // END - if
+
+// Debug line
+//* DEBUG: */ logDebugMessage(__FILE__, __LINE__, 'Daily reset ended.');
// [EOF]
?>