9afddf7f6a692df3454abfd5ed497f27076c7f40
[mailer.git] / inc / modules / admin / what-list_surfbar_urls.php
1 <?php
2 /************************************************************************
3  * Mailer v0.2.1-FINAL                                Start: 08/31/2008 *
4  * ===================                          Last change: 08/31/2008 *
5  *                                                                      *
6  * -------------------------------------------------------------------- *
7  * File              : what-list_surfbar_urls.php                       *
8  * -------------------------------------------------------------------- *
9  * Short description : List all URLs in surfbar and sync from mail pool *
10  * -------------------------------------------------------------------- *
11  * Kurzbeschreibung  : Alle URLs in Surfbar auflisten und syncen        *
12  * -------------------------------------------------------------------- *
13  * $Revision::                                                        $ *
14  * $Date::                                                            $ *
15  * $Tag:: 0.2.1-FINAL                                                 $ *
16  * $Author::                                                          $ *
17  * Needs to be in all Files and every File needs "svn propset           *
18  * svn:keywords Date Revision" (autoprobset!) at least!!!!!!            *
19  * -------------------------------------------------------------------- *
20  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
21  * Copyright (c) 2009, 2010 by Mailer Developer Team                    *
22  * For more information visit: http://www.mxchange.org                  *
23  *                                                                      *
24  * This program is free software; you can redistribute it and/or modify *
25  * it under the terms of the GNU General Public License as published by *
26  * the Free Software Foundation; either version 2 of the License, or    *
27  * (at your option) any later version.                                  *
28  *                                                                      *
29  * This program is distributed in the hope that it will be useful,      *
30  * but WITHOUT ANY WARRANTY; without even the implied warranty of       *
31  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *
32  * GNU General Public License for more details.                         *
33  *                                                                      *
34  * You should have received a copy of the GNU General Public License    *
35  * along with this program; if not, write to the Free Software          *
36  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,               *
37  * MA  02110-1301  USA                                                  *
38  ************************************************************************/
39
40 // Some security stuff...
41 if ((!defined('__SECURITY')) || (!isAdmin())) {
42         die();
43 } // END - if
44
45 // Add description as navigation point
46 addMenuDescription('admin', __FILE__);
47
48 // By default show the list...
49 $show = true;
50
51 // Check for 'id' element
52 if ((countRequestPost() > 0) && ((!isPostRequestParameterSet('id')) || (!is_array(postRequestParameter('id'))) || (count(postRequestParameter('id')) == 0))) {
53         // Not found so output message
54         loadTemplate('admin_settings_saved', false, getMessage('ADMIN_SURFBAR_NO_SELECTIONS'));
55
56         // Abort here
57         return;
58 } // END - if
59
60 // Edit or delete button hit?
61 if (isPostRequestParameterSet('edit')) {
62         // Show entries for editing
63         adminEditEntriesConfirm(
64                 postRequestParameter('id'),
65                 'surfbar_urls',
66                 array('id', 'userid', 'url'),
67                 array('bigintval', 'addMemberSelectionBox', ''),
68                 array('', array(false, true, true, 'userid[]'), '')
69         );
70         $show = false;
71 } elseif (isPostRequestParameterSet('do_edit')) {
72         // Change data of entries
73         adminEditEntriesConfirm(
74                 postRequestParameter('id'),
75                 'surfbar_urls',
76                 array(),
77                 array(),
78                 array(),
79                 true
80         );
81 } elseif (isPostRequestParameterSet('delete')) {
82         // Show entries for deletion
83         adminDeleteEntriesConfirm(
84         postRequestParameter('id'),
85                 'surfbar_urls',
86                 array('id', 'userid', 'url', 'registered'),
87                 array('bigintval', 'generateUserProfileLink', 'generateFrametesterUrl', ''),
88                 array('', '', '', '')
89         );
90         $show = false;
91 } elseif (isPostRequestParameterSet('do_delete')) {
92         // Remove entries from database
93         adminDeleteEntriesConfirm(postRequestParameter('id'), 'surfbar_urls', array(), array(), array(), true);
94 } elseif (isPostRequestParameterSet('lock')) {
95         // Un-/lock selected URLs. This does not work for pending URLs
96         adminLockEntriesConfirm(
97                 postRequestParameter('id'),
98                 'surfbar_urls',
99                 array('id', 'userid', 'url', 'registered', 'status'),
100                 array('bigintval', 'generateUserProfileLink', 'generateFrametesterUrl', '', 'translateSurfbarUrlStatus'),
101                 array('', '', '', '', '')
102         );
103         $show = false;
104 } elseif (isPostRequestParameterSet('do_lock')) {
105         // Un-/lock selected URLs. This does not work for pending URLs
106         adminLockEntriesConfirm(
107                 postRequestParameter('id'),
108                 'surfbar_urls',
109                 array(),
110                 array(),
111                 array(),
112                 array('status' => array('ACTIVE' => 'LOCKED', 'LOCKED' => 'ACTIVE')),
113                 true
114         );
115 } elseif (isPostRequestParameterSet('undelete')) {
116         // Undelete selected URLs. This does only work for deleted URLs... ;-)
117         adminUndeleteEntriesConfirm(
118                 postRequestParameter('id'),
119                 'surfbar_urls',
120                 array('id', 'userid', 'url', 'registered', 'status'),
121                 array('bigintval', 'generateUserProfileLink', 'generateFrametesterUrl', '', 'translateSurfbarUrlStatus'),
122                 array('', '', '', '', '')
123         );
124         $show = false;
125 } elseif (isPostRequestParameterSet('do_undelete')) {
126         // Undelete selected URLs. This does only work for deleted URLs... ;-)
127         adminUndeleteEntriesConfirm(
128                 postRequestParameter('id'),
129                 'surfbar_urls',
130                 array(),
131                 array(),
132                 array(),
133                 array('status' => array('DELETED' => 'ACTIVE')),
134                 true
135         );
136 }
137
138 // Show entries?
139 if ($show === false) return false;
140
141 // List all URLs
142 $result = SQL_QUERY("SELECT
143         `url_id`, `url_userid`, `url`, `url_views_total`, `url_status`,
144         UNIX_TIMESTAMP(`url_registered`) AS `url_registered`,
145         UNIX_TIMESTAMP(`url_last_locked`) AS `url_last_locked`,
146         `url_lock_reason`
147 FROM
148         `{?_MYSQL_PREFIX?}_surfbar_urls`
149 ORDER BY
150         `url_id` ASC", __FILE__, __LINE__);
151
152 // Do we have some URLs left?
153 if (SQL_NUMROWS($result) > 0) {
154         // List all URLs
155         $OUT = ''; $SW = 2;
156         while ($content = SQL_FETCHARRAY($result)) {
157                 // "Translate"/add content
158                 $content['sw']              = $SW;
159                 $content['url_userid']      = generateUserProfileLink($content['url_userid']);
160                 $content['url']             = generateFrametesterUrl($content['url']);
161                 $content['views_total']     = translateComma($content['url_views_total']);
162                 $content['url_status']      = translateSurfbarUrlStatus($content['url_status']);
163                 $content['url_registered']  = generateDateTime($content['url_registered'], 2);
164                 $content['url_last_locked'] = generateDateTime($content['url_last_locked'], 2);
165                 if (empty($content['lock_reason'])) $content['lock_reason'] = '---';
166
167                 // Load row template
168                 $OUT .= loadTemplate('admin_list_surfbar_urls_row', true, $content);
169
170                 // Switch color
171                 $SW = 3 - $SW;
172         } // END - while
173
174         // Load main template
175         loadTemplate('admin_list_surfbar_urls', false, $OUT);
176 } else {
177         // No URLs in surfbar
178         loadTemplate('admin_settings_saved', false, getMessage('ADMIN_SURFBAR_NO_URLS_FOUND'));
179 }
180
181 // Free result
182 SQL_FREERESULT($result);
183
184 // [EOF]
185 ?>