X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Fmodules%2Fadmin%2Fwhat-del_email.php;h=da714d623e8863213720bb1ac92d7ea91686a3a2;hb=056162fe45aa0d850bb22870e1caf9595a847a9b;hp=d573eb6b2c9dfbdfc6932965be8cd19e5b208696;hpb=e87430f959a8b240d516ef830e6494165bc933b2;p=mailer.git diff --git a/inc/modules/admin/what-del_email.php b/inc/modules/admin/what-del_email.php index d573eb6b2c..da714d623e 100644 --- a/inc/modules/admin/what-del_email.php +++ b/inc/modules/admin/what-del_email.php @@ -35,17 +35,17 @@ ************************************************************************/ // 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__)); +ADD_DESCR("admin", __FILE__); if (!empty($_GET['mid'])) { // Load email data - $result = SQL_QUERY_ESC("SELECT id, sender, subject, url, timestamp, payment_id 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__); // Delete mail only once @@ -68,21 +68,21 @@ 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=p.id -WHERE s.pool_id=%d LIMIT 1", +WHERE s.pool_id=%s LIMIT 1", array(bigintval($_GET['mid'])), __FILE__, __LINE__); if (SQL_NUMROWS($result) == 1) { // Fetch stats id @@ -91,38 +91,56 @@ WHERE s.pool_id=%d LIMIT 1", // Free the result SQL_FREERESULT($result); - // Shall we pay the points back to the user? - if ($_CONFIG['repay_deleted_mails'] == "Y") { - // 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 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); - // Get unconfirmed links for calculation of total points - list($links) = SQL_FETCHROW($result); + // Free result + SQL_FREERESULT($result); - // Free result - SQL_FREERESULT($result); + // Calc total points and pay them back + $totalPoints = $links * $price; - // 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 - LOAD_TEMPLATE("admin_settings_saved", false, sprintf(ADMIN_POINTS_REPAYED, - number_format($totalPoints, 0, ",", ".") - )); + 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 @@ -134,12 +152,12 @@ WHERE s.pool_id=%d LIMIT 1", } } 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"))) { // 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__); // Delete mail only once @@ -149,9 +167,9 @@ WHERE s.pool_id=%d LIMIT 1", 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 @@ -166,6 +184,35 @@ WHERE s.pool_id=%d LIMIT 1", // Mail already deleted! LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_BONUS_MAIL_ALREADY_DELETED); } +} 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);