0) {
// Send these mails away...
$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",
array(bigintval($DATA['id'])), __FILE__, __LINE__);
// "Explode" all receivers into an array
if (ereg(";", $DATA['receivers'])) {
// There's more than one receiver in the list...
$RECEIVERS = explode(";", $DATA['receivers']);
} elseif (!empty($DATA['points'])) {
// Only one user left
$RECEIVERS = array($DATA['receivers']);
} else {
// No users left
$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) {
// 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) {
// The final receiver does exists so we can continue...
list($sname, $fname, $email) = SQL_FETCHROW($result_user);
//* DEBUG: */ echo "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") {
// Replace text variables
foreach ($REPLACER as $key => $value) {
if (isset($DATA[$key])) $DATA['text'] = str_replace($value, $DATA[$key], $DATA['text']);
} // END - foreach
// Prepare content
$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']),
'text' => $DATA['text']
);
// Prepare the mail
$msg = LOAD_EMAIL_TEMPLATE("bonus-mail", $content, $uid);
// Send mail away
if (isset($DATA['html_msg'])) {
// Send HTML?
SEND_EMAIL($email, $DATA['subject'], $msg, $DATA['html_msg']);
} else {
// No HTML mail!
SEND_EMAIL($email, $DATA['subject'], $msg);
}
// Count one up and remove entry from dummy array
$cnt++; unset($dummy[$key]);
if (GET_EXT_VERSION("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__);
} // END - if
// Do we have send maximum mails?
if (($cnt >= $_CONFIG['max_send']) || (SELECTION_COUNT($dummy) == 0)) {
// Yes, we have
//* DEBUG: */ echo "*EXIT/L:".__LINE__."
";
break;
} // END - if
} // END - if
} // END - if
// Free some memory
SQL_FREERESULT($result_user);
}
// Update mediadata if version is 0.0.4 or higher
if (GET_EXT_VERSION("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);
} // END - if
// Close sending system
//* DEBUG: */ echo "-L:".__LINE__."/".SELECTION_COUNT($dummy)."-
";
if (SELECTION_COUNT($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__."*
";
// Update mediadata if version is 0.0.4 or higher
if (GET_EXT_VERSION("mediadata") >= "0.0.4") {
// Update entry (or add missing)
//* DEBUG: */ echo "*MEDIA/L:".__LINE__."*
";
MEDIA_UPDATE_ENTRY(array("total_orders", "bonus_orders"), "add", 1);
} // END - if
} elseif ($cnt >= $_CONFIG['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!!!