X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodules%2Fadmin%2Fwhat-list_unconfirmed.php;h=52037dd5c90163d10b11166c4182d76f0b748e1f;hp=0c46cbe3fc47bb2ceec5a710de53d9ce084dbc69;hb=ec9f020e34a9f2029a2ea0969564dda015beca8a;hpb=1cf72a9c1a5e737509af79d49f0731da2eb6a218 diff --git a/inc/modules/admin/what-list_unconfirmed.php b/inc/modules/admin/what-list_unconfirmed.php index 0c46cbe3fc..52037dd5c9 100644 --- a/inc/modules/admin/what-list_unconfirmed.php +++ b/inc/modules/admin/what-list_unconfirmed.php @@ -1,7 +1,7 @@ 0) && ($ID == "-1")) $ID = $stats_id; - if ($col == "bonus_id") $sender = 0; - define('__LIST_UNCON_SENDER' , $sender); - define('__LIST_UNCON_SUBJECT', COMPILE_CODE($subj)); - define('__LIST_UNCON_TEXT' , COMPILE_CODE($text)); - define('__LIST_UNCON_URL' , urlencode(base64_encode($url))); - define('__LIST_UNCON_STAMP' , MAKE_DATETIME($stamp, "2")); + // If there is a pool id and $ID is not set, we take it + if (($poolData['id'] > 0) && ($ID == '-1')) { + $ID = $poolData['id']; + } // END - if + + // Bonus mails do always have a sender 'NULL' + if ($col == 'bonus_id') { + $poolData['sender'] = null; + } // END - if // Load unconfirmed mail links. Hmmm, this select query is pretty cool // but it does only show unconfirmed mail links from existing user // accounts. So if you have delete one you did not see those links - // - $result = SQL_QUERY_ESC("SELECT DISTINCT l.userid, u.status, u.surname, u.family, u.gender, u.email -FROM `{!_MYSQL_PREFIX!}_user_links` AS l -LEFT JOIN `{!_MYSQL_PREFIX!}_user_data` AS u -ON l.userid=u.userid -WHERE l.%s='%s' ORDER BY l.userid LIMIT %s", - array($col, $ID, bigintval($max)),__FILE__, __LINE__); - $unconfirmed = SQL_NUMROWS($result); - define('__LIST_UNCO_UNCONFIRMED', $unconfirmed); - - if ($unconfirmed > 0) { + $result = SQL_QUERY_ESC("SELECT + l.`userid`, u.`status`, u.`surname`, u.`family`, u.`gender`, u.`email` +FROM + `{?_MYSQL_PREFIX?}_user_links` AS `l` +LEFT JOIN + `{?_MYSQL_PREFIX?}_user_data` AS `u` +ON + l.`userid`=u.`userid` +WHERE + l.`%s`=%s +ORDER BY + l.`userid` ASC +LIMIT %s", + array( + $col, + $ID, + bigintval($poolData['max_rec']) + ),__FILE__, __LINE__); + + // Do we have entries? + if (!SQL_HASZERONUMS($result)) { // At least one link left to confirm - $OUT = LOAD_TEMPLATE("admin_list_unconfirmed_header", true); - $SW = 2; - while (list($uid, $status, $sname, $fname, $gender, $email) = SQL_FETCHROW($result)) { - // Prepare data for the row template - $content = array( - 'sw' => $SW, - 'u_link' => ADMIN_USER_PROFILE_LINK($uid), - 'uid' => $uid, - 'link' => $LINK, - 'id' => $ID, - 'email' => "".TRANSLATE_GENDER($gender)." ".$sname." ".$fname."", - 'status' => TRANSLATE_STATUS($status), - ); - - // Load row template and switch colors - $OUT .= LOAD_TEMPLATE("admin_list_unconfirmed_row", true, $content); - $SW = 3 - $SW; - } - $OUT .= "\n"; - - // Free memory - SQL_FREERESULT($result); - - // Store table rows in a constant - define('__LIST_UNCON_LISTING', $OUT); + $OUT = ''; + while ($row = SQL_FETCHARRAY($result)) { + // User data found? We can take any field of u. + if (!is_null($row['status'])) { + // Prepare data for the row template + $row = array( + 'userid' => $row['userid'], + 'link' => $mailType, + 'id' => $ID, + 'email' => '' . translateGender($row['gender']) . ' ' . $row['surname'] . ' ' . $row['family'] . '', + 'status' => $row['status'], + ); + + // Load row template and switch colors + $OUT .= loadTemplate('admin_list_unconfirmed_row', true, $row); + } else { + // No user data found + $OUT .= loadTemplate('admin_list_unconfirmed_row_404', true, $row); + } + } // END - while + + // Render it in our new listing + $OUT = loadTemplate('admin_list_unconfirmed_list', true, $OUT); } else { // All links are confirmed... strange, you shall normally not get a link to this place in this scenario... hmmm. - define('__LIST_UNCON_LISTING', LOAD_TEMPLATE("admin_settings_saved", true, getMessage('ADMIN_UNCONFIRMED_NO_LINK_LEFT'))); + $OUT = displayMessage('{--ADMIN_UNCONFIRMED_NO_LINK_LEFT--}', true); } + // Prepare content + $content = $poolData; + $content['unconfirmed'] = SQL_NUMROWS($result); + $content['timestamp'] = generateDateTime($poolData['timestamp'], 2); + $content['rows'] = $OUT; + + // Free memory + SQL_FREERESULT($result); + // Load final template - LOAD_TEMPLATE("admin_list_unconfirmed"); - } elseif ($_GET['mid'] > 0) { + loadTemplate('admin_list_unconfirmed', false, $content); + } elseif (getRequestParameter('mid') > 0) { // Data in pool or in user_stats not found, so let's find out where data is missing - $result1 = SQL_QUERY_ESC("SELECT id FROM `{!_MYSQL_PREFIX!}_pool` WHERE id=%s LIMIT 1", - array(bigintval($ID)), __FILE__, __LINE__); - $result2 = SQL_QUERY_ESC("SELECT id FROM `{!_MYSQL_PREFIX!}_user_stats` WHERE pool_id=%s LIMIT 1", - array(bigintval($ID)), __FILE__, __LINE__); - if (SQL_NUMROWS($result1) == 1) { + if (countSumTotalData(bigintval($ID), 'pool', 'id', 'id', true) == 1) { // pool table - LOAD_TEMPLATE("admin_settings_saved", false, sprintf(getMessage('ADMIN_UNCONFIRMED_POOL_MISSING', $ID))); - } elseif (SQL_NUMROWS($result2) == 1) { + displayMessage(getMaskedMessage('ADMIN_UNCONFIRMED_POOL_MISSING', $ID)); + } elseif (countSumTotalData(bigintval($ID), 'user_stats', 'id', 'pool_id', true) == 1) { // user_stats table - LOAD_TEMPLATE("admin_settings_saved", false, sprintf(getMessage('ADMIN_UNCONFIRMED_STATS_MISSING', $ID))); + displayMessage(getMaskedMessage('ADMIN_UNCONFIRMED_STATS_MISSING', $ID)); } else { // both or link is invalid - LOAD_TEMPLATE("admin_settings_saved", false, getMessage('ADMIN_UNCONFIRMED_INVALID_LINK')); + displayMessage('{--ADMIN_UNCONFIRMED_INVALID_LINK--}'); } - - // Free memory - SQL_FREERESULT($result1); - SQL_FREERESULT($result2); - } elseif (!empty($_GET['bid'])) { + } elseif (isGetRequestParameterSet('bid')) { // Data in bonus table not found - LOAD_TEMPLATE("admin_settings_saved", false, getMessage('ADMIN_UNCONFIRMED_INVALID_LINK')); + displayMessage('{--ADMIN_UNCONFIRMED_INVALID_LINK--}'); } -} -// + // Free result + SQL_FREERESULT($result_master); +} // END - if + +// [EOF] ?>