A lot has been rewritten, ext-teams added, ext-forced continued:
[mailer.git] / inc / modules / admin / what-email_archiv.php
index 7ec5a8febddb028e9e170f6015429ca83d20cd6d..df2f81324e3da856b18fe65772680971faeb9bb9 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 /************************************************************************
- * MXChange v0.2.1                                    Start: 09/28/2003 *
- * ===============                              Last change: 04/03/2004 *
+ * Mailer v0.2.1-FINAL                                Start: 09/28/2003 *
+ * ===================                          Last change: 04/03/2004 *
  *                                                                      *
  * -------------------------------------------------------------------- *
  * File              : what-email_archiv .php                           *
  * -------------------------------------------------------------------- *
  * Kurzbeschreibung  : Alle  Mails ansehen die versand wurden           *
  * -------------------------------------------------------------------- *
- *                                                                      *
+ * $Revision::                                                        $ *
+ * $Date::                                                            $ *
+ * $Tag:: 0.2.1-FINAL                                                 $ *
+ * $Author::                                                          $ *
  * -------------------------------------------------------------------- *
- * Copyright (c) 2003 - 2008 by Roland Haeder                           *
+ * Copyright (c) 2003 - 2009 by Roland Haeder                           *
+ * Copyright (c) 2009 - 2011 by Mailer Developer Team                   *
  * For more information visit: http://www.mxchange.org                  *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
  ************************************************************************/
 
 // Some security stuff...
-if ((ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) || (!IS_ADMIN()))
-{
-       $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
-       require($INC);
-}
+if ((!defined('__SECURITY')) || (!isAdmin())) {
+       die();
+} // END - if
+
 // Add description as navigation point
-ADD_DESCR("admin", basename(__FILE__));
+addYouAreHereLink('admin', __FILE__);
 
-//             0     1        2      3        4          5           6          7      8         9        10
-$SQL = "SELECT id, sender, subject, text, receivers, payment_id, data_type, timestamp, url, target_send, cat_id
- FROM "._MYSQL_PREFIX."_pool
- WHERE data_type='SEND' OR data_type='DELETED'
- ORDER BY timestamp DESC";
+// Init SQL
+$sql = "SELECT
+       `id`,`sender`,`subject`,`text`,`receivers`,`payment_id`,`data_type`,`timestamp`,`url`,`target_send`,`cat_id`
+FROM
+       `{?_MYSQL_PREFIX?}_pool`
+WHERE
+       `data_type`='SEND' OR `data_type`='DELETED'
+ORDER BY
+       `timestamp` DESC";
 
 // Check for maximum pages
-$result_normal = SQL_QUERY($SQL, __FILE__, __LINE__);
+$result_maximum = SQL_QUERY($sql, __FILE__, __LINE__);
 
 // Set offset an current page to default values
-if (empty($_GET['page']))   $_GET['page']   = "1";
-if (empty($_GET['offset'])) $_GET['offset'] = $_CONFIG['mails_page'];
+if (!isGetRequestParameterSet('page'))   setGetRequestParameter('page'  , 1);
+if (!isGetRequestParameterSet('offset')) setGetRequestParameter('offset', getMailsPage());
 
 // Add limitation to SQL string
-$SQL .= " LIMIT ".($_GET['offset'] * $_GET['page'] - $_GET['offset']).", ".$_GET['offset'];
+$sql .= ' LIMIT ' . (getRequestParameter('offset') * getRequestParameter('page') - getRequestParameter('offset')) . ', ' . getRequestParameter('offset');
 
 // Run SQL query for normal mails
-$result = SQL_QUERY($SQL, __FILE__, __LINE__);
+$result = SQL_QUERY($sql, __FILE__, __LINE__);
 
 // Calculate pages
-$PAGES = round(SQL_NUMROWS($result_normal) / $_CONFIG['mails_page'] + 0.5);
-SQL_FREERESULT($result_normal);
+$numPages = round(SQL_NUMROWS($result_maximum) / getMailsPage() + 0.5);
 
