X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Fmodules%2Fadmin%2Fwhat-del_email.php;h=da714d623e8863213720bb1ac92d7ea91686a3a2;hb=2142149f3f72f1a2476f95a87937c044d63bbaf2;hp=136b0f947c738457cc69a636afc5275b44972d0d;hpb=d0ab0382dd73638f0bc13a1a3d6f117ec11a203e;p=mailer.git
diff --git a/inc/modules/admin/what-del_email.php b/inc/modules/admin/what-del_email.php
index 136b0f947c..da714d623e 100644
--- a/inc/modules/admin/what-del_email.php
+++ b/inc/modules/admin/what-del_email.php
@@ -35,26 +35,28 @@
************************************************************************/
// Some security stuff...
-if ((ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) || (!IS_ADMIN()))
-{
+if ((!defined('__SECURITY')) || (!IS_ADMIN())) {
$INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
require($INC);
}
// Add description as navigation point
-ADD_DESCR("admin", basename(__FILE__));
-OPEN_TABLE("100%", "admin_content admin_content_align", "");
-if (!empty($_GET['mid']))
-{
+ADD_DESCR("admin", __FILE__);
+
+if (!empty($_GET['mid'])) {
// Load email data
- $result = SQL_QUERY_ESC("SELECT id, sender, subject, url, timestamp FROM "._MYSQL_PREFIX."_pool WHERE id=%d LIMIT 1",
+ $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__);
- list ($id, $sender, $subject, $url, $timestamp,) = SQL_FETCHROW($result);
- SQL_FREERESULT($result);
// Delete mail only once
- if ($sender > 0)
- {
+ 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");
+
// Prepare data for the template
define('__ID' , $id);
define('__SENDER' , ADMIN_USER_PROFILE_LINK($sender));
@@ -66,63 +68,108 @@ if (!empty($_GET['mid']))
LOAD_TEMPLATE("admin_del_email_normal");
// Transfer data to data array
- $DATA = array($url, $subject);
+ $DATA = array('url' => $url, 'subject' => $subject);
// Load email template and send the email away
- $msg_user = LOAD_EMAIL_TEMPLATE("order-deleted", "", $sender);
+ $msg_user = LOAD_EMAIL_TEMPLATE("order-deleted", array(), $sender);
SEND_EMAIL($sender, MEMBER_ORDER_DELETED, $msg_user);
// Delete mail from queue
- $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_pool WHERE id=%d LIMIT 1",
+ $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_pool WHERE id=%s LIMIT 1",
array(bigintval($_GET['mid'])), __FILE__, __LINE__);
// Fetch right stats_id from pool
$result = SQL_QUERY_ESC("SELECT s.id FROM "._MYSQL_PREFIX."_user_stats AS s
LEFT JOIN "._MYSQL_PREFIX."_pool AS p
-ON s.pool_id=%d LIMIT 1",
+ON s.pool_id=p.id
+WHERE s.pool_id=%s LIMIT 1",
array(bigintval($_GET['mid'])), __FILE__, __LINE__);
- if (SQL_NUMROWS($result) == 1)
- {
+ if (SQL_NUMROWS($result) == 1) {
// Fetch stats id
list($stats_id) = SQL_FETCHROW($result);
+
+ // Free the result
SQL_FREERESULT($result);
+ // Get all user links
+ $result = SQL_QUERY_ESC("SELECT COUNT(id) AS 'cnt' FROM "._MYSQL_PREFIX."_user_links WHERE stats_id=%s",
+ array(bigintval($stats_id)), __FILE__, __LINE__);
+
+ // Get unconfirmed links for calculation of total points
+ list($links) = SQL_FETCHROW($result);
+
+ // Free result
+ SQL_FREERESULT($result);
+
+ // Calc total points and pay them back
+ $totalPoints = $links * $price;
+
+ // Shall we pay the points back to the user?
+ if ($_CONFIG['repay_deleted_mails'] != 'SHRED') {
+ //* DEBUG: */ echo $stats_id.":".$totalPoints."/".$links."/".$price."
\n";
+ if ($totalPoints > 0) {
+ // Shall we payback to user or jackpot?
+ if ($_CONFIG['repay_deleted_mails'] == "JACKPOT") {
+ // Set jackpot
+ $sender = 0;
+ }
+
+ // Pay back points
+ //* DEBUG: */ echo "PAYBACK:".$sender."
\n";
+ ADD_POINTS_REFSYSTEM($sender, $totalPoints, true, "0", false,"direct");
+
+ // Output message
+ if ($_CONFIG['repay_deleted_mails'] == 'REPAY') {
+ // Repayed
+ LOAD_TEMPLATE("admin_settings_saved", false, sprintf(ADMIN_POINTS_REPAYED,
+ number_format($totalPoints, 0, ",", ".")
+ ));
+ } else {
+ // To jackpot
+ LOAD_TEMPLATE("admin_settings_saved", false, sprintf(ADMIN_POINTS_TO_JACKPOT,
+ number_format($totalPoints, 0, ",", ".")
+ ));
+ }
+ } else {
+ // No points repayed!
+ LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_NO_POINTS_REPAYED);
+ }
+ } else {
+ // Points shredded!
+ LOAD_TEMPLATE("admin_settings_saved", false, sprintf(ADMIN_POINTS_SHREDDED, $totalPoints));
+ }
+
// Remove links from DB
- $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_user_links WHERE stats_id=%d",
+ $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_user_links WHERE stats_id=%s",
array(bigintval($stats_id)), __FILE__, __LINE__);
// Output link for manually removing stats entry
- LOAD_TEMPLATE ("admin_settings_saved", false, "".ADMIN_REMOVE_STATS_ENTRY."");
+ LOAD_TEMPLATE("admin_settings_saved", false, "".ADMIN_REMOVE_STATS_ENTRY."");
}
- }
- else
- {
+ } else {
// Mail already deleted!
LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_NORMAL_MAIL_ALREADY_DELETED);
}
-}
- elseif (!empty($_GET['pid']))
-{
+} elseif (!empty($_GET['pid'])) {
// Remove stats entries
- $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_user_stats WHERE pool_id=%d LIMIT 1",
+ $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_user_stats WHERE pool_id=%s LIMIT 1",
array(bigintval($_GET['pid'])), __FILE__, __LINE__);
LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_USER_STATS_REMOVED);
-}
- elseif ((!empty($_GET['bid'])) && (EXT_IS_ACTIVE("bonus")))
-{
+} elseif ((!empty($_GET['bid'])) && (EXT_IS_ACTIVE("bonus"))) {
// Load data from bonus mail
- $result = SQL_QUERY_ESC("SELECT id, subject, url, timestamp FROM "._MYSQL_PREFIX."_bonus WHERE id=%d",
+ $result = SQL_QUERY_ESC("SELECT id, subject, url, timestamp FROM "._MYSQL_PREFIX."_bonus WHERE id=%s",
array(bigintval($_GET['bid'])), __FILE__, __LINE__);
- list ($id, $subject, $url, $timestamp) = SQL_FETCHROW($result);
- SQL_FREERESULT($result);
// Delete mail only once
- if ($id > 0)
- {
+ if (SQL_NUMROWS($result) == 1) {
+ // Load data
+ list ($id, $subject, $url, $timestamp) = SQL_FETCHROW($result);
+ SQL_FREERESULT($result);
+
// Delete bonus mail entirely from database
- $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_bonus WHERE id=%d LIMIT 1",
+ $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_bonus WHERE id=%s LIMIT 1",
array(bigintval($_GET['bid'])), __FILE__, __LINE__);
- $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_user_links WHERE bonus_id=%d",
+ $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_user_links WHERE bonus_id=%s",
array(bigintval($_GET['bid'])), __FILE__, __LINE__);
// Prepare data for the template
@@ -133,18 +180,43 @@ ON s.pool_id=%d LIMIT 1",
// Load template
LOAD_TEMPLATE("admin_del_email_bonus");
- }
- else
- {
+ } else {
// Mail already deleted!
LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_BONUS_MAIL_ALREADY_DELETED);
}
-}
- else
-{
+} elseif ((!empty($_GET['nid'])) && (GET_EXT_VERSION("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__);
+
+ // Delete mail only once
+ if (SQL_NUMROWS($result) == 1) {
+ // Load data
+ list ($id, $subject, $url, $timestamp) = SQL_FETCHROW($result);
+ SQL_FREERESULT($result);
+
+ // Delete bonus mail entirely from database
+ $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_bonus WHERE id=%s LIMIT 1",
+ array(bigintval($_GET['nid'])), __FILE__, __LINE__);
+ $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_user_links WHERE bonus_id=%s",
+ array(bigintval($_GET['nid'])), __FILE__, __LINE__);
+
+ // Prepare data for the template
+ define('__ID' , $id);
+ define('__SUBJECT', $subject);
+ define('__URL' , DEREFERER($url));
+ define('__ORDERED', MAKE_DATETIME($timestamp, "0"));
+
+ // Load template
+ LOAD_TEMPLATE("admin_del_email_notify");
+ } else {
+ // Mail already deleted!
+ LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_NOTIFY_MAIL_ALREADY_DELETED);
+ }
+} else {
// No mail orders fond
- LOAD_TEMPLATE ("admin_settings_saved", false, ADMIN_WRONG_CALL);
+ LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_WRONG_CALL);
}
-CLOSE_TABLE();
+
//
?>