2 /************************************************************************
3 * MXChange v0.2.1 Start: 09/28/2003 *
4 * =============== Last change: 04/03/2004 *
6 * -------------------------------------------------------------------- *
7 * File : what-email_archiv .php *
8 * -------------------------------------------------------------------- *
9 * Short description : See send emails details of ordered mails *
10 * -------------------------------------------------------------------- *
11 * Kurzbeschreibung : Alle Mails ansehen die versand wurden *
12 * -------------------------------------------------------------------- *
15 * $Tag:: 0.2.1-FINAL $ *
17 * Needs to be in all Files and every File needs "svn propset *
18 * svn:keywords Date Revision" (autoprobset!) at least!!!!!! *
19 * -------------------------------------------------------------------- *
20 * Copyright (c) 2003 - 2009 by Roland Haeder *
21 * For more information visit: http://www.mxchange.org *
23 * This program is free software; you can redistribute it and/or modify *
24 * it under the terms of the GNU General Public License as published by *
25 * the Free Software Foundation; either version 2 of the License, or *
26 * (at your option) any later version. *
28 * This program is distributed in the hope that it will be useful, *
29 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
30 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
31 * GNU General Public License for more details. *
33 * You should have received a copy of the GNU General Public License *
34 * along with this program; if not, write to the Free Software *
35 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, *
37 * -------------------------------------------------------------------- *
38 * Mod-Copyright (c) 2004 by Robert Niedziela *
39 * www.megacomputing.de *
40 ************************************************************************/
42 // Some security stuff...
43 if ((!defined('__SECURITY')) || (!isAdmin())) {
47 // Add description as navigation point
48 addMenuDescription('admin', __FILE__);
52 `id`, `sender`, `subject`, `text`, `receivers`, `payment_id`, `data_type`, `timestamp`, `url`, `target_send`, `cat_id`
54 `{?_MYSQL_PREFIX?}_pool`
56 `data_type`='SEND' OR `data_type`='DELETED'
60 // Check for maximum pages
61 $result_maximum = SQL_QUERY($sql, __FILE__, __LINE__);
63 // Set offset an current page to default values
64 if (!isGetRequestElementSet('page')) setRequestGetElement('page' , 1);
65 if (!isGetRequestElementSet('offset')) setRequestGetElement('offset', getConfig('mails_page'));
67 // Add limitation to SQL string
68 $sql .= " LIMIT ".(getRequestElement('offset') * getRequestElement('page') - getRequestElement('offset')).", ".getRequestElement('offset');
70 // Run SQL query for normal mails
71 $result = SQL_QUERY($sql, __FILE__, __LINE__);
74 $pages = round(SQL_NUMROWS($result_maximum) / getConfig('mails_page') + 0.5);
76 // Free the result which we don't need
77 SQL_FREERESULT($result_maximum);
79 if (SQL_NUMROWS($result) > 0) {
80 // Mail orders are in pool so we can display them
82 // Add navigation table rows
83 $content['top_email_nav'] = '';
84 $content['bottom_email_nav'] = '';
86 $content['top_email_nav'] = addEmailNavigation($pages, getConfig('mails_page'), true , 3, true);
87 $content['bottom_email_nav'] = addEmailNavigation($pages, getConfig('mails_page'), false, 3, true);
91 // @TODO Rewrite to SQL_FETCHARRAY()
92 while ($pool = SQL_FETCHROW($result)) {
93 // Check sent mails and clicks
94 $result_mails = SQL_QUERY_ESC("SELECT `max_rec`, `clicks` FROM `{?_MYSQL_PREFIX?}_user_stats` WHERE `pool_id`=%s LIMIT 1",
95 array(bigintval($pool[0])), __FILE__, __LINE__);
96 list($sent, $clicks) = SQL_FETCHROW($result_mails);
97 SQL_FREERESULT($result_mails);
100 $unconfirmed = $sent - $clicks;
101 if ($unconfirmed > 0) {
102 // Add link to list_unconfirmed what-file
103 $unconfirmed = "<strong><a href=\"{?URL?}/modules.php?module=admin&what=list_unconfirmed&mid=".$pool[0]."\">".$unconfirmed."</a></strong>";
106 // Prepare data for the row template
109 'u_link' => generateUserProfileLink($pool[1]),
110 'subject' => $pool[2],
112 'pay' => getPaymentTitlePrice($pool[5]),
113 'cat' => getCategory($pool[10]),
115 'ruserids' => convertReceivers($pool[4]),
116 'unconfirmed' => $unconfirmed,
117 'type' => translatePoolType($pool[6]),
118 'target_send' => $pool[9],
119 'frametester' => generateFrametesterUrl($pool[8]),
121 'stamp' => generateDateTime($pool[7], 0),
125 // Load row template and switch colors
126 $OUT .= loadTemplate('admin_email_archiv_row', true, $row);
130 // Remmber generated rows in array
131 $content['rows'] = $OUT;
133 // Load main template
134 loadTemplate('admin_email_archiv', false, $content);
136 // No mail orders fond
137 loadTemplate('admin_settings_saved', false, getMessage('ADMIN_NO_MAILS_IN_POOL'));
141 SQL_FREERESULT($result);