-/************************************************************************
- * Mailer v0.2.1-FINAL Start: 04/20/2004 *
- * =================== Last change: 06/20/2010 *
- * *
- * -------------------------------------------------------------------- *
- * File : reset_daily.php *
- * -------------------------------------------------------------------- *
- * Short description : Things to do on daily reset *
- * -------------------------------------------------------------------- *
- * 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 - 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 *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU General Public License *
- * along with this program; if not, write to the Free Software *
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, *
- * MA 02110-1301 USA *
- ************************************************************************/
-
-// Some security stuff...
-if (!defined('__SECURITY')) {
- die();
-} elseif ((!isHtmlOutputMode()) || (!isResetModeEnabled())) {
- // Do not execute when script is in CSS mode or no daily reset
- return;
-} elseif (!isExtensionActive('sql_patches')) {
- logDebugMessage(__FILE__, __LINE__, 'Not resetting, needed extension disabled.');
- return;
-}
-
-// Update user profiles
-if (isExtensionInstalledAndNewer('order', '0.1.1')) {
- // Latest version
- SQL_QUERY('UPDATE
- `{?_MYSQL_PREFIX?}_user_data`
-SET
- `receive_mails`=`max_mails`,
- `mail_orders`=0
-WHERE
- `receive_mails` != `max_mails`', __FILE__, __LINE__);
-} else {
- // Obsolete version
- SQL_QUERY('UPDATE
- `{?_MYSQL_PREFIX?}_user_data`
-SET
- `receive_mails`=`max_mails`
-WHERE
- `receive_mails` != `max_mails`', __FILE__, __LINE__);
-}
-
-// Transfer points from locked_points to points
-$result_daily = SQL_QUERY("SELECT
- `userid`
-FROM
- `{?_MYSQL_PREFIX?}_user_data`
-WHERE
- `ref_payout`=0 AND
- `status`='CONFIRMED'
-ORDER BY
- `userid` ASC", __FILE__, __LINE__);
-
-//* DEBUG: */ debugOutput(basename(__FILE__) . ':payout=0;daily|numRows=' . SQL_NUMROWS($result_daily));
-if (SQL_NUMROWS($result_daily) > 0) {
- // Init SQLs
- initSqls();
-
- // Start checking accounts which are on 0 confirmed-to-go mails
- while ($content = SQL_FETCHARRAY($result_daily)) {
- //* DEBUG: */ debugOutput(basename(__FILE__) . ':' . $content['userid']);
- $result_points = SQL_QUERY_ESC("SELECT
- `ref_depth`,
- `locked_points`
-FROM
- `{?_MYSQL_PREFIX?}_user_points`
-WHERE
- `userid`=%s AND
- `locked_points` != 0.00000
-ORDER BY
- `ref_depth` ASC",
- array(bigintval($content['userid'])), __FILE__, __LINE__);
-
- //* DEBUG: */ debugOutput(basename(__FILE__) . ':payout=0;points|numRows=' . SQL_NUMROWS($result_points));
- if (SQL_NUMROWS($result_points) > 0) {
- // Ok transfer points
- while ($content2 = SQL_FETCHARRAY($result_points)) {
- // Merge both arrays
- $content = merge_array($content, $content2);
-
- //* DEBUG: */ debugOutput(basename(__FILE__) . ':userid=' . $content['userid'].',depth='.$content['ref_depth'].',locked='.$content['locked_points']);
- addSql(SQL_QUERY_ESC("UPDATE
- `{?_MYSQL_PREFIX?}_user_points`
-SET
- `points`=`points`+%s,
- `locked_points`=0.00000
-WHERE
- `userid`=%s AND
- `ref_depth`=%d
-LIMIT 1",
- array(
- $content['locked_points'],
- bigintval($content['userid']),
- $content['ref_depth']
- ), __FILE__, __LINE__, false));
-
- // Update mediadata as well
- if (isExtensionInstalledAndNewer('mediadata', '0.0.4')) {
- // Update database
- updateMediadataEntry(array('total_points'), 'add', $content['locked_points']);
- } // END - if
- } // END - while
- } // END - if
-
- // Free memory
- SQL_FREERESULT($result_points);
- } // END - while
-
- // Run all SQLs
- runFilterChain('run_sqls');
-} // END - if
-
-// Free memory
-SQL_FREERESULT($result_daily);
-
-// [EOF]