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