<?php
/************************************************************************
- * MXChange v0.2.1 Start: 12/10/2005 *
- * =============== Last change: 12/10/2005 *
+ * Mailer v0.2.1-FINAL Start: 12/10/2005 *
+ * =================== Last change: 06/20/2010 *
* *
* -------------------------------------------------------------------- *
* File : reset_holiday.php *
* -------------------------------------------------------------------- *
* Kurzbeschreibung : Dinge, die beim taeglichen Reset erledigt werden *
* -------------------------------------------------------------------- *
- * *
+ * $Revision:: $ *
+ * $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 - 2008 by Roland Haeder *
+ * 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 (ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) {
- $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
- require($INC);
-} elseif ((!EXT_IS_ACTIVE("holiday")) && (!IS_ADMIN())) {
- ADD_FATAL(EXTENSION_PROBLEM_EXT_INACTIVE, "holiday");
+if (!defined('__SECURITY')) {
+ die();
+} elseif ((getOutputMode() != 0) || ((!isResetModeEnabled()) && (getConfig('holiday_mode') == 'RESET'))) {
+ // Do not execute when script is in CSS mode or no daily reset
+ return;
+} elseif (!isExtensionActive('holiday')) {
+ logDebugMessage(__FILE__, __LINE__, 'Not resetting, needed extension disabled.');
return;
}
-// Do not execute when script is in CSS mode or no daily reset
-if (($CSS == 1) || ((!isBooleanConstantAndTrue('__DAILY_RESET')) && ($_CONFIG['holiday_mode'] == "RESET"))) return;
-
// Check for holidays we need to enable and send email to user
-$result_main = SQL_QUERY("SELECT userid, holiday_activated FROM "._MYSQL_PREFIX."_user_data
-WHERE holiday_activated > 0 AND holiday_activated < UNIX_TIMESTAMP() AND holiday_active='N'
-ORDER BY holiday_activated", __FILE__, __LINE__);
+$result_main = SQL_QUERY("SELECT
+ `userid`, `holiday_activated`
+FROM
+ `{?_MYSQL_PREFIX?}_user_data`
+WHERE
+ `holiday_activated` > 0 AND
+ `holiday_activated` < UNIX_TIMESTAMP() AND
+ `holiday_active`='N'
+ORDER BY
+ `holiday_activated` ASC",
+__FILE__, __LINE__);
+
+// Entries found?
if (SQL_NUMROWS($result_main) > 0) {
+ // Init SQLs
+ initSqls();
+
// We have found at least one useraccount so let's check it...
- while(list($uid, $activated) = SQL_FETCHROW($result_main)) {
+ while ($content = SQL_FETCHARRAY($result_main)) {
// Check if his holiday can be activated
- $result_holiday = SQL_QUERY_ESC("SELECT holiday_start, holiday_end FROM "._MYSQL_PREFIX."_user_holidays
-WHERE userid=%s AND holiday_start <= UNIX_TIMESTAMP() AND holiday_end > UNIX_TIMESTAMP() LIMIT 1",
- array(bigintval($uid)), __FILE__, __LINE__);
- if (SQL_NUMROWS($result_holiday) == 1)
- {
+ $result_holiday = SQL_QUERY_ESC("SELECT
+ `holiday_start`, `holiday_end`
+FROM
+ `{?_MYSQL_PREFIX?}_user_holidays`
+WHERE
+ `userid`=%s AND
+ `holiday_start` <= UNIX_TIMESTAMP() AND
+ `holiday_end` > UNIX_TIMESTAMP()
+LIMIT 1",
+ array(bigintval($content['userid'])), __FILE__, __LINE__);
+
+ // Do we have an entry?
+ if (SQL_NUMROWS($result_holiday) == 1) {
// Okay, this user can be send away to holiday...
- list($start, $end) = SQL_FETCHROW($result_holiday);
+ $content = merge_array($content, SQL_FETCHARRAY($result_holiday));
// Prepare all data for the template
- $content = array(
- 'activated' => MAKE_DATETIME($activated, "1"),
- 'start' => MAKE_DATETIME($start , "1"),
- 'end' => MAKE_DATETIME($end , "1")
- );
+ $content = merge_array($content, array(
+ 'activated' => generateDateTime($content['holiday_activated'], 1),
+ 'start' => generateDateTime($content['holiday_start'] , 1),
+ 'end' => generateDateTime($content['holiday_end'] , 1)
+ ));
// Send email to user
- $msg = LOAD_EMAIL_TEMPLATE("member_holiday_activated", $content, $uid);
- SEND_EMAIL($uid, HOLIDAY_MEMBER_ACTIVATED, $msg);
+ $message = loadEmailTemplate('member_holiday_activated', $content, $content['userid']);
+ sendEmail($content['userid'], getMessage('HOLIDAY_MEMBER_ACTIVATED_SUBJ'), $message);
// Update account
- $result_update = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data SET holiday_active='Y'
-WHERE userid=%s LIMIT 1", array(bigintval($uid)), __FILE__, __LINE__);
- }
+ addSql(SQL_QUERY_ESC("UPDATE
+ `{?_MYSQL_PREFIX?}_user_data`
+SET
+ `holiday_active`='Y'
+WHERE
+ `userid`=%s
+LIMIT 1",
+ array(bigintval($content['userid'])), __FILE__, __LINE__, false));
+ } // END - if
// Free memory
SQL_FREERESULT($result_holiday);
- }
-}
+ } // END - while
+
+ // Run all SQLs
+ runFilterChain('run_sqls');
+} // END - if
// Free memory
SQL_FREERESULT($result_main);
// Stop currently activated holidays
-HOLIDAY_STOP_HOLIDAYS();
+stopHolidays();
-//
+// [EOF]
?>