X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fpool%2Fpool-bonus.php;h=602820c88c6109769a1043b948ede3ed7bf77626;hp=c525382125dfd9d03d3badbc1faf7d81b3b5f340;hb=9afd6ec5878544a7982c50ed9c0dd7de37606d5b;hpb=c08df20b10d0771e7f749d7afbe1f76be9f1b028 diff --git a/inc/pool/pool-bonus.php b/inc/pool/pool-bonus.php index c525382125..602820c88c 100644 --- a/inc/pool/pool-bonus.php +++ b/inc/pool/pool-bonus.php @@ -10,9 +10,14 @@ * -------------------------------------------------------------------- * * Kurzbeschreibung : Sendet freigegebene Bonus-Mails aus dem Pool * * -------------------------------------------------------------------- * - * * + * $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 * @@ -33,72 +38,63 @@ // Some security stuff... if (!defined('__SECURITY')) { - $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php"; - require($INC); + die(); } // Don't run on daily reset -if (defined('__DAILY_RESET')) { +if (isResetModeEnabled()) { // Skip here return false; -} elseif (!EXT_IS_ACTIVE("bonus")) { +} elseif (!isExtensionActive('bonus')) { // Abort if extension bonus is not active return false; } +// Need this here // Only send bonus mail when bonus extension is active and maximum send-mails is not reached -if ($cnt < $_CONFIG['max_send']) { +if ($GLOBALS['pool_cnt'] < getConfig('max_send')) { // Do we need to send out bonus mails? - if (EXT_IS_ACTIVE("html_mail")) { - // 0 1 2 3 4 5 6 7 8 9 10 11 - $result_bonus = SQL_QUERY("SELECT id, subject, text, receivers, points, time, data_type, timestamp, url, cat_id, target_send, html_msg FROM "._MYSQL_PREFIX."_bonus WHERE data_type='NEW' ORDER BY timestamp DESC", __FILE__, __LINE__); + if (isExtensionActive('html_mail')) { + // 0 1 2 3 4 5 6 7 8 9 10 11 + $result_bonus = SQL_QUERY("SELECT `id`, `subject`, `text`, `receivers`, `points`, `time`, `data_type`, `timestamp`, `url`, `cat_id`, `target_send`, `html_msg` FROM `{?_MYSQL_PREFIX?}_bonus` WHERE `data_type`='NEW' ORDER BY `timestamp` DESC", __FILE__, __LINE__); } else { - // 0 1 2 3 4 5 6 7 8 9 10 - $result_bonus = SQL_QUERY("SELECT id, subject, text, receivers, points, time, data_type, timestamp, url, cat_id, target_send FROM "._MYSQL_PREFIX."_bonus WHERE data_type='NEW' ORDER BY timestamp DESC", __FILE__, __LINE__); + // 0 1 2 3 4 5 6 7 8 9 10 + $result_bonus = SQL_QUERY("SELECT `id`, `subject`, `text`, `receivers`, `points`, `time`, `data_type`, `timestamp`, `url`, `cat_id`, `target_send` FROM `{?_MYSQL_PREFIX?}_bonus` WHERE `data_type`='NEW' ORDER BY `timestamp` DESC", __FILE__, __LINE__); } if (SQL_NUMROWS($result_bonus) > 0) { // Send these mails away... - $cnt2 = ""; + $cnt2 = ''; while ($DATA = SQL_FETCHARRAY($result_bonus)) { - // Compile URL - $DATA['url'] = COMPILE_CODE($DATA['url']); - // Message is active in queue - $result_queue = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_bonus SET data_type='QUEUE' WHERE id=%s LIMIT 1", + SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_bonus` SET `data_type`='QUEUE' WHERE `id`=%s LIMIT 1", array(bigintval($DATA['id'])), __FILE__, __LINE__); // "Explode" all receivers into an array - if (ereg(";", $DATA['receivers'])) { + if (ereg(';', $DATA['receivers'])) { // There's more than one receiver in the list... - $RECEIVERS = explode(";", $DATA['receivers']); + $RECEIVERS = explode(';', $DATA['receivers']); } elseif (!empty($DATA['points'])) { // Only one user left $RECEIVERS = array($DATA['receivers']); } else { // No users left - $RECEIVERS = array("0"); + $RECEIVERS = array(0); } $dummy = $RECEIVERS; // Now, if we are good little boys and girls Santa left us some user-ids. // We can now send mails to them... - foreach ($RECEIVERS as $key => $uid) { + foreach ($RECEIVERS as $key => $userid) { // Load personal data - //* DEBUG: */ echo "*L:".__LINE__."/".$uid."*
"; - $result_user = SQL_QUERY_ESC("SELECT surname, family, email FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s LIMIT 1", - array(bigintval($uid)), __FILE__, __LINE__); - - // Is his data available? - if (SQL_NUMROWS($result_user) == 1) { + if (fetchUserData($userid)) { // The final receiver does exists so we can continue... - list($sname, $fname, $email) = SQL_FETCHROW($result_user); - //* DEBUG: */ echo "OK!/L:".__LINE__."
"; + //* DEBUG: */ print("OK!/L:".__LINE__."
"); // Mark this user as "spammed" ;-) And place a line for him... - if (REMOVE_RECEIVER($dummy, $key, $uid, $DATA['id'], $DATA['id'], true) == "done") { + if (removeReceiver($dummy, $key, $userid, $DATA['id'], $DATA['id'], true) == 'done') { // Replace text variables - foreach ($REPLACER as $key => $value) { + foreach ($GLOBALS['replacer'] as $key => $value) { if (isset($DATA[$key])) $DATA['text'] = str_replace($value, $DATA[$key], $DATA['text']); } // END - foreach @@ -106,76 +102,73 @@ if ($cnt < $_CONFIG['max_send']) { $content = array( 'id' => $DATA['id'], 'url' => $DATA['url'], - 'time' => CREATE_FANCY_TIME($DATA['time']), - 'points' => TRANSLATE_COMMA($DATA['points']), - 'category' => GET_CATEGORY($DATA['cat_id']), + 'time' => createFancyTime($DATA['time']), + 'points' => translateComma($DATA['points']), + 'category' => getCategory($DATA['cat_id']), 'text' => $DATA['text'] ); // Prepare the mail - $msg = LOAD_EMAIL_TEMPLATE("bonus-mail", $content, $uid); + $mailText = loadEmailTemplate('bonus-mail', $content, $userid); // Send mail away if (isset($DATA['html_msg'])) { // Send HTML? - SEND_EMAIL($email, $DATA['subject'], $msg, $DATA['html_msg']); + sendEmail(getUserData('email'), $DATA['subject'], $mailText, $DATA['html_msg']); } else { // No HTML mail! - SEND_EMAIL($email, $DATA['subject'], $msg); + sendEmail(getUserData('email'), $DATA['subject'], $mailText); } // Count one up and remove entry from dummy array - $cnt++; unset($dummy[$key]); + $GLOBALS['pool_cnt']++; unset($dummy[$key]); - if (GET_EXT_VERSION("user") >= "0.1.4") { + if (getExtensionVersion('user') >= '0.1.4') { // Update mails received for receiver - $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data SET emails_received=emails_received+1 WHERE userid=%s LIMIT 1", - array(bigintval($uid)), __FILE__, __LINE__); + SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_user_data` SET emails_received=emails_received+1 WHERE `userid`=%s LIMIT 1", + array(bigintval($userid)), __FILE__, __LINE__); } // END - if // Do we have send maximum mails? - if (($cnt >= $_CONFIG['max_send']) || (SELECTION_COUNT($dummy) == 0)) { + if (($GLOBALS['pool_cnt'] >= getConfig('max_send')) || (countSelection($dummy) == '0')) { // Yes, we have - //* DEBUG: */ echo "*EXIT/L:".__LINE__."
"; + //* DEBUG: */ print("*EXIT/L:".__LINE__."
"); break; } // END - if } // END - if } // END - if - - // Free some memory - SQL_FREERESULT($result_user); - } + } // END - foreach // Update mediadata if version is 0.0.4 or higher - if (GET_EXT_VERSION("mediadata") >= "0.0.4") { + if (getExtensionVersion('mediadata') >= '0.0.4') { // Update entry (or add missing - $P = $cnt; - if (!empty($cnt2) && empty($cnt)) $P = $cnt2; - //* DEBUG: */ echo "+MEDIA/L:".__LINE__."/".$P."+
"; - MEDIA_UPDATE_ENTRY(array("total_send", "bonus_send"), "add", $P); + $P = $GLOBALS['pool_cnt']; + if (!empty($cnt2) && empty($GLOBALS['pool_cnt'])) $P = $cnt2; + //* DEBUG: */ print("+MEDIA/L:".__LINE__.'/'.$P."+
"); + updateMediadataEntry(array("total_send", "bonus_send"), 'add', $P); } // END - if // Close sending system - //* DEBUG: */ echo "-L:".__LINE__."/".SELECTION_COUNT($dummy)."-
"; - if (SELECTION_COUNT($dummy) == 0) { + //* DEBUG: */ print("-L:".__LINE__.'/'.countSelection($dummy)."-
"); + if (countSelection($dummy) == '0') { // Queue reached! - $result_done = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_bonus SET data_type='SEND', target_send='0', receivers='' WHERE id=%s LIMIT 1", - array(bigintval($DATA['id'])), __FILE__, __LINE__); - //* DEBUG: */ echo "*L:".__LINE__."*
"; + SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_bonus` SET `data_type`='SEND', `target_send`=0, `receivers`='' WHERE `id`=%s LIMIT 1", + array(bigintval($DATA['id'])), __FILE__, __LINE__); + //* DEBUG: */ print("*L:".__LINE__."*
"); // Update mediadata if version is 0.0.4 or higher - if (GET_EXT_VERSION("mediadata") >= "0.0.4") { + if (getExtensionVersion('mediadata') >= '0.0.4') { // Update entry (or add missing) - //* DEBUG: */ echo "*MEDIA/L:".__LINE__."*
"; - MEDIA_UPDATE_ENTRY(array("total_orders", "bonus_orders"), "add", 1); + //* DEBUG: */ print("*MEDIA/L:".__LINE__."*
"); + updateMediadataEntry(array("total_orders", "bonus_orders"), 'add', 1); } // END - if - } elseif ($cnt >= $_CONFIG['max_send']) { + } elseif ($GLOBALS['pool_cnt'] >= getConfig('max_send')) { // Update bonus pool - $result_done = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_bonus SET data_type='NEW', target_send=%s, receivers='%s' WHERE id=%s LIMIT 1", - array(SELECTION_COUNT($dummy), implode(";", $dummy), bigintval($DATA['id'])), __FILE__, __LINE__); - //* DEBUG: */ echo "*L:".__LINE__."
";
-				//* DEBUG: */ print_r($dummy);
-				//* DEBUG: */ echo "
\n!!!
"; + SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_bonus` SET `data_type`='NEW', `target_send`=%s, `receivers`='%s' WHERE `id`=%s LIMIT 1", + array(countSelection($dummy), implode(';', $dummy), bigintval($DATA['id'])), __FILE__, __LINE__); + //* DEBUG: */ print("*L:".__LINE__."
");
+				//* DEBUG: */ print(print_r($dummy, true));
+				//* DEBUG: */ print("
\n!!!
"); break; } } @@ -183,10 +176,10 @@ if ($cnt < $_CONFIG['max_send']) { // Free memory SQL_FREERESULT($result_bonus); -} -// Remove message (IMPORTANT!) -unset($msg); + // Remove variable + unset($mailText); +} // ?>