Fixes for broken order page and themes
[mailer.git] / inc / reset / reset_holiday.php
index 5d599857b33774073d1bc37a7421b96f5a780416..998e929438226d9ac7308dd8a7076d429d6fa6f2 100644 (file)
  * -------------------------------------------------------------------- *
  * 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                           *
  * 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')) {
-       $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");
+       die();
+} elseif (!isExtensionActive('holiday')) {
        return;
 }
 
 // Do not execute when script is in CSS mode or no daily reset
-if (($CSS == 1) || ((!defined('__DAILY_RESET')) && ($_CONFIG['holiday_mode'] == "RESET"))) return;
+if ((getOutputMode() != 0) || ((!isResetModeEnabled()) && (getConfig('holiday_mode') == 'RESET'))) return;
+//* DEBUG: */ outputHtml(basename(__FILE__)."<br />");
 
 // 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",
+__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__);
+               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")
+                               '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');
 }
 
 // Free memory
 SQL_FREERESULT($result_main);
 
 // Stop currently activated holidays
-HOLIDAY_STOP_HOLIDAYS();
+stopHolidays();
 
-//
+// [EOF]
 ?>