A lot code rewritten:
[mailer.git] / inc / modules / admin / what-list_cats.php
1 <?php
2 /************************************************************************
3  * Mailer v0.2.1-FINAL                                Start: 01/27/2004 *
4  * ===================                          Last change: 07/13/2004 *
5  *                                                                      *
6  * -------------------------------------------------------------------- *
7  * File              : what-list_cats.php                               *
8  * -------------------------------------------------------------------- *
9  * Short description : List selected categories from users              *
10  * -------------------------------------------------------------------- *
11  * Kurzbeschreibung  : Ausgewaehlte Kategorien eines Mitgliedes         *
12  *                     auflisten                                        *
13  * -------------------------------------------------------------------- *
14  * $Revision::                                                        $ *
15  * $Date::                                                            $ *
16  * $Tag:: 0.2.1-FINAL                                                 $ *
17  * $Author::                                                          $ *
18  * Needs to be in all Files and every File needs "svn propset           *
19  * svn:keywords Date Revision" (autoprobset!) at least!!!!!!            *
20  * -------------------------------------------------------------------- *
21  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
22  * Copyright (c) 2009, 2010 by Mailer Developer Team                    *
23  * For more information visit: http://www.mxchange.org                  *
24  *                                                                      *
25  * This program is free software; you can redistribute it and/or modify *
26  * it under the terms of the GNU General Public License as published by *
27  * the Free Software Foundation; either version 2 of the License, or    *
28  * (at your option) any later version.                                  *
29  *                                                                      *
30  * This program is distributed in the hope that it will be useful,      *
31  * but WITHOUT ANY WARRANTY; without even the implied warranty of       *
32  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *
33  * GNU General Public License for more details.                         *
34  *                                                                      *
35  * You should have received a copy of the GNU General Public License    *
36  * along with this program; if not, write to the Free Software          *
37  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,               *
38  * MA  02110-1301  USA                                                  *
39  ************************************************************************/
40
41 // Some security stuff...
42 if ((!defined('__SECURITY')) || (!isAdmin())) {
43         die();
44 } // END - if
45
46 // Add description as navigation point
47 addMenuDescription('admin', __FILE__);
48
49 if (isGetRequestParameterSet('userid')) {
50         // Check if the user already exists
51         if (fetchUserData(getRequestParameter('userid'))) {
52                 // Loads surname, family's name and the email address
53                 $content = getUserDataArray();
54
55                 // Prepare constants
56                 // @TODO No longer needed? define('__CATEGORIES_BASE'   , '<a href="{%url=modules.php?module=admin&amp;userid=');
57                 $content['userid']       = bigintval(getRequestParameter('userid'));
58                 $content['email']        = '<a href="' . generateEmailLink($content['email'], 'user_data') . '">' . $content['surname'] . ' ' . $content['family'] . '</a>';
59
60                 // Ok, list categories of this user
61                 $result_cats = SQL_QUERY("SELECT `id`, `cat` FROM `{?_MYSQL_PREFIX?}_cats` ORDER BY `sort` ASC", __FILE__, __LINE__);
62
63                 if (SQL_NUMROWS($result_cats) > 0) {
64                         // List categories
65                         $cnt = 1; $OUT = '';
66                         while ($row = SQL_FETCHARRAY($result_cats)) {
67                                 // Merge both arrays
68                                 $content = merge_array($content, $row);
69
70                                 // Check user's selection
71                                 // @TODO Rewrite this to countSum.....() function
72                                 $result_user = SQL_QUERY_ESC("SELECT `id` FROM `{?_MYSQL_PREFIX?}_user_cats` WHERE `userid`=%s AND `cat_id`=%s LIMIT 1",
73                                         array(bigintval(getRequestParameter('userid')), bigintval($content['id'])), __FILE__, __LINE__);
74
75                                 // Set selection
76                                 $selection = '<font color="#ee0000">{--NO--}</div>';
77                                 if (SQL_NUMROWS($result_user) == 1) $selection = '<font color="#00ee00">{--YES--}</div>';
78
79                                 // Add more elements
80                                 $content['cnt'] = $cnt;
81                                 $content['sel'] = $selection;
82
83                                 // Load row template and count up
84                                 $OUT .= loadTemplate('admin_list_cats_row', true, $content);
85                                 $cnt++;
86                         } // END - while
87
88                         // Free memory
89                         SQL_FREERESULT($result_cats);
90
91                         // Remember all rows in the array
92                         $content['rows'] = $OUT;
93
94                         // Load main template
95                         loadTemplate('admin_list_cats', false, $content);
96                 } else {
97                         // No categories selected! :-(
98                         loadTemplate('admin_list_cats_404', false, $content);
99                 }
100         } else {
101                 // User not found
102                 loadTemplate('admin_settings_saved', false, getMaskedMessage('ADMIN_MEMBER_404', $content['userid']));
103         }
104 } else {
105         // Output selection form with all confirmed user accounts listed
106         addMemberSelectionBox();
107 }
108
109 // [EOF]
110 ?>