X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmonthly%2Fmonthly_beg.php;h=92a158f09e9deb55dd0f7c240a1dbcaa5a603c8d;hp=386bcb9b1540ce4727a45b5b5c40720b8e953180;hb=e9da1508b2a3ccbf63adc999981674740a47e074;hpb=f585bb39812d6f027725b87fa9f845e0dfe3b306 diff --git a/inc/monthly/monthly_beg.php b/inc/monthly/monthly_beg.php index 386bcb9b15..92a158f09e 100644 --- a/inc/monthly/monthly_beg.php +++ b/inc/monthly/monthly_beg.php @@ -10,16 +10,9 @@ * -------------------------------------------------------------------- * * Kurzbeschreibung : Monatliche Bettelrallye * * -------------------------------------------------------------------- * - * $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 * + * Copyright (c) 2009 - 2015 by Mailer Developer Team * + * For more information visit: http://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 * @@ -40,68 +33,72 @@ // Some security stuff... if (!defined('__SECURITY')) { die(); -} elseif ((getScriptOutputMode() == 1) || (!isResetModeEnabled())) { - // Do not execute when script is in CSS mode or no daily reset +} elseif ((!isHtmlOutputMode()) || (!isMonthlyResetEnabled())) { + // Do not execute when script is in non-HTML mode or no hourly reset return; } elseif ((!isExtensionActive('beg')) || (!isBegRallyeEnabled())) { - logDebugMessage(__FILE__, __LINE__, 'Not resetting, needed extension disabled.'); + if (isDebugModeEnabled()) logDebugMessage(__FILE__, __LINE__, 'Not resetting, needed extension ext-beg disabled.'); return; } -// Get current month (2 digits) -$curr = getMonth(); +// Debug line +//* DEBUG: */ logDebugMessage(__FILE__, __LINE__, 'Monthly reset started.'); // Check if month is done -if (($curr != getConfig('last_month')) && (getConfig('last_month') > 0) && (getConfig('beg_ranks') > 0) && (getScriptOutputMode() != 1)) { +if ((getBegRanks() > 0) && (!isCssOutputMode())) { // Extension 'autopurge' is inactive or purging of inactive accounts is deactivated - $whereStatement1 = ''; + $whereStatement = ''; // Shall we exclude webmaster's own userid? - if ((getConfig('beg_include_own') != 'Y') && (isValidUserId(getConfig('beg_userid')))) { + // @TODO Rewrite these if() blocks to a filter + if ((!isBegIncludeOwnEnabled()) && (isValidId(getBegUserid()))) { // Exclude it - $whereStatement1 = " AND `userid` != {?beg_userid?}"; + $whereStatement .= ' AND `d`.`userid` != {?beg_userid?}'; } // END - if - // Let's check if there are some points left we can 'pay'... - if (isExtensionActive('autopurge')) { - // Use last online stamp only when autopurge for inactive members is activated - if ((getApInactiveSince() > 0) && (getConfig('beg_active') == 'Y')) { - // Okay, include last online timestamp - $whereStatement1 .= " AND `last_online` >= (UNIX_TIMESTAMP() - {?ap_inactive_since?})"; - } // END - if + // Let's check if there are some points left we can pay... + if ((isExtensionActive('autopurge')) && (isBegActiveEnabled()) && ((getApInactiveSince() > 0))) { + // Okay, include last online timestamp + $whereStatement .= ' AND (UNIX_TIMESTAMP() - `d`.`last_online`) < {?ap_inactive_since?}'; } // END - if // SQL string to check for accounts - $result_main = SQL_QUERY("SELECT - `userid`, `email`, `gender`, `surname`, `family`, `beg_points` AS points + $result_main = sqlQuery("SELECT + `d`.`userid`, + `d`.`beg_points` FROM - `{?_MYSQL_PREFIX?}_user_data` + `{?_MYSQL_PREFIX?}_user_data` AS `d` WHERE - `status`='CONFIRMED'" . $whereStatement1 . " AND - `beg_points` > 0 + `d`.`status`='CONFIRMED' + " . runFilterChain('user_exclusion_sql', $whereStatement) . " AND + `d`.`beg_points` > 0 ORDER BY - `beg_points` DESC, - `userid` ASC + `d`.`beg_points` DESC, + `d`.`userid` ASC LIMIT {?beg_ranks?}", __FILE__, __LINE__); - if (!SQL_HASZERONUMS($result_main)) { + if (!ifSqlHasZeroNums($result_main)) { // Load our winners... - while ($content = SQL_FETCHARRAY($result_main)) { + while ($content = sqlFetchArray($result_main)) { // Add points to user's account directly - addPointsDirectly('monthly_beg', $content['userid'], $content['points']); + initReferralSystem(); + addPointsThroughReferralSystem('monthly_beg', $content['userid'], $content['beg_points']); // Load email template and email it away $message = loadEmailTemplate('member_beg', $content, bigintval($content['userid'])); - sendEmail($content['email'], '{--BEG_MONTHLY_RALLYE--}', $message); + sendEmail($content['userid'], '{--BEG_MONTHLY_RALLYE--}', $message); } // END - while // Reset accounts - $result = SQL_QUERY("UPDATE `{?_MYSQL_PREFIX?}_user_data` SET `beg_points`=0.00000 WHERE `beg_points` > 0", __FILE__, __LINE__); + $result = sqlQuery('UPDATE `{?_MYSQL_PREFIX?}_user_data` SET `beg_points`=0.00000 WHERE `beg_points` > 0', __FILE__, __LINE__); } // END - if // Free memory - SQL_FREERESULT($result_main); + sqlFreeResult($result_main); } // END - if +// Debug line +//* DEBUG: */ logDebugMessage(__FILE__, __LINE__, 'Monthly reset ended.'); + // [EOF] ?>