Notice fixed, email navi now shown if on 2+ page
[mailer.git] / inc / modules / admin / what-email_details.php
index fea0be8d85e3c01b89325c4b6a564a0843bc76bf..41dc91d065f72b6303f2902ac952671c37c2dafc 100644 (file)
@@ -81,8 +81,7 @@ if (!empty($_GET['mid']))
        $WHO = USER_ID.": ".$_GET['u_id'];
 }
 
-if ((EXT_IS_ACTIVE("bonus")) && ($WHO == _ALL))
-{
+if ((EXT_IS_ACTIVE("bonus")) && ($WHO == _ALL)) {
        // Bonus mails sent by you
        //               0     1       2        3        4      5       6          7       8      9         10          11        12
        $SQL2 = "SELECT id, subject, text, receivers, points, time, data_type, timestamp, url, cat_id, target_send, mails_sent, clicks
@@ -98,7 +97,7 @@ $result_normal = 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 (empty($_GET['offset'])) $_GET['offset'] = $_CONFIG['mails_page'];
 
 // Add limitation to SQL string
 if (empty($_GET['mid']))
@@ -118,231 +117,117 @@ $result_list = SQL_QUERY($SQL, __FILE__, __LINE__);
 if ((!empty($SQL2)) && ($WHO == _ALL)) $result_bonus = SQL_QUERY($SQL2, __FILE__, __LINE__);
 
 // Calculate pages
-$PAGES = round(SQL_NUMROWS($result_normal) / $CONFIG['mails_page'] + 0.3);
+$PAGES = round(SQL_NUMROWS($result_normal) / $_CONFIG['mails_page'] + 0.3);
 SQL_FREERESULT($result_normal);
 
 $MAIL = false;
-if (SQL_NUMROWS($result_list) > 0)
-{
-       // Mail orders are in pool so we can display them
-       OUTPUT_HTML ("<DIV align=\"center\">
-<TABLE border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"admin_table dashed\" width=\"99%\">
-<TR>
-  <TD colspan=\"3\" align=\"center\" height=\"25\" class=\"admin_title\">
-    <STRONG class=\"admin_done\">".ADMIN_POOL_CONTENT." (".$WHO.")</STRONG>
-  </TD>
-</TR>");
-
-       // Add navigation (with change box and colspan=3)
-       if ($PAGES > 1) ADD_EMAIL_NAV($PAGES, $CONFIG['mails_page'], false, "3");
+if (SQL_NUMROWS($result_list) > 0) {
+       // Init rows
+       $OUT = ""; $content = array();
 
-       while ($pool = SQL_FETCHROW($result_list))
-       {
+       // Walk through all entries
+       while ($pool = SQL_FETCHARRAY($result_list)) {
                // Unconfirmed mails and sent mails
-               $result_uncon = SQL_QUERY_ESC("SELECT max_rec, clicks FROM "._MYSQL_PREFIX."_user_stats WHERE pool_id=%d LIMIT 1",
-                array(bigintval($pool[0])), __FILE__, __LINE__);
-               list($sent, $clicks) = SQL_FETCHROW($result_uncon);
+               $result_uncon = SQL_QUERY_ESC("SELECT max_rec, clicks FROM "._MYSQL_PREFIX."_user_stats WHERE pool_id=%s LIMIT 1",
+                array(bigintval($pool['id'])), __FILE__, __LINE__);
+               list($pool['sent_email'], $pool['clicks']) = SQL_FETCHROW($result_uncon);
                SQL_FREERESULT($result_uncon);
 
                // Unconfirmed mails
-               $unconfirmed = $sent - $clicks;
-               if ($unconfirmed > 0)
-               {
+               $pool['unconfirmed'] = $pool['sent_email'] - $pool['clicks'];
+               if ($pool['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>";
-               }
-                elseif ($unconfirmed < 0)
-               {
+                       $pool['unconfirmed'] = "<STRONG><A href=\"".URL."/modules.php?module=admin&amp;what=list_unconfirmed&amp;mid=".$pool['id']."\">".$pool['unconfirmed']."</A></STRONG>";
+               } elseif ($pool['unconfirmed'] < 0) {
                        // Sometimes rarely displayed minus values will be "fixed" to zero
-                       $unconfirmed = "0";
+                       $pool['unconfirmed'] = 0;
                }
 
-               // List mail
-               OUTPUT_HTML ("<TR>
-  <TD class=\"bottom top2 right\" width=\"23%\" align=\"center\">
-    ".EMAIL_SENDER.":<BR>
-    <STRONG class=\"admin_misc\">".ADMIN_USER_PROFILE_LINK($pool[1])."</STRONG>
-  </TD>
-  <TD class=\"bottom top2 right\" width=\"23%\" align=\"center\">
-    ".EMAIL_SUBJECT.":<BR>
-    <STRONG class=\"admin_misc\">".COMPILE_CODE($pool[2])."</STRONG>
-  </TD>
-  <TD class=\"bottom top2\" width=\"54%\" align=\"center\">
-    ".EMAIL_TEXT.":<BR>
-    <STRONG class=\"admin_misc\">".COMPILE_CODE($pool[3])."</STRONG>
-  </TD>
-</TR>
-<TR><TD height=\"5\" colspan=\"3\"></TD></TR>
-<TR>
-  <TD colspan=\"2\" align=\"center\" class=\"top bottom right\">
-    ".EMAIL_PAYMENT.":<BR>
-    <STRONG class=\"admin_misc\">".GET_PAYMENT($pool[5])."
-  </TD>
-  <TD align=\"center\" class=\"top bottom\">
-    ".EMAIL_CATEGORY.":<BR>
-    <STRONG class=\"admin_misc\">".GET_CATEGORY($pool[10])."
-  </TD>
-</TR>
-<TR><TD height=\"5\" colspan=\"3\"></TD></TR>
-<TR>
-  <TD align=\"center\" class=\"top bottom right\">
-    ".EMAIL_RECEIVERS.":<BR>
-    <STRONG class=\"admin_misc\">".$sent."</STRONG> (".EMAIL_RUIDS.": <STRONG class=\"admin_misc\">".str_replace(";", ", ", $pool[4])."</STRONG>)
-  </TD>
-  <TD align=\"center\" class=\"top bottom right\">
-    ".USERS_LINKS.":<BR>
-    <STRONG class=\"admin_misc\">".$unconfirmed."</STRONG>
-  </TD>
-  <TD align=\"center\" class=\"top bottom\">
-    ".EMAIL_POOL_TYPE.":<BR>
-    <STRONG class=\"admin_misc\">".GET_POOL_TYPE($pool[6])."</STRONG>
-  </TD>
-</TR>
-<TR><TD height=\"5\" colspan=\"3\"></TD></TR>
-<TR>
-  <TD align=\"center\" class=\"top right\">
-    ".EMAIL_TSEND.":<BR>
-    <STRONG class=\"admin_misc\">".$pool[9]."</STRONG>
-  </TD>
-  <TD align=\"center\" class=\"top right\">
-    ".EMAIL_URL.":<BR>
-    <STRONG class=\"admin_misc\"><A href=\"".FRAMETESTER($pool[8])."\" target=\"_blank\">".EMAIL_URL_TEST."</A></STRONG>
-  </TD>
-  <TD align=\"center\" class=\"top\">
-    ".EMAIL_TIMESTAMP.":<BR>
-    <STRONG class=\"admin_misc\">".MAKE_DATETIME($pool[7], "0")."</STRONG>
-  </TD>
-</TR>
-<TR>
-  <TD align=\"center\" class=\"top2 admin_del_link\" colspan=\"3\">
-    <A href=\"".URL."/modules.php?module=admin&amp;what=del_email&amp;mid=".$pool[0]."\">".ADMIN_DELETE_NORMAL_MAIL."</A>
-  </TD>
-</TR>");
-       }
+               // Prepare content
+               $content = $pool;
+               $content['sender_link'] = ADMIN_USER_PROFILE_LINK($pool['sender']);
+               $content['subject']     = COMPILE_CODE($pool['subject']);
+               $content['text']        = COMPILE_CODE($pool['text']);
+               $content['payment']     = GET_PAYMENT($pool['payment_id']);
+               $content['category']    = GET_CATEGORY($pool['cat_id']);
+               $content['receivers']   = str_replace(";", ", ", $pool['receivers']);
+               $content['type']        = GET_POOL_TYPE($pool['data_type']);
+               $content['frametester'] = FRAMETESTER($pool['url']);
+               $content['timestamp']   = MAKE_DATETIME($pool['timestamp'], "0");
+
+               // Load row template
+               $OUT .= LOAD_TEMPLATE("admin_list_emails_row", true, $content);
+       } // END - while
 
        // Free memory
        SQL_FREERESULT($result_list);
 
-       // Add navigation (without change box but with colspan=3)
-       if ($PAGES > 1) ADD_EMAIL_NAV($PAGES, $CONFIG['mails_page'], false, "3");
+       // Add navigation (with change box and colspan=3)
+       $content['nav'] = "";
+       if ($PAGES > 1) $content['nav'] = ADD_EMAIL_NAV($PAGES, $_CONFIG['mails_page'], false, "3", true);
+
+       // Prepare content
+       $content['rows'] = $OUT;
+       $content['who'] = $WHO;
+
+       // Mail orders are in pool so we can display them
+       LOAD_TEMPLATE("admin_list_emails", false, $content);
 
-       // Output footer
-       OUTPUT_HTML ("</TABLE>
-</DIV>");
        $MAIL = true;
-       if ((EXT_IS_ACTIVE("bonus")) && ($WHO == _ALL))
-       {
+       if ((EXT_IS_ACTIVE("bonus")) && ($WHO == _ALL)) {
                // Check only if bonus extension is active
-               if (SQL_NUMROWS($result_bonus) > 0) OUTPUT_HTML ("<BR><BR>");
+               if (SQL_NUMROWS($result_bonus) > 0) OUTPUT_HTML("<br /><br />");
        }
 }
 
-if ((EXT_IS_ACTIVE("bonus")) && ($WHO == _ALL))
-{
+if ((EXT_IS_ACTIVE("bonus")) && ($WHO == _ALL)) {
        // Load bonus mails only when extension is active
-       if (SQL_NUMROWS($result_bonus) > 0)
-       {
-               // Mail orders are in pool so we can display them
-               OUTPUT_HTML ("<DIV align=\"center\">
-<TABLE border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"admin_table dashed\" width=\"99%\">
-<TR>
-  <TD colspan=\"3\" align=\"center\" height=\"25\" class=\"admin_title\">
-    <STRONG class=\"admin_done\">".ADMIN_BONUS_CONTENT."</STRONG>
-  </TD>
-</TR>");
+       if (SQL_NUMROWS($result_bonus) > 0) {
                // Calculate pages
-               $PAGES = round(SQL_NUMROWS($result_bonus) / $CONFIG['mails_page'] + 0.5);
-
-               // Add navigation (with change box and colspan=3)
-               if ($PAGES > 1) ADD_EMAIL_NAV($PAGES, $CONFIG['mails_page'], true, "3");
+               $PAGES = round(SQL_NUMROWS($result_bonus) / $_CONFIG['mails_page'] + 0.5);
 
                // List emails
-               while ($bonus = SQL_FETCHROW($result_bonus))
-               {
-                       // Unconfirmed mails
-                       $unconfirmed = $bonus[11] - $bonus[12];
-                       if ($unconfirmed > 0)
-                       {
+               $OUT = ""; $content = array();
+               while ($bonus = SQL_FETCHARRAY($result_bonus)) {
+                       // Calculate unconfirmed emails
+                       $bonus['unconfirmed'] = $bonus['mails_sent'] - $bonus['clicks'];
+
+                       // Add link?
+                       if ($bonus['unconfirmed'] > 0) {
                                // Add link to list_unconfirmed what-file
-                               $unconfirmed = "<STRONG><A href=\"".URL."/modules.php?module=admin&amp;what=list_unconfirmed&amp;bid=".$bonus[0]."\">".$unconfirmed."</A></STRONG>";
-                       }
-
-                       OUTPUT_HTML ("<TR>
-  <TD class=\"bottom top2 right\" colspan=\"2\" width=\"46%\" align=\"center\">
-    ".EMAIL_SUBJECT.":<BR>
-    <STRONG class=\"admin_misc\">".$bonus[1]."</STRONG>
-  </TD>
-  <TD class=\"bottom top2\" width=\"54%\" align=\"center\">
-    ".EMAIL_TEXT.":<BR>
-    <STRONG class=\"admin_misc\">".$bonus[2]."</STRONG>
-  </TD>
-</TR>
-<TR><TD height=\"5\" colspan=\"3\"></TD></TR>
-<TR>
-  <TD align=\"center\" class=\"top bottom right\" width=\"23%\">
-    ".EMAIL_POINTS.":<BR>
-    <STRONG class=\"admin_misc\">".$bonus[4]." ".POINTS."
-  </TD>
-  <TD align=\"center\" class=\"top bottom right\" width=\"23%\">
-    ".EMAIL_SECONDS.":<BR>
-    <STRONG class=\"admin_misc\">".$bonus[5]." ".SECS."
-  </TD>
-  <TD align=\"center\" class=\"top bottom\">
-    ".EMAIL_CATEGORY.":<BR>
-    <STRONG class=\"admin_misc\">".GET_CATEGORY($bonus[9])."
-  </TD>
-</TR>
-<TR><TD height=\"5\" colspan=\"3\"></TD></TR>
-<TR>
-  <TD align=\"center\" class=\"top bottom right\">
-    ".EMAIL_RECEIVERS.":<BR>
-    <STRONG class=\"admin_misc\">".$bonus[11]."</STRONG> (".EMAIL_RUIDS.": <STRONG class=\"admin_misc\">".str_replace(";", ", ", $bonus[3])."</STRONG>)
-  </TD>
-  <TD align=\"center\" class=\"top bottom right\">
-    ".USERS_LINKS.":<BR>
-    <STRONG class=\"admin_misc\">".$unconfirmed."</STRONG>
-  </TD>
-  <TD align=\"center\" class=\"top bottom\">
-    ".EMAIL_POOL_TYPE.":<BR>
-    <STRONG class=\"admin_misc\">".GET_POOL_TYPE($bonus[6])."</STRONG>
-  </TD>
-</TR>
-<TR><TD height=\"5\" colspan=\"3\"></TD></TR>
-<TR>
-  <TD align=\"center\" class=\"top right\">
-    ".EMAIL_TSEND.":<BR>
-    <STRONG class=\"admin_misc\">".$bonus[10]."</STRONG>
-  </TD>
-  <TD align=\"center\" class=\"top right\">
-    ".EMAIL_URL.":<BR>
-    <STRONG class=\"admin_misc\"><A href=\"".FRAMETESTER($bonus[8])."\" target=\"_blank\">".EMAIL_URL_TEST."</A></STRONG>
-  </TD>
-  <TD align=\"center\" class=\"top\">
-    ".EMAIL_TIMESTAMP.":<BR>
-    <STRONG class=\"admin_misc\">".MAKE_DATETIME($bonus[7], "0")."</STRONG>
-  </TD>
-</TR>
-<TR>
-  <TD align=\"center\" class=\"top2 admin_del_link\" colspan=\"3\">
-    <A href=\"".URL."/modules.php?module=admin&amp;what=del_email&amp;bid=".$bonus[0]."\">".ADMIN_DELETE_BONUS_MAIL."</A>
-  </TD>
-</TR>");
+                               $bonus['unconfirmed'] = "<STRONG><A href=\"".URL."/modules.php?module=admin&amp;what=list_unconfirmed&amp;bid=".$bonus['id']."\">".$bonus['unconfirmed']."</A></STRONG>";
+                       } // END - if
+
+                       // Prepare content
+                       $content = $bonus;
+                       $content['time']        = CREATE_FANCY_TIME($content['time']);
+                       $content['category']    = GET_CATEGORY($content['cat_id']);
+                       $content['receivers']   = str_replace(";", ", ", $content['receivers']);
+                       $content['type']        = GET_POOL_TYPE($content['data_type']);
+                       $content['frametester'] = FRAMETESTER($content['url']);
+                       $content['timestamp']   = MAKE_DATETIME($content['timestamp'], "0");
+
+                       // Load row template
+                       $OUT .= LOAD_TEMPLATE("admin_list_bonus_emails_row", true, $content);
                }
 
                // Add navigation (without change box but with colspan=3)
-               if ($PAGES > 1) ADD_EMAIL_NAV($PAGES, $CONFIG['mails_page'], false, "3");
+               $content['nav'] = "";
+               if ($PAGES > 1) $content['nav'] = ADD_EMAIL_NAV($PAGES, $_CONFIG['mails_page'], false, "3", true);
+
+               // Prepare content
+               $content['rows'] = $OUT;
 
-               // Output footer
-               OUTPUT_HTML ("</TABLE>
-</DIV>");
+               // Load main template
+               LOAD_TEMPLATE("admin_list_bonus_emails", false, $content);
                $MAIL = true;
        }
 }
 
-if (!$MAIL)
-{
+if (!$MAIL) {
        // No mail orders fond
-       OUTPUT_HTML ("<SPAN class=\"admin_failed\">".ADMIN_NO_MAILS_IN_POOL."</SPAN>");
+       OUTPUT_HTML("<SPAN class=\"admin_failed\">".ADMIN_NO_MAILS_IN_POOL."</SPAN>");
 }
+
 //
 ?>