2 /************************************************************************
3 * Mailer v0.2.1-FINAL Start: 10/19/2003 *
4 * =================== Last change: 07/13/2004 *
6 * -------------------------------------------------------------------- *
7 * File : what-refbanner.php *
8 * -------------------------------------------------------------------- *
9 * Short description : Manage all referal banner *
10 * -------------------------------------------------------------------- *
11 * Kurzbeschreibung : Alle Banner fuer die Ref-Links verwalten *
12 * -------------------------------------------------------------------- *
15 * $Tag:: 0.2.1-FINAL $ *
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 *
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. *
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. *
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, *
38 ************************************************************************/
40 // Some security stuff...
41 if ((!defined('__SECURITY')) || (!isAdmin())) {
45 // Add description as navigation point
46 addMenuDescription('admin', __FILE__);
49 if ((!isPostRequestParameterSet('url')) || (!isPostRequestParameterSet(('alternate')))) {
50 unsetPostRequestParameter('ok');
54 // Fix older calls from add-new-banner-form
55 if (!isGetRequestParameterSet('mode')) setGetRequestParameter('mode', 'add');
57 switch (getRequestParameter('mode')) {
59 // Check if banner is already added
60 $result = SQL_QUERY_ESC("SELECT `id` FROM `{?_MYSQL_PREFIX?}_refbanner` WHERE `url`='%s' LIMIT 1",
61 array(postRequestParameter('url')), __FILE__, __LINE__);
63 // Was the banner found?
64 if (SQL_HASZERONUMS($result)) {
66 SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_refbanner` (`url`, `alternate`, `visible`)
67 VALUES ('%s','%s','%s')",
69 postRequestParameter('url'),
70 postRequestParameter('alternate'),
71 postRequestParameter('visible')
72 ), __FILE__, __LINE__);
76 SQL_FREERESULT($result);
79 case 'edit': // Update banner
80 foreach (postRequestParameter('sel') as $id => $sel) {
85 SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_refbanner` SET `url`='%s', `alternate`='%s', `visible`='%s' WHERE `id`=%s LIMIT 1",
87 postRequestParameter('url', $id),
88 postRequestParameter('alternate', $id),
89 postRequestParameter('visible'),
91 ), __FILE__, __LINE__);
96 // Check if we have saved (updated)
97 if (SQL_AFFECTEDROWS() == 1) {
99 $content = '{--SETTINGS_SAVED--}';
101 // Nothing has been updated
102 $content = '<span class="admin_failed">{--SETTINGS_NOT_SAVED--}</span>';
106 loadTemplate('admin_settings_saved', false, $content);
107 } elseif ((ifPostContainsSelections()) && (isFormSent('edit'))) {
110 foreach (postRequestParameter('sel') as $id => $sel) {
112 $result = SQL_QUERY_ESC("SELECT `url`, `alternate`, `visible` FROM `{?_MYSQL_PREFIX?}_refbanner` WHERE `id`=%s LIMIT 1",
113 array(bigintval($id)), __FILE__, __LINE__);
114 $content = SQL_FETCHARRAY($result);
115 SQL_FREERESULT($result);
117 // Preapre data for the row
118 $content['visible'] = addSelectionBox('yn', $content['visible'], 'visible');
120 // Load row template and switch color
121 $OUT .= loadTemplate('admin_refbanner_edit_row', true, $content);
124 // Load main template
125 loadTemplate('admin_refbanner_edit', false, $OUT);
127 if ((ifPostContainsSelections()) && (isFormSent('del'))) {
129 foreach (postRequestParameter('sel') as $id => $sel) {
130 SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_refbanner` WHERE `id`=%s LIMIT 1",
131 array(bigintval($id)), __FILE__, __LINE__);
136 $result = SQL_QUERY('SELECT `id`, `url`, `alternate`, `visible`, `counter`, `clicks` FROM `{?_MYSQL_PREFIX?}_refbanner` ORDER BY `url` ASC', __FILE__, __LINE__);
139 if (!SQL_HASZERONUMS($result)) {
140 // Make referal banner editable and deletable
142 while ($content = SQL_FETCHARRAY($result)) {
143 // Load row template and switch color
144 $OUT .= loadTemplate('admin_refbanner_row', true, $content);
148 SQL_FREERESULT($result);
150 // Load main template
151 loadTemplate('admin_refbanner', false, $OUT);
154 // Form for adding new referal levels
155 loadTemplate('admin_add_banner');