X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=inc%2Fmodules%2Fmember%2Fwhat-stats.php;h=c31177ee1cbd454ccaa2882a384678a30137cc0f;hb=63f159414369b5ea19a8ca75d8cd8033c45d8341;hp=75a93fa8b0bf549fae7ebb5d734ab2ceef51651d;hpb=04b69ac9f33369cbf654396c4a42cb1fff710ff4;p=mailer.git diff --git a/inc/modules/member/what-stats.php b/inc/modules/member/what-stats.php index 75a93fa8b0..c31177ee1c 100644 --- a/inc/modules/member/what-stats.php +++ b/inc/modules/member/what-stats.php @@ -14,12 +14,10 @@ * $Date:: $ * * $Tag:: 0.2.1-FINAL $ * * $Author:: $ * - * Needs to be in all Files and every File needs "svn propset * - * svn:keywords Date Revision" (autoprobset!) at least!!!!!! * * -------------------------------------------------------------------- * * Copyright (c) 2003 - 2009 by Roland Haeder * - * Copyright (c) 2009, 2010 by Mailer Developer Team * - * For more information visit: http://www.mxchange.org * + * Copyright (c) 2009 - 2012 by Mailer Developer Team * + * For more information visit: http://mxchange.org * * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * @@ -39,20 +37,20 @@ // Some security stuff... if (!defined('__SECURITY')) { - die(); + exit(); } elseif (!isMember()) { redirectToIndexMemberOnlyModule(); } // Add description as navigation point -addMenuDescription('member', __FILE__); +addYouAreHereLink('member', __FILE__); // Init output $main_content = array(); // Load waiting/pending orders $result = SQL_QUERY_ESC("SELECT - `id`, `cat_id`, `payment_id`, `subject`, `url`, `timestamp`, `target_send`, `data_type`, `zip` + `id`,`cat_id`,`payment_id`,`subject`,`url`,`timestamp`,`target_send`,`data_type`,`zip` FROM `{?_MYSQL_PREFIX?}_pool` WHERE @@ -63,39 +61,22 @@ ORDER BY array(getMemberId()), __FILE__, __LINE__); // Are there mails left in pool? -if (SQL_NUMROWS($result) > 0) { +if (!SQL_HASZERONUMS($result)) { // Load all orders - $OUT = ''; $SW = 2; + $OUT = ''; while ($content = SQL_FETCHARRAY($result)) { - // Is the ZIP code set? If not, set dashes - if (empty($content['zip'])) $content['zip'] = '---'; - // Prepare content for output - $content = array( - 'sw' => $SW, - 'id' => $content['id'], - 'cat' => getCategory($content['cat_id']), - 'pay' => getPaymentTitlePrice($content['payment_id']), - 'subject' => $content['subject'], - 'url' => generateDerefererUrl($content['url']), - 'timestamp' => generateDateTime($content['timestamp'], 2), - 'target_send' => $content['target_send'], - 'type' => translatePoolType($content['data_type']), - 'zip' => $content['zip'] - ); + $content['timestamp'] = generateDateTime($content['timestamp'], '2'); // Load template $OUT .= loadTemplate('member_pool_row', true, $content); - - // Switch color - $SW = 3 - $SW; } // END - if // Load main template $main_content['pool'] = loadTemplate('member_pool_table', true, $OUT); } else { // No mails in pool! - $main_content['pool'] = loadTemplate('admin_settings_saved', true, '{--MEMBER_NO_MAILS_IN_POOL--}'); + $main_content['pool'] = displayMessage('{--MEMBER_NO_MAILS_IN_POOL--}', true); } // Free result @@ -103,7 +84,7 @@ SQL_FREERESULT($result); // Load sent orders $result = SQL_QUERY_ESC("SELECT - `id`, `cat_id`, `payment_id`, `subject`, `url`, `timestamp_ordered`, `max_rec`, `timestamp_send`, `clicks` + `id`,`cat_id`,`payment_id`,`subject`,`url`,`timestamp_ordered`,`max_rec`,`timestamp_send`,`clicks` FROM `{?_MYSQL_PREFIX?}_user_stats` WHERE @@ -112,34 +93,31 @@ ORDER BY `timestamp_ordered` DESC", array(getMemberId()), __FILE__, __LINE__); -if (SQL_NUMROWS($result) > 0) { +if (!SQL_HASZERONUMS($result)) { // Mail orders are in pool so we can display them - $OUT = ''; $SW = 2; + $OUT = ''; while ($content = SQL_FETCHARRAY($result)) { // Prepare data for the template - $content = array( - 'sw' => $SW, - 'cat_id' => $content['cat_id'], - 'payment_id' => $content['payment_id'], - 'url' => $content['url'], - 'timestamp_ordered' => generateDateTime($content['timestamp_ordered'], 2), - 'max_rec' => $content['max_rec'], - 'timestamp_sent' => generateDateTime($content['timestamp_send'], 2), - 'clicks' => $content['clicks'], - 'subject' => $content['subject'], - 'percents' => ($content['clicks'] / $content['max_rec'] * 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 .= loadTemplate('member_stats_row', true, $content); - $SW = 3 - $SW; - } // END - if + } // END - while // Load main template $main_content['stats'] = loadTemplate('member_stats_table', true, $OUT); } else { // No mail orders fond - $main_content['stats'] = loadTemplate('admin_settings_saved', true, '{--MEMBER_NO_MAILS_IN_STATS--}'); + $main_content['stats'] = displayMessage('{--MEMBER_NO_MAILS_IN_STATS--}', true); } // Free result