X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmails%2Fbeg_mails.php;h=902997e72954985f496c63b83d8f25708e7af677;hp=7c81a677714113f9977759aba40809c1cf219d8a;hb=2df9f7a53f8b1dd5164f87824a324ccb3b6634cb;hpb=263a089d8a499e0e26d0af9e7aa7639f88b8ca60 diff --git a/inc/mails/beg_mails.php b/inc/mails/beg_mails.php index 7c81a67771..902997e729 100644 --- a/inc/mails/beg_mails.php +++ b/inc/mails/beg_mails.php @@ -14,11 +14,10 @@ * $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 * - * For more information visit: http://www.mxchange.org * + * Copyright (c) 2009 - 2012 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 * @@ -39,25 +38,26 @@ // Some security stuff... if (!defined('__SECURITY')) { die(); -} elseif (!isExtensionActive('beg')) { +} elseif ((!isExtensionActive('beg')) || (isExtensionInstalledAndOlder('beg', '0.2.8'))) { + // Do not execute script on missing/out-dated extension ext-beg + return; +} elseif (!isHtmlOutputMode()) { + // Do not execute script if not in HTML mode return; } -// Do not execute when script is in CSS mode -if (getOutputMode() != 0) return; - // Create timemark from saved month -$mark = mktime(0, 0, 0, getConfig('last_month'), date('d', time()), date('Y', time())); +$mark = mktime(0, 0, 0, getLastMonth(), getDay(), getYear()); $sql = ''; $mode = ''; // Shall I sent activation or deactivation mail? -$sql = "SELECT `userid`, `email` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE (`beg_ral_notify` "; -switch (getConfig('beg_rallye')) { +$sql = "SELECT `userid`, `email` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE (`beg_rallye_enable_notify` "; +switch (getBegRallye()) { case 'Y': // Begging rallye is activated - if (getConfig('beg_ral_en_notify') == 'Y') { + if (isBegRallyeEnableNotifyEnabled()) { // Okay, let's check for member accounts - $sql .= '= 0 OR (`beg_ral_notify` > 0 AND `beg_ral_en_notify` < `beg_ral_di_notify`)'; - $mode = 'en'; + $sql .= '= 0 OR (`beg_rallye_enable_notify` > 0 AND `beg_rallye_enable_notify` < `beg_rallye_disable_notify`)'; + $mode = 'enable'; } else { // Do not notify! $sql = ''; @@ -65,10 +65,10 @@ switch (getConfig('beg_rallye')) { break; case 'N': // Begging rallye is deactivated - if (getConfig('beg_ral_di_notify') == 'Y') { + if (isBegRallyeDisableNotifyEnabled()) { // Okay, let's check for member accounts - $sql .= ' > 0 AND `beg_ral_di_notify` < `beg_ral_en_notify`'; - $mode = 'di'; + $sql .= ' > 0 AND `beg_rallye_disable_notify` < `beg_rallye_enable_notify`'; + $mode = 'disable'; } else { // Do not notify! $sql = ''; @@ -78,42 +78,36 @@ switch (getConfig('beg_rallye')) { if (!empty($sql)) { // The SQL command needs to be finisched here (only confirmed accounts!) - $sql .= ") AND `status`='CONFIRMED' ORDER BY `last_online` ASC"; - - // Prepare data for the template - $content['min_points'] = translateComma(getConfig('beg_points')); - $content['max_points'] = translateComma(getConfig('beg_points_max')); - $content['max_winner'] = round(getConfig('beg_ranks')); + $sql .= ')' . runFilterChain('user_exclusion_sql', " AND `status`='CONFIRMED'") . ' ORDER BY `last_online` ASC'; // No IP locking setuped by default - $content['ip_locker'] = getMessage('BEG_NO_LIMITATION'); + $content['ip_locker'] = '{--BEG_NO_LIMITATION--}'; - if (getConfig('beg_ip_timeout') > 0) { + if (getBegIpTimeout() > 0) { // Create timemark - $content['ip_locker'] = createFancyTime(getConfig('beg_ip_timeout')); + $content['ip_locker'] = '{%config,createFancyTime=beg_ip_timeout%}'; } // END - if // Check for accounts to be notified $result_main = SQL_QUERY($sql, __FILE__, __LINE__); - if (SQL_NUMROWS($result_main) > 0) { + if (!SQL_HASZERONUMS($result_main)) { // Normal notification mails or bonus mails? - $sentBonusMails = ((getConfig('beg_notify_bonus') > 0) && ($mode == "en") && (isExtensionActive('bonus'))); - - // Generate subject line - $subject = getMessage('BEG_RALLYE_'.strtoupper($mode).'_NOTIFY'); + $sentBonusMails = ((getBegNotifyBonus() > 0) && ($mode == 'enable') && (isExtensionActive('bonus'))); // Load message body for bonus mails - $message = loadEmailTemplate('beg_en_notify_body', '', '{PER}userid{PER}'); - $RECEIVER = ''; $UIDs = array(); + $message = loadEmailTemplate('beg_enable_notify_body', '', '{PER}userid{PER}'); + $receiver = ''; $userids = array(); // Okay lets notify all users! - while ($content = merge_array($content, SQL_FETCHARRAY($result_main))) { + while ($row = SQL_FETCHARRAY($result_main)) { + // Merge arrays + $content = merge_array($content, $row); + // Update account SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_user_data` SET - `beg_ral_notify`=UNIX_TIMESTAMP(), - `beg_ral_%s_notify`=UNIX_TIMESTAMP() + `beg_rallye_%s_notify`=UNIX_TIMESTAMP() WHERE `userid`=%s LIMIT 1", @@ -125,24 +119,24 @@ LIMIT 1", // Load email template and send it to the user! if ($sentBonusMails === true) { // Add userid to queue - $UIDs[] = $content['userid']; + array_push($userids, $content['userid']); } else { // Send normal notification mail to the members $message = loadEmailTemplate('beg_' . $mode . '_notify', $content, $content['userid']); - sendEmail($content['email'], $subject, $message); + sendEmail($content['userid'], '{--BEG_RALLYE_' . strtoupper($mode) . '_SUBJECT--}', $message); } } // END - while // Shall I send out bonus mails? if ($sentBonusMails === true) { // Okay, make array to string - $RECEIVER = implode(';', $UIDs); + $receiver = implode(';', $userids); // Prepare URL - $URL = 'modules.php?module=index&what=login'; + $url = 'modules.php?module=index&what=login'; // Insert mail - addBonusMailToQueue($subject, $message, $RECEIVER, getConfig('beg_notify_bonus'), getConfig('beg_notify_wait'), $URL, 0, 'normal', SQL_NUMROWS($result_main)); + addBonusMailToQueue('{--BEG_RALLYE_' . strtoupper($mode) . '_SUBJECT--}', $message, $receiver, getBegNotifyBonus(), getBegNotifyWait(), $url, 0, 'normal', SQL_NUMROWS($result_main)); } // END - if } // END - if