<?php
/************************************************************************
- * MXChange v0.2.1 Start: 02/12/2004 *
- * ================ Last change: 02/27/2004 *
+ * Mailer v0.2.1-FINAL Start: 02/12/2004 *
+ * =================== Last change: 02/27/2004 *
* *
* -------------------------------------------------------------------- *
* File : what-del_email.php *
* -------------------------------------------------------------------- *
* Short description : Delete a bonus or normal mail *
* -------------------------------------------------------------------- *
- * Kurzbeschreibung : Bonus- / Normal-Mail loeschen *
+ * Kurzbeschreibung : Bonus- / Mitglied-Mail loeschen *
* -------------------------------------------------------------------- *
- * *
- * Module by Robert Niedziela, Megacomputing *
- * web : http://mc-p.mcserver.de *
- * *
+ * $Revision:: $ *
+ * $Date:: $ *
+ * $Tag:: 0.2.1-FINAL $ *
+ * $Author:: $ *
* -------------------------------------------------------------------- *
- * Copyright (c) 2003 - 2008 by Roland Haeder *
- * For more information visit: http://www.mxchange.org *
+ * Copyright (c) 2003 - 2009 by Roland Haeder *
+ * 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 *
************************************************************************/
// Some security stuff...
-if ((!defined('__SECURITY')) || (!IS_ADMIN())) {
- $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
- require($INC);
-}
+if ((!defined('__SECURITY')) || (!isAdmin())) {
+ die();
+} // END - if
// Add description as navigation point
-ADD_DESCR("admin", __FILE__);
+addYouAreHereLink('admin', __FILE__);
-if (!empty($_GET['mid'])) {
+// Init counter for deleted mails
+$count = '0';
+
+if ((isPostRequestElementSet('id')) && (isGetRequestElementSet('type')) && (postRequestElement('type') == 'normal')) {
// Load email data
- $result = SQL_QUERY_ESC("SELECT id, sender, subject, url, timestamp, payment_id FROM "._MYSQL_PREFIX."_pool WHERE id=%s LIMIT 1",
- array(bigintval($_GET['mid'])), __FILE__, __LINE__);
+ $result = SQL_QUERY_ESC("SELECT `id`, `sender`, `subject`, `url`, `timestamp`, `cat_id`, `payment_id` FROM `{?_MYSQL_PREFIX?}_pool` WHERE `id`=%s LIMIT 1",
+ array(bigintval(getRequestElement('id'))), __FILE__, __LINE__);
// Delete mail only once
if (SQL_NUMROWS($result) == 1) {
// Load data
- list ($id, $sender, $subject, $url, $timestamp, $payId) = SQL_FETCHROW($result);
- SQL_FREERESULT($result);
-
- // Get points we shall pay back per mail
- $price = GET_PAY_POINTS($payId, "price");
+ // @TODO Unused: cat_id
+ $content = SQL_FETCHARRAY($result);
// Prepare data for the template
- define('__ID' , $id);
- define('__SENDER' , ADMIN_USER_PROFILE_LINK($sender));
- define('__SUBJECT', $subject);
- define('__URL' , DEREFERER($url));
- define('__ORDERED', MAKE_DATETIME($timestamp, "0"));
+ $content['timestamp'] = generateDateTime($content['timestamp'], 0);
// Load template
- LOAD_TEMPLATE("admin_del_email_normal");
-
- // Transfer data to data array
- $DATA = array('url' => $url, 'subject' => $subject);
+ loadTemplate('admin_delete_email_normal', FALSE, $content);
// Load email template and send the email away
- $msg_user = LOAD_EMAIL_TEMPLATE("order-deleted", array(), $sender);
- SEND_EMAIL($sender, MEMBER_ORDER_DELETED, $msg_user);
+ $message_user = loadEmailTemplate('member_order_deleted', $content, $content['sender']);
+ sendEmail($content['sender'], '{--MEMBER_ORDER_DELETED--}', $message_user);
// Fetch right stats_id from pool
- $result_pool = SQL_QUERY_ESC("SELECT s.id FROM "._MYSQL_PREFIX."_user_stats AS s
-LEFT JOIN "._MYSQL_PREFIX."_pool AS p
-ON s.pool_id=p.id
-WHERE s.pool_id=%s LIMIT 1",
- array(bigintval($_GET['mid'])), __FILE__, __LINE__);
+ $result_pool = SQL_QUERY_ESC("SELECT
+ `s`.`id`
+FROM
+ `{?_MYSQL_PREFIX?}_user_stats` AS `s`
+LEFT JOIN
+ `{?_MYSQL_PREFIX?}_pool` AS `p`
+ON
+ `s`.`pool_id`=`p`.`id`
+WHERE
+ `s`.`pool_id`=%s
+LIMIT 1",
+ array(bigintval(getRequestElement('id'))), __FILE__, __LINE__);
if (SQL_NUMROWS($result_pool) == 1) {
// Fetch stats id
list($stats_id) = SQL_FETCHROW($result_pool);
// Get all user links
- $links = GET_TOTAL_DATA($stats_id, "user_links", "userid", "stats_id", true);
+ $links = countSumTotalData($stats_id, 'user_links', 'userid', 'stats_id', TRUE);
// Reset sent mails for recipient(s)
- REDUCT_RECIPIENT_RECEIVED_MAILS("stats_id", $_GET['mid'], $links);
+ reduceRecipientReceivedMails('stats_id', getRequestElement('id'), $links);
// Calc total points and pay them back
- $totalPoints = $links * $price;
+ $totalPoints = $links * $content['price'];
// Shall we pay the points back to the user?
- if (getConfig('repay_deleted_mails') != "SHRED") {
- //* DEBUG: */ echo $stats_id.":".$totalPoints."/".$links."/".$price."<br />\n";
- if ($totalPoints > 0) {
- // Shall we payback to user or jackpot?
- if (getConfig('repay_deleted_mails') == "JACKPOT") {
- // Set jackpot
- $sender = 0;
- } // END - if
-
- // Pay back points
- //* DEBUG: */ echo "PAYBACK:".$sender."<br />\n";
- ADD_POINTS_REFSYSTEM("mail_deleted", $sender, $totalPoints, true, "0", false,"direct");
-
- // Output message
- if (getConfig('repay_deleted_mails') == "REPAY") {
- // Repayed
- LOAD_TEMPLATE("admin_settings_saved", false, sprintf(ADMIN_POINTS_REPAYED,
- TRANSLATE_COMMA($totalPoints)
- ));
- } else {
- // To jackpot
- LOAD_TEMPLATE("admin_settings_saved", false, sprintf(ADMIN_POINTS_TO_JACKPOT,
- TRANSLATE_COMMA($totalPoints)
- ));
- }
+ if ($totalPoints == 0) {
+ // No points repayed!
+ displayMessage('{--ADMIN_NO_POINTS_REPAYED--}');
+ } elseif (getConfig('repay_deleted_mails') != 'SHRED') {
+ //* DEBUG: */ debugOutput($stats_id . ':' . $totalPoints . '/' . $links . '/' . $content['price']);
+ // Shall we payback to user or jackpot?
+ if (getConfig('repay_deleted_mails') == 'JACKPOT') {
+ // Set jackpot
+ $content['sender'] = '0';
+ } // END - if
+
+ // Pay back points
+ initReferralSystem();
+ addPointsThroughReferralSystem('mail_deleted', $content['sender'], $totalPoints);
+
+ // Output message
+ if (getConfig('repay_deleted_mails') == 'REPAY') {
+ // Repayed
+ displayMessage('{%message,ADMIN_POINTS_REPAYED=' . $totalPoints . '%}');
} else {
- // No points repayed!
- LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_NO_POINTS_REPAYED);
+ // To jackpot
+ displayMessage('{%message,ADMIN_POINTS_TO_JACKPOT=' . $totalPoints . '%}');
}
} else {
// Points shredded!
- LOAD_TEMPLATE("admin_settings_saved", false, sprintf(ADMIN_POINTS_SHREDDED, $totalPoints));
+ displayMessage('{%message,ADMIN_POINTS_SHREDDED=' . $totalPoints . '%}');
}
- // Delete mail from queue
- SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_pool WHERE id=%s LIMIT 1",
- array(bigintval($_GET['mid'])), __FILE__, __LINE__);
-
// Remove links from DB
- SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_user_links WHERE stats_id=%s",
+ SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_user_links` WHERE `stats_id`=%s",
array(bigintval($stats_id)), __FILE__, __LINE__);
+ $count += SQL_AFFECTEDROWS();
- // Output link for manually removing stats entry
- LOAD_TEMPLATE("admin_settings_saved", false, "<A href=\"".URL."/modules.php?module=admin&what=del_email&pid=".bigintval($_GET['mid'])."\">".ADMIN_REMOVE_STATS_ENTRY."</A>");
+ // Load template for link
+ displayMessage('<a href="{%url=modules.php?module=admin&what=del_email&pid=' . bigintval(getRequestElement('id')) . '%}">{--ADMIN_REMOVE_STATS_ENTRY--}</a>');
} // END - if
// Free the result
SQL_FREERESULT($result_pool);
+
+ // Delete mail from queue
+ SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_pool` WHERE `id`=%s LIMIT 1",
+ array(bigintval(getRequestElement('id'))), __FILE__, __LINE__);
+ $count += SQL_AFFECTEDROWS();
+
+ // Output link for manually removing stats entry
+ outputHtml('{%message,ADMIN_DELETED_MAILS_COUNT=' . $count . '%}');
} else {
// Mail already deleted!
- LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_NORMAL_MAIL_ALREADY_DELETED);
+ displayMessage('{--ADMIN_NORMAL_MAIL_ALREADY_DELETED--}');
}
-} elseif (!empty($_GET['pid'])) {
+
+ // Free result
+ SQL_FREERESULT($result);
+} elseif (isGetRequestElementSet('pid')) {
// Remove stats entries
- SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_user_stats WHERE pool_id=%s LIMIT 1",
- array(bigintval($_GET['pid'])), __FILE__, __LINE__);
+ SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_user_stats` WHERE `pool_id`=%s LIMIT 1",
+ array(bigintval(getRequestElement('pid'))), __FILE__, __LINE__);
// Output message
- LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_USER_STATS_REMOVED);
-} elseif ((!empty($_GET['bid'])) && (EXT_IS_ACTIVE("bonus"))) {
+ displayMessage('{--ADMIN_USER_STATS_REMOVED--}');
+} elseif (((isPostRequestElementSet('id')) && (isGetRequestElementSet('type')) && (postRequestElement('type') == 'bonus')) && (isExtensionActive('bonus'))) {
// Load data from bonus mail
- $result = SQL_QUERY_ESC("SELECT id, subject, url, timestamp, mails_sent FROM "._MYSQL_PREFIX."_bonus WHERE id=%s",
- array(bigintval($_GET['bid'])), __FILE__, __LINE__);
+ $result = SQL_QUERY_ESC("SELECT `id`, `subject`, `url`, `timestamp`, `mails_sent` FROM `{?_MYSQL_PREFIX?}_bonus` WHERE `id`=%s LIMIT 1",
+ array(bigintval(getRequestElement('id'))), __FILE__, __LINE__);
// Delete mail only once
if (SQL_NUMROWS($result) == 1) {
// Load data
- list ($id, $subject, $url, $timestamp, $sent) = SQL_FETCHROW($result);
+ $content = SQL_FETCHARRAY($result);
// Reset sent mails for recipient(s)
- REDUCT_RECIPIENT_RECEIVED_MAILS ("bonus_id", $_GET['bid'], $sent);
+ reduceRecipientReceivedMails('bonus_id', getRequestElement('id'), $content['mails_sent']);
+
+ // Init counter for deleted mails
+ $count = '0';
// Delete bonus mail entirely from database
- SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_bonus WHERE id=%s LIMIT 1",
- array(bigintval($_GET['bid'])), __FILE__, __LINE__);
- SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_user_links WHERE bonus_id=%s",
- array(bigintval($_GET['bid'])), __FILE__, __LINE__);
+ SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_bonus` WHERE `id`=%s LIMIT 1",
+ array(bigintval(getRequestElement('id'))), __FILE__, __LINE__);
+ $count += SQL_AFFECTEDROWS();
+ SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_user_links` WHERE `bonus_id`=%s",
+ array(bigintval(getRequestElement('id'))), __FILE__, __LINE__);
+ $count += SQL_AFFECTEDROWS();
// Prepare data for the template
- define('__ID' , $id);
- define('__SUBJECT', $subject);
- define('__URL' , DEREFERER($url));
- define('__ORDERED', MAKE_DATETIME($timestamp, "0"));
+ $content['timestamp'] = generateDateTime($content['timestamp'], '0');
+ $content['count'] = $count;
// Load template
- LOAD_TEMPLATE("admin_del_email_bonus");
+ loadTemplate('admin_delete_email_bonus', FALSE, $content);
} else {
// Mail already deleted!
- LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_BONUS_MAIL_ALREADY_DELETED);
+ displayMessage('{--ADMIN_BONUS_MAIL_ALREADY_DELETED--}');
}
// Free result
SQL_FREERESULT($result);
-} elseif ((!empty($_GET['nid'])) && (GET_EXT_VERSION("bonus") >= "0.8.7")) {
+} elseif ((isGetRequestElementSet('nid')) && (isExtensionInstalledAndNewer('bonus', '0.8.7'))) {
// Load data from bonus mail
- $result = SQL_QUERY_ESC("SELECT id, subject, url, timestamp FROM "._MYSQL_PREFIX."_bonus WHERE id=%s",
- array(bigintval($_GET['nid'])), __FILE__, __LINE__);
+ $result = SQL_QUERY_ESC("SELECT `id`, `subject`, `url`, `timestamp` FROM `{?_MYSQL_PREFIX?}_bonus` WHERE `id`=%s LIMIT 1",
+ array(bigintval(getRequestElement('nid'))), __FILE__, __LINE__);
// Delete mail only once
if (SQL_NUMROWS($result) == 1) {
// Load data
- list ($id, $subject, $url, $timestamp) = SQL_FETCHROW($result);
- SQL_FREERESULT($result);
+ $content = SQL_FETCHARRAY($result);
+
+ // Init counter for deleted mails
+ $count = '0';
// Delete bonus mail entirely from database
- SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_bonus WHERE id=%s LIMIT 1",
- array(bigintval($_GET['nid'])), __FILE__, __LINE__);
- SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_user_links WHERE bonus_id=%s",
- array(bigintval($_GET['nid'])), __FILE__, __LINE__);
+ SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_bonus` WHERE `id`=%s LIMIT 1",
+ array(bigintval(getRequestElement('nid'))), __FILE__, __LINE__);
+ $count += SQL_AFFECTEDROWS();
+ SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_user_links` WHERE `bonus_id`=%s",
+ array(bigintval(getRequestElement('nid'))), __FILE__, __LINE__);
+ $count += SQL_AFFECTEDROWS();
// Prepare data for the template
- define('__ID' , $id);
- define('__SUBJECT', $subject);
- define('__URL' , DEREFERER($url));
- define('__ORDERED', MAKE_DATETIME($timestamp, "0"));
+ $content['timestamp'] = generateDateTime($content['timestamp'], '0');
+ $content['count'] = $count;
// Load template
- LOAD_TEMPLATE("admin_del_email_notify");
+ loadTemplate('admin_delete_email_notify', FALSE, $content);
} else {
// Mail already deleted!
- LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_NOTIFY_MAIL_ALREADY_DELETED);
+ displayMessage('{--ADMIN_NOTIFY_MAIL_ALREADY_DELETED--}');
}
+
+ // Free result
+ SQL_FREERESULT($result);
} else {
// No mail orders fond
- LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_WRONG_CALL);
+ displayMessage('{--ADMIN_WRONG_CALL--}');
}
-//
+// [EOF]
?>