more fixes for missing extensions
[mailer.git] / 0.2.1 / inc / modules / admin / what-list_unconfirmed.php
index f94c61ed5e45d197c0bd52f0e0d44e03493ee18d..a4cfc7b654f6e698a546159b0db7d32df517c7de 100644 (file)
-<?php\r
-/************************************************************************\r
- * MXChange v0.2.1                                    Start: 10/09/2004 *\r
- * ================                             Last change: 10/31/2004 *\r
- *                                                                      *\r
- * -------------------------------------------------------------------- *\r
- * File              : what-list_unconfirmed.php                        *\r
- * -------------------------------------------------------------------- *\r
- * Short description : List unconfirmed mail links                      *\r
- * -------------------------------------------------------------------- *\r
- * Kurzbeschreibung  : Unbest. Mail-Links auflisten                     *\r
- * -------------------------------------------------------------------- *\r
- *                                                                      *\r
- * -------------------------------------------------------------------- *\r
- * Copyright (c) 2003 - 2008 by Roland Haeder                           *\r
- * For more information visit: http://www.mxchange.org                  *\r
- *                                                                      *\r
- * This program is free software; you can redistribute it and/or modify *\r
- * it under the terms of the GNU General Public License as published by *\r
- * the Free Software Foundation; either version 2 of the License, or    *\r
- * (at your option) any later version.                                  *\r
- *                                                                      *\r
- * This program is distributed in the hope that it will be useful,      *\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of       *\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *\r
- * GNU General Public License for more details.                         *\r
- *                                                                      *\r
- * You should have received a copy of the GNU General Public License    *\r
- * along with this program; if not, write to the Free Software          *\r
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,               *\r
- * MA  02110-1301  USA                                                  *\r
- ************************************************************************/\r
-\r
-// Some security stuff...\r
-if ((ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) || (!IS_ADMIN()))\r
-{\r
-       $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4)."/security.php";\r
-       require($INC);\r
-}\r
-// Add description as navigation point\r
-ADD_DESCR("admin", basename(__FILE__));\r
-\r
-// Don't load the admin_list_unconfirmed template by default\r
-$listed = false;\r
-\r
-if (!empty($_GET['mid']))\r
-{\r
-       // List confirmation links from your member's mail orders\r
-       define('__LIST_UNCON_TITLE', LIST_UNCONFIRMED_MEMBER_LINKS);\r
-\r
-       // SQL query for mail data\r
-       $SQL = "SELECT DISTINCT s.id, p.sender, p.subject, p.text, p.url, p.timestamp, s.max_rec  FROM "._MYSQL_PREFIX."_pool AS p\r
-LEFT JOIN "._MYSQL_PREFIX."_user_stats AS s\r
-ON p.id=s.pool_id\r
-WHERE p.id='".$_GET['mid']."' LIMIT 1";\r
-\r
-       // Column, type and ID for member's mail\r
-       $col = "stats_id"; $type = "NORMAL"; $ID = "-1";\r
-\r
-       // Load admin_list_unconfirmed template\r
-       $listed = true; $DATA = $_GET['mid']; $LINK = "mailid";\r
-}\r
- elseif ((!empty($_GET['bid'])) && (EXT_IS_ACTIVE("bonus")))\r
-{\r
-       // List confirmation links from bonus mails\r
-       define('__LIST_UNCON_TITLE', LIST_UNCONFIRMED_BONUS_LINKS);\r
-\r
-       // SQL query for mail data (both ids are required for compatiblity to above normal mail\r
-       $SQL = "SELECT id, id, subject, text, url, timestamp, mails_sent FROM "._MYSQL_PREFIX."_bonus WHERE id='".$_GET['bid']."' LIMIT 1";\r
-\r
-       // Column, type and ID for member's mail\r
-       $col = "bonus_id"; $type = "BONUS"; $ID = $_GET['bid'];\r
-\r
-       // Load admin_list_unconfirmed template\r
-       $listed = true; $DATA = $ID; $LINK = "bonusid";\r
-}\r
- else\r
-{\r
-       // "Please do not call me directly."\r
-       LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_CALL_NOT_DIRECTLY);\r
-}\r
-\r
-// Shall I display links or not?\r
-if ($listed)\r
-{\r
-       // Load mail data\r
-       $result = SQL_QUERY($SQL, __FILE__, __LINE__);\r
-       if (SQL_NUMROWS($result) == 1)\r
-       {\r
-               // Mail order / bonus mail found!\r
-               list($stats_id, $sender, $subj, $text, $url, $stamp, $max) = SQL_FETCHROW($result);\r
-               SQL_FREERESULT($result);\r
-\r
-               // Transfer data to constants for the template\r
-               if (($stats_id > 0) && ($ID == "-1")) $ID = $stats_id;\r
-               if ($col == "bonus_id") $sender = "0";\r
-               define('__LIST_UNCON_SENDER' , $sender);\r
-               define('__LIST_UNCON_SUBJECT', COMPILE_CODE($subj));\r
-               define('__LIST_UNCON_TEXT'   , COMPILE_CODE($text));\r
-               define('__LIST_UNCON_URL'    , urlencode(base64_encode($url)));\r
-               define('__LIST_UNCON_STAMP'  , MAKE_DATETIME($stamp, "2"));\r
-\r
-               // Load unconfirmed mail links. Hmmm, this select query is pretty cool\r
-               // but it does only show unconfirmed mail links from existing user\r
-               // accounts. So if you have delete one you did not see those links\r
-               //\r
-               $result = SQL_QUERY_ESC("SELECT DISTINCT l.userid, u.status, u.surname, u.family, u.sex, u.email\r
-FROM "._MYSQL_PREFIX."_user_links AS l\r
-LEFT JOIN "._MYSQL_PREFIX."_user_data AS u\r
-ON l.userid=u.userid\r
-WHERE l.%s='%s' ORDER BY l.userid LIMIT %s",\r
- array($col, $ID, bigintval($max)),__FILE__, __LINE__);\r
-               $unconfirmed = SQL_NUMROWS($result);\r
-               define('__LIST_UNCO_UNCONFIRMED', $unconfirmed);\r
-\r
-               if ($unconfirmed > 0)\r
-               {\r
-                       // At least one link left to confirm\r
-                       $OUT = LOAD_TEMPLATE("admin_list_unconfirmed_header", true);\r
-                       $SW = 2;\r
-                       while(list($uid, $status, $sname, $fname, $sex, $email) = SQL_FETCHROW($result))\r
-                       {\r
-                               // Prepare data for the row template\r
-                               $content = array(\r
-                                       'sw'     => $SW,\r
-                                       'u_link' => ADMIN_USER_PROFILE_LINK($uid),\r
-                                       'uid'    => $uid,\r
-                                       'link'   => $LINK,\r
-                                       'id'     => $ID,\r
-                                       'email'  => "<A href=\"".CREATE_EMAIL_LINK($email, "user_data")."\">".TRANSLATE_SEX($sex)." ".$sname." ".$fname."</A>",\r
-                                       'status' => TRANSLATE_STATUS($status),\r
-                               );\r
-\r
-                               // Load row template and switch colors\r
-                               $OUT .= LOAD_TEMPLATE("admin_list_unconfirmed_row", true, $content);\r
-                               $SW = 3 - $SW;\r
-                       }\r
-                       $OUT .= "</TABLE>\n";\r
-\r
-                       // Free memory\r
-                       SQL_FREERESULT($result);\r
-\r
-                       // Store table rows in a constant\r
-                       define('__LIST_UNCON_LISTING', $OUT);\r
-               }\r
-                else\r
-               {\r
-                       // All links are confirmed... strange, you shall normally not get a link to this place in this scenario... hmmm.\r
-                       define('__LIST_UNCON_LISTING', LOAD_TEMPLATE("admin_settings_saved", true, ADMIN_UNCONFIRMED_NO_LINK_LEFT));\r
-               }\r
-\r
-               // Load final template\r
-               LOAD_TEMPLATE("admin_list_unconfirmed");\r
-       }\r
-        elseif ($_GET['mid'] > 0)\r
-       {\r
-               // Data in pool or in user_stats not found, so let's find out where data is missing\r
-               $result1 = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_pool WHERE id=%d LIMIT 1",\r
-                array(bigintval($ID)), __FILE__, __LINE__);\r
-               $result2 = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_user_stats WHERE pool_id=%d LIMIT 1",\r
-                array(bigintval($ID)), __FILE__, __LINE__);\r
-               if (SQL_NUMROWS($result1) == 1)\r
-               {\r
-                       // pool table\r
-                       LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_UNCONFIRMED_POOL_MISSING_1.$ID.ADMIN_UNCONFIRMED_POOL_MISSING_2);\r
-               }\r
-                elseif (SQL_NUMROWS($result2) == 1)\r
-               {\r
-                       // user_stats table\r
-                       LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_UNCONFIRMED_STATS_MISSING_1.$ID.ADMIN_UNCONFIRMED_STATS_MISSING_2);\r
-               }\r
-                else\r
-               {\r
-                       // both or link is invalid\r
-                       LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_UNCONFIRMED_INVALID_LINK);\r
-               }\r
-\r
-               // Free memory\r
-               SQL_FREERESULT($result1);\r
-               SQL_FREERESULT($result2);\r
-       }\r
-        elseif (!empty($_GET['bid']))\r
-       {\r
-               // Data in bonus table not found\r
-               LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_UNCONFIRMED_INVALID_LINK);\r
-       }\r
-}\r
-//\r
-?>\r
+<?php
+/************************************************************************
+ * MXChange v0.2.1                                    Start: 10/09/2004 *
+ * ================                             Last change: 10/31/2004 *
+ *                                                                      *
+ * -------------------------------------------------------------------- *
+ * File              : what-list_unconfirmed.php                        *
+ * -------------------------------------------------------------------- *
+ * Short description : List unconfirmed mail links                      *
+ * -------------------------------------------------------------------- *
+ * Kurzbeschreibung  : Unbest. Mail-Links auflisten                     *
+ * -------------------------------------------------------------------- *
+ *                                                                      *
+ * -------------------------------------------------------------------- *
+ * Copyright (c) 2003 - 2008 by Roland Haeder                           *
+ * For more information visit: http://www.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 *
+ * the Free Software Foundation; either version 2 of the License, or    *
+ * (at your option) any later version.                                  *
+ *                                                                      *
+ * This program is distributed in the hope that it will be useful,      *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of       *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *
+ * GNU General Public License for more details.                         *
+ *                                                                      *
+ * You should have received a copy of the GNU General Public License    *
+ * along with this program; if not, write to the Free Software          *
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,               *
+ * MA  02110-1301  USA                                                  *
+ ************************************************************************/
+
+// 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);
+} elseif (!EXT_IS_ACTIVE("mailid")) {
+       ADD_FATAL(sprintf(EXTENSION_PROBLEM_NOT_INSTALLED, "mailid"));
+       return;
+}
+
+// Add description as navigation point
+ADD_DESCR("admin", basename(__FILE__));
+
+// Don't load the admin_list_unconfirmed template by default
+$listed = false;
+
+if (!empty($_GET['mid']))
+{
+       // List confirmation links from your member's mail orders
+       define('__LIST_UNCON_TITLE', LIST_UNCONFIRMED_MEMBER_LINKS);
+
+       // SQL query for mail data
+       $SQL = "SELECT DISTINCT s.id, p.sender, p.subject, p.text, p.url, p.timestamp, s.max_rec  FROM "._MYSQL_PREFIX."_pool AS p
+LEFT JOIN "._MYSQL_PREFIX."_user_stats AS s
+ON p.id=s.pool_id
+WHERE p.id='".$_GET['mid']."' LIMIT 1";
+
+       // Column, type and ID for member's mail
+       $col = "stats_id"; $type = "NORMAL"; $ID = "-1";
+
+       // Load admin_list_unconfirmed template
+       $listed = true; $DATA = $_GET['mid']; $LINK = "mailid";
+}
+ elseif ((!empty($_GET['bid'])) && (EXT_IS_ACTIVE("bonus")))
+{
+       // List confirmation links from bonus mails
+       define('__LIST_UNCON_TITLE', LIST_UNCONFIRMED_BONUS_LINKS);
+
+       // SQL query for mail data (both ids are required for compatiblity to above normal mail
+       $SQL = "SELECT id, id, subject, text, url, timestamp, mails_sent FROM "._MYSQL_PREFIX."_bonus WHERE id='".$_GET['bid']."' LIMIT 1";
+
+       // Column, type and ID for member's mail
+       $col = "bonus_id"; $type = "BONUS"; $ID = $_GET['bid'];
+
+       // Load admin_list_unconfirmed template
+       $listed = true; $DATA = $ID; $LINK = "bonusid";
+}
+ else
+{
+       // "Please do not call me directly."
+       LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_CALL_NOT_DIRECTLY);
+}
+
+// Shall I display links or not?
+if ($listed)
+{
+       // Load mail data
+       $result = SQL_QUERY($SQL, __FILE__, __LINE__);
+       if (SQL_NUMROWS($result) == 1)
+       {
+               // Mail order / bonus mail found!
+               list($stats_id, $sender, $subj, $text, $url, $stamp, $max) = SQL_FETCHROW($result);
+               SQL_FREERESULT($result);
+
+               // Transfer data to constants for the template
+               if (($stats_id > 0) && ($ID == "-1")) $ID = $stats_id;
+               if ($col == "bonus_id") $sender = "0";
+               define('__LIST_UNCON_SENDER' , $sender);
+               define('__LIST_UNCON_SUBJECT', COMPILE_CODE($subj));
+               define('__LIST_UNCON_TEXT'   , COMPILE_CODE($text));
+               define('__LIST_UNCON_URL'    , urlencode(base64_encode($url)));
+               define('__LIST_UNCON_STAMP'  , MAKE_DATETIME($stamp, "2"));
+
+               // Load unconfirmed mail links. Hmmm, this select query is pretty cool
+               // but it does only show unconfirmed mail links from existing user
+               // accounts. So if you have delete one you did not see those links
+               //
+               $result = SQL_QUERY_ESC("SELECT DISTINCT l.userid, u.status, u.surname, u.family, u.sex, u.email
+FROM "._MYSQL_PREFIX."_user_links AS l
+LEFT JOIN "._MYSQL_PREFIX."_user_data AS u
+ON l.userid=u.userid
+WHERE l.%s='%s' ORDER BY l.userid LIMIT %s",
+ array($col, $ID, bigintval($max)),__FILE__, __LINE__);
+               $unconfirmed = SQL_NUMROWS($result);
+               define('__LIST_UNCO_UNCONFIRMED', $unconfirmed);
+
+               if ($unconfirmed > 0)
+               {
+                       // At least one link left to confirm
+                       $OUT = LOAD_TEMPLATE("admin_list_unconfirmed_header", true);
+                       $SW = 2;
+                       while(list($uid, $status, $sname, $fname, $sex, $email) = SQL_FETCHROW($result))
+                       {
+                               // Prepare data for the row template
+                               $content = array(
+                                       'sw'     => $SW,
+                                       'u_link' => ADMIN_USER_PROFILE_LINK($uid),
+                                       'uid'    => $uid,
+                                       'link'   => $LINK,
+                                       'id'     => $ID,
+                                       'email'  => "<A href=\"".CREATE_EMAIL_LINK($email, "user_data")."\">".TRANSLATE_SEX($sex)." ".$sname." ".$fname."</A>",
+                                       'status' => TRANSLATE_STATUS($status),
+                               );
+
+                               // Load row template and switch colors
+                               $OUT .= LOAD_TEMPLATE("admin_list_unconfirmed_row", true, $content);
+                               $SW = 3 - $SW;
+                       }
+                       $OUT .= "</TABLE>\n";
+
+                       // Free memory
+                       SQL_FREERESULT($result);
+
+                       // Store table rows in a constant
+                       define('__LIST_UNCON_LISTING', $OUT);
+               }
+                else
+               {
+                       // All links are confirmed... strange, you shall normally not get a link to this place in this scenario... hmmm.
+                       define('__LIST_UNCON_LISTING', LOAD_TEMPLATE("admin_settings_saved", true, ADMIN_UNCONFIRMED_NO_LINK_LEFT));
+               }
+
+               // Load final template
+               LOAD_TEMPLATE("admin_list_unconfirmed");
+       }
+        elseif ($_GET['mid'] > 0)
+       {
+               // Data in pool or in user_stats not found, so let's find out where data is missing
+               $result1 = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_pool WHERE id=%d LIMIT 1",
+                array(bigintval($ID)), __FILE__, __LINE__);
+               $result2 = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_user_stats WHERE pool_id=%d LIMIT 1",
+                array(bigintval($ID)), __FILE__, __LINE__);
+               if (SQL_NUMROWS($result1) == 1)
+               {
+                       // pool table
+                       LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_UNCONFIRMED_POOL_MISSING_1.$ID.ADMIN_UNCONFIRMED_POOL_MISSING_2);
+               }
+                elseif (SQL_NUMROWS($result2) == 1)
+               {
+                       // user_stats table
+                       LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_UNCONFIRMED_STATS_MISSING_1.$ID.ADMIN_UNCONFIRMED_STATS_MISSING_2);
+               }
+                else
+               {
+                       // both or link is invalid
+                       LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_UNCONFIRMED_INVALID_LINK);
+               }
+
+               // Free memory
+               SQL_FREERESULT($result1);
+               SQL_FREERESULT($result2);
+       }
+        elseif (!empty($_GET['bid']))
+       {
+               // Data in bonus table not found
+               LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_UNCONFIRMED_INVALID_LINK);
+       }
+}
+//
+?>