2 /************************************************************************
3 * Mailer v0.2.1-FINAL Start: 10/07/2008 *
4 * =================== Last change: 10/07/2008 *
6 * -------------------------------------------------------------------- *
7 * File : what-list_notifications.php *
8 * -------------------------------------------------------------------- *
9 * Short description : See all notification emails (beg/active rallye) *
10 * -------------------------------------------------------------------- *
11 * Kurzbeschreibung : Alle Benachrichtigungen sehen (Bettel-/Aktiv-R.) *
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 * Copyright (c) 2009, 2010 by Mailer Developer Team *
22 * For more information visit: http://www.mxchange.org *
24 * This program is free software; you can redistribute it and/or modify *
25 * it under the terms of the GNU General Public License as published by *
26 * the Free Software Foundation; either version 2 of the License, or *
27 * (at your option) any later version. *
29 * This program is distributed in the hope that it will be useful, *
30 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
31 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
32 * GNU General Public License for more details. *
34 * You should have received a copy of the GNU General Public License *
35 * along with this program; if not, write to the Free Software *
36 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, *
38 ************************************************************************/
40 // Some security stuff...
41 if ((!defined('__SECURITY')) || (!isAdmin())) {
45 // Add description as navigation point
46 addMenuDescription('admin', __FILE__);
52 // Set offset an current page to default values
53 if (!isGetRequestParameterSet('page')) setGetRequestParameter('page' , 1);
54 if (!isGetRequestParameterSet('offset')) setGetRequestParameter('offset', getConfig('mails_page'));
56 if (isExtensionActive('bonus')) {
57 // Bonus mails sent by you
58 // 0 1 2 3 4 5 6 7 8 9 10 11 12
59 $SQL2 = "SELECT id, subject, text, receivers, points, time, data_type, timestamp, url, cat_id, target_send, mails_sent, clicks
60 FROM `{?_MYSQL_PREFIX?}_bonus`
62 ORDER BY timestamp DESC";
64 // Check for maximum pages
65 $result_max = SQL_QUERY($SQL2, __FILE__, __LINE__);
67 // Bonus extension required!
68 loadTemplate('admin_settings_saved', false, getMaskedMessage('ADMIN_EXTENSION_PROBLEM_EXT_NOT_INSTALLED', 'bonus'));
71 // Create limitation line
72 $add = " LIMIT ".(bigintval(getRequestParameter('offset')) * bigintval(getRequestParameter('page')) - bigintval(getRequestParameter('offset'))).", ".bigintval(getRequestParameter('offset'));
75 if (!empty($SQL2)) $SQL2 .= $add;
77 if ((isExtensionActive('bonus')) && (SQL_NUMROWS($result_max) > 0) && (!empty($SQL2))) {
78 // Run SQL query for notification mails
79 $result_bonus = SQL_QUERY($SQL2, __FILE__, __LINE__);
81 // Load bonus mails only when extension is active
82 if (SQL_NUMROWS($result_bonus) > 0) {
84 $PAGES = round(SQL_NUMROWS($result_bonus) / getConfig('mails_page') + 0.5);
87 $OUT = ''; $content = array();
88 while ($bonus = SQL_FETCHARRAY($result_bonus)) {
89 // Calculate unconfirmed emails
90 $bonus['unconfirmed'] = $bonus['mails_sent'] - $bonus['clicks'];
93 if ($bonus['unconfirmed'] > 0) {
94 // Add link to list_unconfirmed what-file
95 $bonus['unconfirmed'] = "<strong><a href=\"{%url=modules.php?module=admin&what=list_unconfirmed&bid=" . $bonus['id'] . "%}\">" . $bonus['unconfirmed'] . "</a></strong>";
100 $content['time'] = createFancyTime($content['time']);
101 $content['category'] = getCategory($content['cat_id']);
102 $content['receivers'] = convertReceivers($content['receivers']);
103 $content['type'] = translatePoolType($content['data_type']);
104 $content['frametester'] = generateFrametesterUrl($content['url']);
105 $content['timestamp'] = generateDateTime($content['timestamp'], 0);
108 $OUT .= loadTemplate('admin_list_notify_emails_row', true, $content);
111 // Add navigation (without change box but with colspan=3)
112 $content['nav'] = '';
113 if ($PAGES > 1) $content['nav'] = addEmailNavigation($PAGES, getConfig('mails_page'), false, 3, true);
116 $content['rows'] = $OUT;
118 // Load main template
119 loadTemplate('admin_list_notify_emails', false, $content);
121 } elseif ((SQL_NUMROWS($result_max) === 0) && (is_resource($result_max))) {
122 // No notifications found
123 loadTemplate('admin_settings_saved', false, getMessage('ADMIN_NO_NOTIFICATIONS'));