c770a610662d57bf3c25ba1721eb6538f510cda3
[mailer.git] / 0.2.1 / inc / modules / admin / what-list_links.php
1 <?php\r
2 /************************************************************************\r
3  * MXChange v0.2.1                                    Start: 01/28/2004 *\r
4  * ================                             Last change: 12/13/2004 *\r
5  *                                                                      *\r
6  * -------------------------------------------------------------------- *\r
7  * File              : what-list_links.php                              *\r
8  * -------------------------------------------------------------------- *\r
9  * Short description : List unconfirmed mails of a member               *\r
10  * -------------------------------------------------------------------- *\r
11  * Kurzbeschreibung  : Unbestaetigte Mails eines Mitgliedes auflisten   *\r
12  * -------------------------------------------------------------------- *\r
13  *                                                                      *\r
14  * -------------------------------------------------------------------- *\r
15  * Copyright (c) 2003 - 2008 by Roland Haeder                           *\r
16  * For more information visit: http://www.mxchange.org                  *\r
17  *                                                                      *\r
18  * This program is free software; you can redistribute it and/or modify *\r
19  * it under the terms of the GNU General Public License as published by *\r
20  * the Free Software Foundation; either version 2 of the License, or    *\r
21  * (at your option) any later version.                                  *\r
22  *                                                                      *\r
23  * This program is distributed in the hope that it will be useful,      *\r
24  * but WITHOUT ANY WARRANTY; without even the implied warranty of       *\r
25  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *\r
26  * GNU General Public License for more details.                         *\r
27  *                                                                      *\r
28  * You should have received a copy of the GNU General Public License    *\r
29  * along with this program; if not, write to the Free Software          *\r
30  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,               *\r
31  * MA  02110-1301  USA                                                  *\r
32  ************************************************************************/\r
33 \r
34 // Some security stuff...\r
35 if ((ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) || (!IS_ADMIN()))\r
36 {\r
37         $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4)."/security.php";\r
38         require($INC);\r
39 }\r
40 \r
41 // Add description as navigation point\r
42 ADD_DESCR("admin", basename(__FILE__));\r
43 \r
44 if (empty($_GET['del'])) $_GET['del'] = "";\r
45 \r
46 OPEN_TABLE("100%", "admin_content admin_content_align", "");\r
47 if (!empty($_GET['u_id']))\r
48 {\r
49         // Check if the user already exists\r
50         $result = SQL_QUERY_ESC("SELECT surname, family, email FROM "._MYSQL_PREFIX."_user_data WHERE userid=%d LIMIT 1",\r
51          array(bigintval($_GET['u_id'])), __FILE__, __LINE__);\r
52         if (SQL_NUMROWS($result) == 1)\r
53         {\r
54                 // Loads surname, family's name and the email address\r
55                 list($sname, $fname, $email) = SQL_FETCHROW($result);\r
56                 SQL_FREERESULT($result);\r
57 \r
58                 // Grab user's all unconfirmed mails\r
59                 if (EXT_IS_ACTIVE("bonus"))\r
60                 {\r
61                         // Load bonus ID\r
62                         $result = SQL_QUERY_ESC("SELECT stats_id, bonus_id, link_type FROM "._MYSQL_PREFIX."_user_links WHERE userid=%d ORDER BY id",\r
63                          array(bigintval($_GET['u_id'])), __FILE__, __LINE__);\r
64                 }\r
65                  else\r
66                 {\r
67                         // Load stats ID (2nd will be ignored later! But it is needed for the same fetchrow command)\r
68                         $result = SQL_QUERY_ESC("SELECT stats_id, stats_id, link_type FROM "._MYSQL_PREFIX."_user_links WHERE userid=%d ORDER BY id",\r
69                          array(bigintval($_GET['u_id'])), __FILE__, __LINE__);\r
70                 }\r
71 \r
72                 $nums = bigintval(SQL_NUMROWS($result));\r
73                 if ($nums > 0)\r
74                 {\r
75                         // Some unconfirmed mails left\r
76                         if ($_GET['del'] == "all")\r
77                         {\r
78                                 // Delete all unconfirmed mails by this user\r
79                                 $result_del = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_user_links WHERE userid=%d LIMIT %s",\r
80                                  array(bigintval($_GET['u_id']), $nums), __FILE__, __LINE__);\r
81 \r
82                                 // Prepare mail and send it away\r
83                                 $msg = LOAD_EMAIL_TEMPLATE("admin-del_links", $nums, bigintval($_GET['u_id']));\r
84                                 SEND_EMAIL($email, ADMIN_DEL_LINK_SUBJ, $msg);\r
85 \r
86                                 // Display message\r
87                                 LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_LINKS_DELETED);\r
88                         }\r
89                          else\r
90                         {\r
91                                 // List all unconfirmed mails\r
92                                 $SW = 2; $OUT = "";\r
93                                 while (list($id, $id2, $type) = SQL_FETCHROW($result))\r
94                                 {\r
95                                         // Load data from stats table...\r
96                                         $cat = "";\r
97                                         switch ($type)\r
98                                         {\r
99                                         case "NORMAL":\r
100                                                 $result_data = SQL_QUERY_ESC("SELECT subject, timestamp_ordered, cat_id FROM "._MYSQL_PREFIX."_user_stats WHERE id=%d LIMIT 1",\r
101                                                  array(bigintval($id)), __FILE__, __LINE__);\r
102                                                 $TYPE = "mailid"; $DATA = $id; $PROBLEM = NORMAL_MAIL_PROBLEM;\r
103                                                 $LINK = "<A href=\"".URL."/mailid.php?uid=".$_GET['u_id']."&amp;mailid=".$id."\" target=\"_blank\">".$id."</A>";\r
104                                                 break;\r
105 \r
106                                         case "BONUS":\r
107                                                 $result_data = SQL_QUERY_ESC("SELECT subject, timestamp, cat_id FROM "._MYSQL_PREFIX."_bonus WHERE id=%d LIMIT 1",\r
108                                                  array(bigintval($id2)), __FILE__, __LINE__);\r
109                                                 $TYPE = "bonusid"; $DATA = $id2; $PROBLEM = BONUS_MAIL_PROBLEM;\r
110                                                 $LINK = "<A href=\"".URL."/mailid.php?uid=".$_GET['u_id']."&amp;bonusid=".$id2."\" target=\"_blank\">".$id2."</A>";\r
111                                                 break;\r
112                                         }\r
113 \r
114                                         if (SQL_NUMROWS($result_data) == 1)\r
115                                         {\r
116                                                 // Mail was found!\r
117                                                 list($subject, $timestamp, $cat) = SQL_FETCHROW($result_data);\r
118                                                 SQL_FREERESULT($result_data);\r
119                                                 if (empty($subject)) $subject = DEFAULT_SUBJECT_LINE;\r
120 \r
121                                                 // Prepare data for the row template\r
122                                                 $content = array(\r
123                                                         'sw'    => $SW,\r
124                                                         'link'  => $LINK,\r
125                                                         'subj'  => $subject,\r
126                                                         'stamp' => MAKE_DATETIME($timestamp, "0"),\r
127                                                         'cat'   => GET_CATEGORY($cat),\r
128                                                 );\r
129 \r
130                                                 // Load row template\r
131                                                 $OUT .= LOAD_TEMPLATE("admin_list_links_row", true, $content);\r
132                                         }\r
133                                          else\r
134                                         {\r
135                                                 $OUT .= "<TR>\r
136   <TD align=\"center\" class=\"switch_sw".$SW." bottom2\" colspan=\"4\">\r
137     <STRONG class=\"member_failed large\">".$PROBLEM.":</STRONG> ".$DATA."\r
138   </TD>\r
139 </TR>\n";\r
140                                         }\r
141                                         $SW = 3 - $SW;\r
142                                 }\r
143 \r
144                                 // Free memory\r
145                                 SQL_FREERESULT($result);\r
146 \r
147                                 // Remember list in constant for the template\r
148                                 define('__SNAME_VALUE', $sname);\r
149                                 define('__FNAME_VALUE', $fname);\r
150                                 define('__EMAIL_VALUE', "<A href=\"".CREATE_EMAIL_LINK($email, "user_data")."\">".$email."</A>");\r
151                                 define('__EMAIL_LIST' , $OUT);\r
152                                 define('__NUMS_VALUE' , $nums);\r
153                                 define('__UID_VALUE'  , $_GET['u_id']);\r
154 \r
155                                 // Load final template\r
156                                 LOAD_TEMPLATE("admin_list_links");\r
157                         }\r
158                 }\r
159                  else\r
160                 {\r
161                         // No mails left to confirm\r
162                         LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_MEMBER_LINKS_1.$_GET['u_id'].ADMIN_MEMBER_LINKS_2);\r
163                 }\r
164         }\r
165          else\r
166         {\r
167                 // User not found\r
168                 LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_MEMBER_404_1.$_GET['u_id'].ADMIN_MEMBER_404_2);\r
169         }\r
170 }\r
171  else\r
172 {\r
173         // Output selection form with all confirmed user accounts listed\r
174         ADD_MEMBER_SELECTION_BOX();\r
175 }\r
176 CLOSE_TABLE();\r
177 \r
178 //\r
179 ?>\r