X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodules%2Fmember%2Fwhat-stats.php;h=51b82ba7e5d51aaea674924aed7e0844dd59f4bc;hp=a5e520a23cbdd4d730e8aeb53174ce063056ef80;hb=2df9f7a53f8b1dd5164f87824a324ccb3b6634cb;hpb=4001187f22197f55e5a1f211fc8defcc180f7c32 diff --git a/inc/modules/member/what-stats.php b/inc/modules/member/what-stats.php index a5e520a23c..51b82ba7e5 100644 --- a/inc/modules/member/what-stats.php +++ b/inc/modules/member/what-stats.php @@ -1,7 +1,7 @@ 0) { +if (!SQL_HASZERONUMS($result)) { // Load all orders - $OUT = ""; $SW = 2; - while ($data = SQL_FETCHARRAY($result)) { - // Is the ZIP code set? If not, set dashes - if (empty($data['zip'])) $data['zip'] = "---"; - + $OUT = ''; + while ($content = SQL_FETCHARRAY($result)) { // Prepare content for output - $content = array( - 'sw' => $SW, - 'id' => $data['id'], - 'cat' => GET_CATEGORY($data['cat_id']), - 'pay' => GET_PAYMENT($data['payment_id']), - 'subj' => COMPILE_CODE($data['subject']), - 'url' => DEREFERER($data['url']), - 'stamp' => MAKE_DATETIME($data['timestamp'], "2"), - 'recs' => $data['target_send'], - 'type' => TRANSLATE_POOL_TYPE($data['data_type']), - 'zip' => $data['zip'] - ); + $content['timestamp'] = generateDateTime($content['timestamp'], '2'); // Load template - $OUT .= LOAD_TEMPLATE("member_pool_row", true, $content); - - // Switch color - $SW = 3 - $SW; + $OUT .= loadTemplate('member_pool_row', true, $content); } // END - if // Load main template - $main_content['pool'] = LOAD_TEMPLATE("member_pool_table", true, $OUT); + $main_content['pool'] = loadTemplate('member_pool_table', true, $OUT); } else { // No mails in pool! - $main_content['pool'] = LOAD_TEMPLATE("admin_settings_saved", true, getMessage('MEMBER_NO_MAILS_IN_POOL')); + $main_content['pool'] = displayMessage('{--MEMBER_NO_MAILS_IN_POOL--}', true); } // Free result SQL_FREERESULT($result); // Load sent orders -// 0 1 2 3 4 5 6 7 8 -$result = SQL_QUERY_ESC("SELECT id, cat_id, payment_id, subject, url, timestamp_ordered, max_rec, timestamp_send, clicks -FROM `{!_MYSQL_PREFIX!}_user_stats` -WHERE userid=%s -ORDER BY timestamp_ordered DESC", - array($GLOBALS['userid']), __FILE__, __LINE__); - -if (SQL_NUMROWS($result) > 0) { +$result = SQL_QUERY_ESC('SELECT + `id`, + `cat_id`, + `payment_id`, + `subject`, + `url`, + `timestamp_ordered`, + `max_rec`, + `timestamp_send`, + `clicks` +FROM + `{?_MYSQL_PREFIX?}_user_stats` +WHERE + `userid`=%s +ORDER BY + `timestamp_ordered` DESC', + array(getMemberId()), __FILE__, __LINE__); + +if (!SQL_HASZERONUMS($result)) { // Mail orders are in pool so we can display them - $OUT = ""; $SW = 2; - while ($data = SQL_FETCHROW($result)) { + $OUT = ''; + while ($content = SQL_FETCHARRAY($result)) { // Prepare data for the template - $content = array( - 'sw' => $SW, - 'cat' => GET_CATEGORY($data[1]), - 'pay' => GET_PAYMENT($data[2]), - 'subj' => COMPILE_CODE($data[3]), - 'url' => DEREFERER($data[4]), - 'stamp' => MAKE_DATETIME($data[5], "2"), - 'recs' => $data[6], - 'sent' => MAKE_DATETIME($data[7], "2"), - 'clix' => $data[8], - 'perc' => COMPILE_CODE($data[8] / $data[6] * 100)."%", - ); + $content['timestamp_ordered'] = generateDateTime($content['timestamp_ordered'], '2'); + $content['timestamp_sent'] = generateDateTime($content['timestamp_send'], '2'); + + // Click rate + $content['click_rate'] = '0'; + + // Better protection against 'divison-by-zero' + if ($content['max_rec'] > 0) { + $content['click_rate'] = ($content['clicks'] / $content['max_rec'] * 100); + } // END - if // Load row template and switch colors - $OUT .= LOAD_TEMPLATE("member_stats_row", true, $content); - $SW = 3 - $SW; - } + $OUT .= loadTemplate('member_stats_row', true, $content); + } // END - while // Load main template - $main_content['stats'] = LOAD_TEMPLATE("member_stats_table", true, $OUT); + $main_content['stats'] = loadTemplate('member_stats_table', true, $OUT); } else { // No mail orders fond - $main_content['stats'] = LOAD_TEMPLATE("admin_settings_saved", true, getMessage('MEMBER_NO_MAILS_IN_STATS')); + $main_content['stats'] = displayMessage('{--MEMBER_NO_MAILS_IN_STATS--}', true); } // Free result SQL_FREERESULT($result); // Load main template -LOAD_TEMPLATE("member_stats_pool", false, $main_content); +loadTemplate('member_stats_pool', false, $main_content); -// +// [EOF] ?>