X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodules%2Fadmin%2Fwhat-del_email.php;h=635b6443e9a8399d987dfd9579420f75d676ad7f;hp=136b0f947c738457cc69a636afc5275b44972d0d;hb=e79e1454e88271e35086963a0422a51cc243e67a;hpb=75ad748a68473ace540251427a74fb781b1145e9 diff --git a/inc/modules/admin/what-del_email.php b/inc/modules/admin/what-del_email.php index 136b0f947c..635b6443e9 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 ((ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) || (!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'])) -{ + +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=%d 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)); @@ -79,46 +81,79 @@ if (!empty($_GET['mid'])) // 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=%d 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); + // Shall we pay the points back to the user? + if ($_CONFIG['repay_deleted_mails'] != "NEVER") { + // Get all user links + $result = SQL_QUERY_ESC("SELECT COUNT(id) AS 'cnt' FROM "._MYSQL_PREFIX."_user_links WHERE stats_id=%d", + 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; + //* 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 + LOAD_TEMPLATE("admin_settings_saved", false, sprintf(ADMIN_POINTS_REPAYED, + number_format($totalPoints, 0, ",", ".") + )); + } else { + // No points repayed! + LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_NO_POINTS_REPAYED); + } + } + // Remove links from DB $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_user_links WHERE stats_id=%d", 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", 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", 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", array(bigintval($_GET['bid'])), __FILE__, __LINE__); @@ -133,18 +168,14 @@ 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 -{ +} 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(); + // ?>