Deprecated action=login (admin area) removed
[mailer.git] / inc / extensions / ext-sponsor.php
1 <?php
2 /************************************************************************
3  * MXChange v0.2.1                                    Start: 03/22/2004 *
4  * ===============                              Last change: 06/28/2004 *
5  *                                                                      *
6  * -------------------------------------------------------------------- *
7  * File              : ext-sponsor.php                                  *
8  * -------------------------------------------------------------------- *
9  * Short description : Sponsor area                                     *
10  * -------------------------------------------------------------------- *
11  * Kurzbeschreibung  : Sponsorenbereich                                 *
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 - 2008 by Roland Haeder                           *
21  * For more information visit: http://www.mxchange.org                  *
22  *                                                                      *
23  * This program is free software. You can redistribute it and/or modify *
24  * it under the terms of the GNU General Public License as published by *
25  * the Free Software Foundation; either version 2 of the License.       *
26  *                                                                      *
27  * This program is distributed in the hope that it will be useful,      *
28  * but WITHOUT ANY WARRANTY; without even the implied warranty of       *
29  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *
30  * GNU General Public License for more details.                         *
31  *                                                                      *
32  * You should have received a copy of the GNU General Public License    *
33  * along with this program; if not, write to the Free Software          *
34  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,               *
35  * MA  02110-1301  USA                                                  *
36  ************************************************************************/
37
38 // Some security stuff...
39 if (!defined('__SECURITY')) {
40         $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), '/inc') + 4) . '/security.php';
41         require($INC);
42 }
43
44 // Version number
45 EXT_SET_VERSION('0.0');
46
47 // Version history array (add more with , '0.1.0' and so on)
48 EXT_SET_VER_HISTORY(array('0.0'));
49
50 switch ($EXT_LOAD_MODE)
51 {
52         case 'register': // Do stuff when installation is running (modules.php?module=admin is called)
53                 //
54                 // SQL commands to run
55                 //
56                 // Try to make it depend on repair
57                 EXT_ADD_UPDATE_DEPENDS('repair');
58
59                 //
60                 // Sponsor data
61                 //
62                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_data`");
63                 ADD_EXT_SQL("CREATE TABLE `{!_MYSQL_PREFIX!}_sponsor_data` (
64 id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
65 company VARCHAR(255) NOT NULL DEFAULT '',
66 position VARCHAR(255) NOT NULL DEFAULT '',
67 tax_ident VARCHAR(255) NOT NULL DEFAULT '',
68 gender ENUM('M','F','C') NOT NULL DEFAULT 'M',
69 surname VARCHAR(255) NOT NULL DEFAULT '',
70 family VARCHAR(255) NOT NULL DEFAULT '',
71 street_nr1 VARCHAR(255) NOT NULL DEFAULT '',
72 street_nr2 VARCHAR(255) NOT NULL DEFAULT '',
73 zip VARCHAR(6) NOT NULL DEFAULT '',
74 city VARCHAR(255) NOT NULL DEFAULT '',
75 country CHAR(2) NOT NULL DEFAULT 'DE',
76 phone VARCHAR(255) NOT NULL DEFAULT '',
77 fax VARCHAR(255) NOT NULL DEFAULT '',
78 cell VARCHAR(255) NOT NULL DEFAULT '',
79 email VARCHAR(255) NOT NULL DEFAULT '',
80 url VARCHAR(255) NOT NULL DEFAULT '',
81 password VARCHAR(255) NOT NULL DEFAULT '',
82 remote_addr VARCHAR(15) NOT NULL DEFAULT '0.0.0.0',
83 sponsor_created VARCHAR(10) NOT NULL DEFAULT 0,
84 last_online VARCHAR(10) NOT NULL DEFAULT 0,
85 last_change VARCHAR(10) NOT NULL DEFAULT 0,
86 status ENUM('UNCONFIRMED','PENDING','CONFIRMED','LOCKED') NOT NULL DEFAULT 'UNCONFIRMED',
87 receive_warnings ENUM('Y','N') NOT NULL DEFAULT 'Y',
88 warning_interval BIGINT(20) UNSIGNED NOT NULL DEFAULT '".(getConfig('one_day')*7)."',
89 points_amount FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000,
90 points_used FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000,
91 refid BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
92 ref_count BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
93 hash VARCHAR(32) NOT NULL DEFAULT '',
94 last_pay FLOAT(7,2) UNSIGNED NOT NULL DEFAULT '0.00',
95 last_curr VARCHAR(255) NOT NULL DEFAULT '&euro;',
96 KEY(refid),
97 KEY(email),
98 PRIMARY KEY(id)
99 )TYPE={!_TABLE_TYPE!}");
100                 //
101                 // Sponsor orders
102                 //
103                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_orders`");
104                 ADD_EXT_SQL("CREATE TABLE `{!_MYSQL_PREFIX!}_sponsor_orders` (
105 id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
106 sponsorid BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
107 aid BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
108 regid BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
109 payid BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
110 pay_count BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
111 pay_status ENUM('PENDING','PAYED','UNPAYED','DELETED') NOT NULL DEFAULT 'PENDING',
112 pay_ordered VARCHAR(10) NOT NULL DEFAULT 0,
113 pay_done VARCHAR(10) NOT NULL DEFAULT 0,
114 KEY (payid),
115 KEY (regid),
116 KEY (aid),
117 KEY (sponsorid),
118 PRIMARY KEY(id)
119 )TYPE={!_TABLE_TYPE!}");
120                 //
121                 // Pay-types
122                 //
123                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_paytypes`");
124                 ADD_EXT_SQL("CREATE TABLE `{!_MYSQL_PREFIX!}_sponsor_paytypes` (
125 id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
126 pay_name VARCHAR(255) NOT NULL DEFAULT '',
127 pay_rate FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000,
128 pay_min_count BIGINT(20) UNSIGNED NOT NULL DEFAULT 1,
129 pay_currency VARCHAR(255) NOT NULL DEFAULT '&euro;',
130 PRIMARY KEY(id)
131 )TYPE={!_TABLE_TYPE!}");
132                 //
133                 // Points-to-action converting
134                 //
135                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_action_convert`");
136                 ADD_EXT_SQL("CREATE TABLE `{!_MYSQL_PREFIX!}_sponsor_action_convert` (
137 id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
138 ext_name VARCHAR(255) NOT NULL DEFAULT 'sponsor',
139 conv_rate BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
140 conv_name VARCHAR(255) NOT NULL DEFAULT 'Mails',
141 KEY (ext_name),
142 PRIMARY KEY(id)
143 )TYPE={!_TABLE_TYPE!}");
144                 //
145                 // Sponsor menu system (default)
146                 //
147                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_menu`");
148                 ADD_EXT_SQL("CREATE TABLE `{!_MYSQL_PREFIX!}_sponsor_menu` (
149 id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
150 action VARCHAR(255) NOT NULL DEFAULT '',
151 what  VARCHAR(255) NULL DEFAULT NULL,
152 title VARCHAR(255) NOT NULL DEFAULT '',
153 active ENUM('Y','N') NOT NULL DEFAULT 'N',
154 sort BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
155 KEY (action),
156 UNIQUE KEY (what),
157 PRIMARY KEY(id)
158 )TYPE={!_TABLE_TYPE!}");
159                 //
160                 // Registry for performable actions by your sponsors
161                 //
162                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_registry`");
163                 ADD_EXT_SQL("CREATE TABLE `{!_MYSQL_PREFIX!}_sponsor_registry` (
164 id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
165 aid BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
166 ext_name VARCHAR(255) NOT NULL DEFAULT 'sponsor',
167 is_active ENUM('Y','N') NOT NULL DEFAULT 'N',
168 stamp_added VARCHAR(10) NOT NULL DEFAULT 0,
169 KEY(ext_name),
170 KEY(aid),
171 PRIMARY KEY(id)
172 )TYPE={!_TABLE_TYPE!}");
173                 //
174                 // URLs from the sponsors
175                 //
176                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_urls`");
177                 ADD_EXT_SQL("CREATE TABLE `{!_MYSQL_PREFIX!}_sponsor_urls` (
178 id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
179 sponsorid BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
180 url VARCHAR(255) NOT NULL DEFAULT 'http://',
181 title VARCHAR(255) NOT NULL DEFAULT '',
182 clicks BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
183 status ENUM('PENDING','ACTIVE','LOCKED') NOT NULL DEFAULT 'PENDING',
184 KEY(sponsorid),
185 PRIMARY KEY(id)
186 )TYPE={!_TABLE_TYPE!}");
187                 //
188                 // Banners of any size from the sponsors
189                 //
190                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_banner`");
191                 ADD_EXT_SQL("CREATE TABLE `{!_MYSQL_PREFIX!}_sponsor_banner` (
192 id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
193 sponsorid BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
194 url VARCHAR(255) NOT NULL DEFAULT 'http://',
195 alternate VARCHAR(255) NOT NULL DEFAULT '',
196 width INT(7) UNSIGNED NOT NULL DEFAULT 468,
197 height INT(7) UNSIGNED NOT NULL DEFAULT 60,
198 views BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
199 status ENUM('PENDING','ACTIVE','LOCKED') NOT NULL DEFAULT 'PENDING',
200 KEY(sponsorid),
201 PRIMARY KEY(id)
202 )TYPE={!_TABLE_TYPE!}");
203                 //
204                 // Campaigns
205                 //
206                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_campaigns`");
207                 ADD_EXT_SQL("CREATE TABLE `{!_MYSQL_PREFIX!}_sponsor_campaigns` (
208 id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
209 sponsorid BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
210 aid BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
211 campaign_name VARCHAR(255) NOT NULL DEFAULT '',
212 campaign_start VARCHAR(10) NOT NULL DEFAULT 0,
213 campaign_end VARCHAR(10) NOT NULL DEFAULT 0,
214 campaign_amount FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000,
215 campaign_expired ENUM('Y','N') NOT NULL DEFAULT 'N',
216 campaign_locked ENUM('Y','N') NOT NULL DEFAULT 'Y',
217 campaign_ended VARCHAR(10) NOT NULL DEFAULT 0,
218 locked_reason TINYTEXT,
219 locked_timestamp VARCHAR(10) NOT NULL DEFAULT 0,
220 status ENUM('PENDING','ACTIVE','LOCKED') NOT NULL DEFAULT 'PENDING',
221 KEY(aid),
222 KEY(sponsorid),
223 PRIMARY KEY(id)
224 )TYPE={!_TABLE_TYPE!}");
225                 //
226                 // Campaigns + URLs + Banner
227                 //
228                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_campaign_assigns`");
229                 ADD_EXT_SQL("CREATE TABLE `{!_MYSQL_PREFIX!}_sponsor_campaign_assigns` (
230 id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
231 campaignid BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
232 urlid BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
233 bannerid BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
234 clicks BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
235 views BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
236 KEY(bannerid),
237 KEY(urlid),
238 KEY(campaignid),
239 PRIMARY KEY(id)
240 )TYPE={!_TABLE_TYPE!}");
241                 //
242                 // Allowed data to display (administrative)
243                 //
244                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_admin_data`");
245                 ADD_EXT_SQL("CREATE TABLE `{!_MYSQL_PREFIX!}_sponsor_admin_data` (
246 id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
247 data_row VARCHAR(255) NOT NULL DEFAULT '',
248 display ENUM('Y','N') NOT NULL DEFAULT 'N',
249 PRIMARY KEY(id)
250 )TYPE={!_TABLE_TYPE!}");
251                 //
252                 // Allowed data to display (sponsor-side)
253                 //
254                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_display_data`");
255                 ADD_EXT_SQL("CREATE TABLE `{!_MYSQL_PREFIX!}_sponsor_display_data` (
256 id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
257 sponsorid BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
258 data_row VARCHAR(255) NOT NULL DEFAULT '',
259 display ENUM('Y','N') NOT NULL DEFAULT 'N',
260 KEY(sponsorid),
261 PRIMARY KEY(id)
262 )TYPE={!_TABLE_TYPE!}");
263                 //
264                 // Default allowed data to display
265                 //
266                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('id','N')");
267                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('company','Y')");
268                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('position','N')");
269                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('tax_ident','N')");
270                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('gender','N')");
271                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('surname','N')");
272                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('family','N')");
273                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('street_nr1','Y')");
274                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('street_nr2','Y')");
275                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('zip','Y')");
276                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('city','Y')");
277                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('country','Y')");
278                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('phone','Y')");
279                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('fax','Y')");
280                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('email','Y')");
281                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('url','N')");
282                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('password','N')");
283                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('remote_addr','N')");
284                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('sponsor_created','N')");
285                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('last_online','N')");
286                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('last_change','N')");
287                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('status','N')");
288                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('receive_warnings','N')");
289                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('warning_interval','N')");
290                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('points_amount','N')");
291                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('points_used','N')");
292                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('refid','N')");
293                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('ref_count','N')");
294                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('hash','N')");
295                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('last_pay','N')");
296                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_admin_data` (data_row, display) VALUES ('last_curr','N')");
297                 //
298                 // Add default entries
299                 //
300                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_registry` (ext_name, is_active, aid, stamp_added) VALUES ('sponsor','N',".getCurrentAdminId().",UNIX_TIMESTAMP())");
301                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_action_convert` (ext_name, conv_rate, conv_name) VALUES ('sponsor','10','Mails')");
302                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_paytypes` (pay_name, pay_min_count, pay_rate, pay_currency) VALUES ('Standart-Paket', 5, 1000.00000, '&euro;')");
303                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_paytypes` (pay_name, pay_min_count, pay_rate, pay_currency) VALUES ('Spar-Paket', 1, 200.00000, '&euro;')");
304                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_paytypes` (pay_name, pay_min_count, pay_rate, pay_currency) VALUES ('Power-Paket', 10, 2000.00000, '&euro;')");
305                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_paytypes` (pay_name, pay_min_count, pay_rate, pay_currency) VALUES ('Sponsor-Paket', 20, 4000.00000, '&euro;')");
306                 //
307                 // Admin menu
308                 //
309                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('sponsor', NULL, 'Sponsorenbereich','Den Sponsorenbereich verwalten. Hier k&ouml;nnen Sie auch Sonderaktionen seperat deakvieren oder wieder aktivieren, Sponsorenaccounts verwalten usw.', 7)");
310                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('sponsor','add_sponsor','Neuer Sponsor','Neues Sponsorenaccount hinzuf&uuml;gen.', 1)");
311                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('sponsor','unlock_sponsor','Sponsor freischalten','Sponsorenaccounts freigeben / sperren.', 2)");
312                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('sponsor','list_sponsor','Sponsoren auflisten','Listet alle verf&uuml;gbaren Sponsorenaccounts auf.', 3)");
313                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('sponsor','edit_sponsor','Sponsor &auml;ndern','Sponsorenaccount &auml;ndern (Grundaten, nicht Freigabe!).', 4)");
314                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('sponsor','lock_sponsor','Sponsor ent-/sperren','Sponsorenaccount sperren und entsperren.', 5)");
315                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('sponsor','del_sponsor','Sponsor l&ouml;schen','Sponsorenaccount l&ouml;schen.', 6)");
316                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('sponsor','allow_sponsor_data','Datenverwaltung','Stellen Sie hier ein, welche Daten der Sponsor im Mitgliedsbereich &uuml;ber sicht anzeigen darf und welche nicht.', 7)");
317                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('sponsor','list_sponsor_pays','Bestellungen...','Bestellungen der Sponsoren auflisten / bearbeiten.', 8)");
318                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('sponsor','list_sponsor_menu','Sponsorenmen&uuml;','Das Sponsorenmen&uuml; kann hier ge&auml;ndert werden.', 9)");
319                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('sponsor','list_sponsor_campaigns','Kampagnen...','Verwaltung aller von Ihren Sponsoren eingerichteten Kampagnen.', 10)");
320                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('sponsor','list_sponsor_urls','URL-Verwaltung','Verwaltung (freischalten, sperren, l&ouml;schen, testen, bearbeiten usw.) von gebuchten URLs.', 11)");
321                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('sponsor','list_sponsor_banner','Banner-Verwaltung','Verwaltung (freischalten, sperren, l&ouml;schen, testen, bearbeiten usw.) von gebuchten Bannern.', 12)");
322                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('sponsor','list_sponsor_reg','Sponsor-Aktionen','Alle Sponsor-Aktionen auflisten und verwalten.', 13)");
323                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('sponsor','list_sponsor_pay','Buchungspakete','Die Sponsoren k&ouml;nnen sich {!POINTS!}-Pakete kaufen. Hier k&ouml;nnen Sie diese verwalten.', 14)");
324                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('sponsor','list_sponsor_conv','{!POINTS!} umwandeln...','Mit den vom Sponsor gekauften {!POINTS!} kann er Aktionen buchen. Hier stellen Sie die Umrechnungsrate von {!POINTS!} nach Sponsoraktionen um. Beispiel: 1 {!POINTS!} = 10 Mails.', 15)");
325                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('sponsor','config_sponsor','Einstellungen','Allgemeine Einstellungen am Sponsoring-System.', 16)");
326                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('repair','repr_sponsor','Sponsormen&uuml;','Gewichtung des Sponsormen&uuml;s reparieren.', 5)");
327                 //
328                 // Menu system (still admin menu)
329                 //
330                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('menu','sponsor_medit','Sponsor-Men&uuml; editieren','Hier k&ouml;nnen Sie das Sponsorenmen&uuml; ver&auml;ndern: Positionen ver&auml;ndern, Men&uuml;titel &auml;ndern usw.', 7)");
331                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('menu','sponsor_madd','Sponsor-Men&uuml; hinzuf&uuml;gen','Hier k&ouml;nnen Sie einen neuen Men&uuml;punkt hinzuf&uuml;gen (falls Sie z.B. eigene Sponsoraktionen entwickelt haben oder welche versehendlich gel&ouml;scht haben.', 8)");
332                 //
333                 // Guest menu
334                 //
335                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_guest_menu` (`action`,`what`,`title`,`sort`) VALUES ('sponsor', NULL, 'Sponsoren', 2)");
336                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_guest_menu` (`action`,`what`,`title`,`sort`) VALUES ('sponsor','sponsor_reg','Anmeldung', 1)");
337                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_guest_menu` (`action`,`what`,`title`,`sort`) VALUES ('sponsor','sponsor_login','Einloggen', 2)");
338                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_guest_menu` (`action`,`what`,`title`,`sort`) VALUES ('sponsor','sponsor_infos','Infos/Preise', 3)");
339                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_guest_menu` (`action`,`what`,`title`,`sort`) VALUES ('sponsor','sponsor_agb','AGBs', 4)");
340                 //
341                 // Member menu
342                 //
343                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_member_menu` (`action`,`what`,`title`,`sort`) VALUES ('main','sponsor','Unsere Sponsoren', 8)");
344                 //
345                 // Add default menus to sponsor menu
346                 //
347                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_menu` (`action`,`what`,`title`,`active`,`sort`) VALUES ('main', NULL, 'Hauptauswahl','N', 1)");
348                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_menu` (`action`,`what`,`title`,`active`,`sort`) VALUES ('main','welcome','Willkommen','N', 1)");
349                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_menu` (`action`,`what`,`title`,`active`,`sort`) VALUES ('main','account','Ihr Account','N', 2)");
350                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_menu` (`action`,`what`,`title`,`active`,`sort`) VALUES ('main','campaigns','Kampagnen','N', 3)");
351                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_menu` (`action`,`what`,`title`,`active`,`sort`) VALUES ('main','list_urls','URL-Verwaltung','N', 4)");
352                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_menu` (`action`,`what`,`title`,`active`,`sort`) VALUES ('main','list_banner','Banner-Verwaltung','N', 5)");
353                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_menu` (`action`,`what`,`title`,`active`,`sort`) VALUES ('main','settings','Einstellungen','N', 6)");
354                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_menu` (`action`,`what`,`title`,`active`,`sort`) VALUES ('main','fillup','Konto auff&uuml;llen','N', 7)");
355                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_menu` (`action`,`what`,`title`,`active`,`sort`) VALUES ('main','stats','Statistiken','N', 8)");
356                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_menu` (`action`,`what`,`title`,`active`,`sort`) VALUES ('main','inquiry','Kontaktanfrage','N', 9)");
357                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_menu` (`action`,`what`,`title`,`active`,`sort`) VALUES ('main','refid','Referal-Link','N', 10)");
358                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_menu` (`action`,`what`,`title`,`active`,`sort`) VALUES ('actions', NULL, 'Sponsorenaktionen','N', 2)");
359                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_menu` (`action`,`what`,`title`,`active`,`sort`) VALUES ('actions','mail','Sponsor-Mail','N', 1)");
360                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_menu` (`action`,`what`,`title`,`active`,`sort`) VALUES ('actions','banner','Banner buchen','N', 2)");
361                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_menu` (`action`,`what`,`title`,`active`,`sort`) VALUES ('actions','text','Textlink buchen','N', 3)");
362                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_menu` (`action`,`what`,`title`,`active`,`sort`) VALUES ('logout', NULL, 'Ausloggen','N', 3)");
363                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_menu` (`action`,`what`,`title`,`active`,`sort`) VALUES ('logout','logout','Ausloggen','N', 1)");
364                 ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_menu` (`action`,`what`,`title`,`active`,`sort`) VALUES ('logout','guest','Zum Gastbereich','N', 2)");
365                 //
366                 // General configuration stuff
367                 //
368                 ADD_EXT_SQL("ALTER TABLE `{!_MYSQL_PREFIX!}_config` ADD sponsor_ref_points FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 100.00000");
369                 ADD_EXT_SQL("ALTER TABLE `{!_MYSQL_PREFIX!}_config` ADD sponsor_min_points FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 1000.00000");
370                 break;
371
372         case 'remove': // Do stuff when removing extension
373                 // SQL commands to run
374                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_data`");
375                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_orders`");
376                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_action_convert`");
377                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_paytypes`");
378                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_menu`");
379                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_registry`");
380                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_urls`");
381                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_banner`");
382                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_campaigns`");
383                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_campaign_assigns`");
384                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_admin_data`");
385                 ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_sponsor_display_data`");
386                 ADD_EXT_SQL("DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_admin_menu` WHERE `action`='sponsor' OR what IN('repr_sponsor','sponsor_medit','sponsor_madd')");
387                 ADD_EXT_SQL("DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_guest_menu` WHERE `action`='sponsor'");
388                 ADD_EXT_SQL("DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_member_menu` WHERE `what`='sponsor'");
389                 break;
390
391         case 'activate': // Do stuff when admin activates this extension
392                 // SQL commands to run
393                 ADD_EXT_SQL("UPDATE `{!_MYSQL_PREFIX!}_guest_menu` SET `visible`='Y', `locked`='N' WHERE `action`='sponsor' LIMIT 4");
394                 ADD_EXT_SQL("UPDATE `{!_MYSQL_PREFIX!}_member_menu` SET `visible`='Y', `locked`='N' WHERE `what`='sponsor' LIMIT 1");
395                 ADD_EXT_SQL("UPDATE `{!_MYSQL_PREFIX!}_sponsor_menu` SET active='Y' WHERE active='N'");
396                 ADD_EXT_SQL("UPDATE `{!_MYSQL_PREFIX!}_sponsor_registry` SET is_active='Y' WHERE is_active='N'");
397                 break;
398
399         case 'deactivate': // Do stuff when admin deactivates this extension
400                 // SQL commands to run
401                 ADD_EXT_SQL("UPDATE `{!_MYSQL_PREFIX!}_guest_menu` SET `visible`='N', `locked`='Y' WHERE `action`='sponsor' LIMIT 4");
402                 ADD_EXT_SQL("UPDATE `{!_MYSQL_PREFIX!}_member_menu` SET `visible`='N', `locked`='Y' WHERE `what`='sponsor' LIMIT 1");
403                 ADD_EXT_SQL("UPDATE `{!_MYSQL_PREFIX!}_sponsor_menu` SET active='N' WHERE active='Y'");
404                 ADD_EXT_SQL("UPDATE `{!_MYSQL_PREFIX!}_sponsor_registry` SET is_active='N' WHERE is_active='Y'");
405                 break;
406
407         case 'update': // Update an extension
408                 switch ($EXT_VER)
409                 {
410                         case '0.0.1': // SQL queries for v0.0.1
411                                 ADD_EXT_SQL('');
412
413                                 // Update notes (these will be set as task text!)
414                                 EXT_SET_UPDATE_NOTES('');
415                                 break;
416                 }
417                 break;
418
419                         case 'modify': // When the extension got modified
420                                 break;
421
422                         case 'test': // For testing purposes. For details see file inc/modules/admin/what-extensions.php, arround line 305.
423                                 break;
424
425                         default: // Do stuff when extension is loaded
426                                 break;
427 }
428
429 //
430 ?>