-if (SQL_NUMROWS($result) > 0)
-{
+// Free the result which we don't need
+SQL_FREERESULT($result_maximum);
+
+if (!SQL_HASZERONUMS($result)) {
        // Mail orders are in pool so we can display them
 
        // Add navigation table rows
-       if ($PAGES > 1)
-       {
-               define('__TOP_EMAIL_NAV'   , ADD_EMAIL_NAV($PAGES, $_CONFIG['mails_page'], true , "3", true));
-               define('__BOTTOM_EMAIL_NAV', ADD_EMAIL_NAV($PAGES, $_CONFIG['mails_page'], false, "3", true));
-       }
-        else
-       {
-               define('__TOP_EMAIL_NAV'   , "");
-               define('__BOTTOM_EMAIL_NAV', "");
-       }
-
-       $SW = 2; $OUT = "";
-       while ($pool = SQL_FETCHROW($result))
-       {
+       $content['top_email_nav']    = addEmailNavigation($numPages, getMailsPage(), true , 3, true);
+       $content['bottom_email_nav'] = addEmailNavigation($numPages, getMailsPage(), false, 3, true);
+
+       // List all entries
+       $OUT = '';
+       while ($pool = SQL_FETCHARRAY($result)) {
                // Check sent mails and clicks
-               $result_mails = SQL_QUERY_ESC("SELECT max_rec, clicks FROM "._MYSQL_PREFIX."_user_stats WHERE pool_id=%s LIMIT 1",
-                array(bigintval($pool[0])), __FILE__, __LINE__);
-               list($sent, $clicks) = SQL_FETCHROW($result_mails);
+               $result_mails = SQL_QUERY_ESC("SELECT `max_rec`,`clicks` FROM `{?_MYSQL_PREFIX?}_user_stats` WHERE `pool_id`=%s LIMIT 1",
+                       array(bigintval($pool['id'])), __FILE__, __LINE__);
+
+               // Load entries
+               $pool = merge_array($pool, SQL_FETCHARRAY($result_mails));
+
+               // Merge result
                SQL_FREERESULT($result_mails);
 
                // Unconfirmed mails
-               $unconfirmed = $sent - $clicks;
-               if ($unconfirmed > 0)
-               {
-                       // Add link to list_unconfirmed what-file
-                       $unconfirmed = "<STRONG><A href=\"".URL."/modules.php?module=admin&amp;what=list_unconfirmed&amp;mid=".$pool[0]."\">".$unconfirmed."</A></STRONG>";
-               }
+               $pool['unconfirmed'] = generateUnconfirmedAdminLink($pool['id'], ($pool['max_rec'] - $pool['clicks']), 'mid');
 
                // Prepare data for the row template
-               $content = array(
-                       'sw'          => $SW,
-                       'u_link'      => ADMIN_USER_PROFILE_LINK($pool[1]),
-                       'subj'        => COMPILE_CODE($pool[2]),
-                       'text'        => COMPILE_CODE($pool[3]),
-                       'pay'         => GET_PAYMENT($pool[5]),
-                       'cat'         => GET_CATEGORY($pool[10]),
-                       'sent'        => $sent,
-                       'ruids'       => str_replace(";", ", ", $pool[4]),
-                       'unconfirmed' => $unconfirmed,
-                       'type'        => GET_POOL_TYPE($pool[6]),
-                       'tsend'       => $pool[9],
-                       'url'         => FRAMETESTER($pool[8]),
-                       'stamp'       => MAKE_DATETIME($pool[7], "0"),
-                       'mid'         => $pool[0],
-               );
+               $content['timestamp'] = generateDateTime($pool['timestamp'], 0);
+
+               // Merge pool data with content
+               $content = merge_array($content, $pool);
 
                // Load row template and switch colors
-               $OUT .= LOAD_TEMPLATE("admin_email_archiv_row", true, $content);
-               $SW = 3 - $SW;
-       }
+               $OUT .= loadTemplate('admin_email_archiv_row', true, $content);
+       } // END - while
 
-       // Free memory
-       SQL_FREERESULT($result);
-       define('__EMAIL_ROWS', $OUT);
+       // Remmber generated rows in array
+       $content['rows'] = $OUT;
 
        // Load main template
-       LOAD_TEMPLATE("admin_email_archiv");
-}
- else
-{
+       loadTemplate('admin_email_archiv', false, $content);
+} else {
        // No mail orders fond
-       OUTPUT_HTML("<SPAN class=\"admin_failed\">".ADMIN_NO_MAILS_IN_POOL."</SPAN>");
+       displayMessage('{--ADMIN_NO_MAILS_IN_POOL--}');
 }
-//
+
+// Free memory
+SQL_FREERESULT($result);
+
+// [EOF]
 ?>