2 /************************************************************************
3 * Mailer v0.2.1-FINAL Start: 03/22/2004 *
4 * =================== Last change: 06/28/2004 *
6 * -------------------------------------------------------------------- *
7 * File : ext-sponsor.php *
8 * -------------------------------------------------------------------- *
9 * Short description : Sponsor area *
10 * -------------------------------------------------------------------- *
11 * Kurzbeschreibung : Sponsorenbereich *
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')) {
46 setThisExtensionVersion('0.0');
48 // Version history array (add more with , '0.1.0' and so on)
49 setExtensionVersionHistory(array('0.0'));
51 // This extension is in development (non-productive)
52 enableExtensionProductive(false);
54 switch (getExtensionMode()) {
55 case 'register': // Do stuff when installation is running (modules.php?module=admin is called)
57 // SQL commands to run
59 // Try to make it depend on repair
60 addExtensionUpdateDependency('repair');
65 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_data`");
66 addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_data` (
67 `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
68 `company` VARCHAR(255) NOT NULL DEFAULT '',
69 `position` VARCHAR(255) NOT NULL DEFAULT '',
70 `tax_ident` VARCHAR(255) NOT NULL DEFAULT '',
71 `gender` ENUM('M','F','C') NOT NULL DEFAULT 'M',
72 `surname` VARCHAR(255) NOT NULL DEFAULT '',
73 `family` VARCHAR(255) NOT NULL DEFAULT '',
74 `street_nr1` VARCHAR(255) NOT NULL DEFAULT '',
75 `street_nr2` VARCHAR(255) NOT NULL DEFAULT '',
76 `zip` VARCHAR(6) NOT NULL DEFAULT '',
77 `city` VARCHAR(255) NOT NULL DEFAULT '',
78 `country` CHAR(2) NOT NULL DEFAULT 'DE',
79 `phone` VARCHAR(255) NOT NULL DEFAULT '',
80 `fax` VARCHAR(255) NOT NULL DEFAULT '',
81 `cell` VARCHAR(255) NOT NULL DEFAULT '',
82 `email` VARCHAR(255) NOT NULL DEFAULT '',
83 `url` VARCHAR(255) NOT NULL DEFAULT '',
84 `password` VARCHAR(255) NOT NULL DEFAULT '',
85 `remote_addr` VARCHAR(15) NOT NULL DEFAULT '0.0.0.0',
86 `sponsor_created` VARCHAR(10) NOT NULL DEFAULT 0,
87 `last_online` VARCHAR(10) NOT NULL DEFAULT 0,
88 `last_change` VARCHAR(10) NOT NULL DEFAULT 0,
89 `status` ENUM('UNCONFIRMED','PENDING','CONFIRMED','LOCKED') NOT NULL DEFAULT 'UNCONFIRMED',
90 `receive_warnings` ENUM('Y','N') NOT NULL DEFAULT 'Y',
91 `warning_interval` BIGINT(20) UNSIGNED NOT NULL DEFAULT '".(getConfig('ONE_DAY')*7)."',
92 `points_amount` FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000,
93 `points_used` FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000,
94 `refid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
95 `ref_count` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
96 `hash` VARCHAR(32) NOT NULL DEFAULT '',
97 `last_pay` FLOAT(7,2) UNSIGNED NOT NULL DEFAULT '0.00',
98 `last_curr` VARCHAR(255) NOT NULL DEFAULT '€',
103 )TYPE={?_TABLE_TYPE?}");
107 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_orders`");
108 addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_orders` (
109 `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
110 `sponsorid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
111 `admin_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
112 `regid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
113 `payid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
114 `pay_count` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
115 `pay_status` ENUM('PENDING','PAYED','UNPAYED','DELETED') NOT NULL DEFAULT 'PENDING',
116 `pay_ordered` VARCHAR(10) NOT NULL DEFAULT 0,
117 `pay_done` VARCHAR(10) NOT NULL DEFAULT 0,
123 )TYPE={?_TABLE_TYPE?}");
127 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_paytypes`");
128 addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_paytypes` (
129 `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
130 `pay_name` VARCHAR(255) NOT NULL DEFAULT '',
131 `pay_rate` FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000,
132 `pay_min_count` BIGINT(20) UNSIGNED NOT NULL DEFAULT 1,
133 `pay_currency` VARCHAR(255) NOT NULL DEFAULT '€',
135 )TYPE={?_TABLE_TYPE?}");
137 // Points-to-action converting
139 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_action_convert`");
140 addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_action_convert` (
141 `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
142 `ext_name` VARCHAR(255) NOT NULL DEFAULT 'sponsor',
143 `conv_rate` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
144 `conv_name` VARCHAR(255) NOT NULL DEFAULT 'Mails',
147 )TYPE={?_TABLE_TYPE?}");
149 // Sponsor menu system (default)
151 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_menu`");
152 addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_menu` (
153 `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
154 `action` VARCHAR(255) NOT NULL DEFAULT '',
155 `what` VARCHAR(255) NULL DEFAULT NULL,
156 `title` VARCHAR(255) NOT NULL DEFAULT '',
157 `active` ENUM('Y','N') NOT NULL DEFAULT 'N',
158 `sort` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
160 UNIQUE KEY `action_what` (`action`,`what`),
163 )TYPE={?_TABLE_TYPE?}");
165 // Registry for performable actions by your sponsors
167 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_registry`");
168 addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_registry` (
169 `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
170 `admin_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
171 `ext_name` VARCHAR(255) NOT NULL DEFAULT 'sponsor',
172 `is_active` ENUM('Y','N') NOT NULL DEFAULT 'N',
173 `stamp_added` VARCHAR(10) NOT NULL DEFAULT 0,
177 )TYPE={?_TABLE_TYPE?}");
179 // URLs from the sponsors
181 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_urls`");
182 addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_urls` (
183 `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
184 `sponsorid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
185 `url` VARCHAR(255) NOT NULL DEFAULT 'http://',
186 `title` VARCHAR(255) NOT NULL DEFAULT '',
187 `clicks` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
188 `status` ENUM('PENDING','ACTIVE','LOCKED') NOT NULL DEFAULT 'PENDING',
191 )TYPE={?_TABLE_TYPE?}");
193 // Banners of any size from the sponsors
195 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_banner`");
196 addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_banner` (
197 `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
198 `sponsorid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
199 `url` VARCHAR(255) NOT NULL DEFAULT 'http://',
200 `alternate` VARCHAR(255) NOT NULL DEFAULT '',
201 `width` INT(7) UNSIGNED NOT NULL DEFAULT 468,
202 `height` INT(7) UNSIGNED NOT NULL DEFAULT 60,
203 `views` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
204 `status` ENUM('PENDING','ACTIVE','LOCKED') NOT NULL DEFAULT 'PENDING',
207 )TYPE={?_TABLE_TYPE?}");
211 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_campaigns`");
212 addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_campaigns` (
213 `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
214 `sponsorid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
215 `admin_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
216 `campaign_name` VARCHAR(255) NOT NULL DEFAULT '',
217 `campaign_start` VARCHAR(10) NOT NULL DEFAULT 0,
218 `campaign_end` VARCHAR(10) NOT NULL DEFAULT 0,
219 `campaign_amount` FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000,
220 `campaign_expired` ENUM('Y','N') NOT NULL DEFAULT 'N',
221 `campaign_locked` ENUM('Y','N') NOT NULL DEFAULT 'Y',
222 `campaign_ended` VARCHAR(10) NOT NULL DEFAULT 0,
223 `locked_reason` TINYTEXT,
224 `locked_timestamp` VARCHAR(10) NOT NULL DEFAULT 0,
225 `status` ENUM('PENDING','ACTIVE','LOCKED') NOT NULL DEFAULT 'PENDING',
229 )TYPE={?_TABLE_TYPE?}");
231 // Campaigns + URLs + Banner
233 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_campaign_assigns`");
234 addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_campaign_assigns` (
235 `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
236 `campaignid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
237 `urlid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
238 `bannerid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
239 `clicks` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
240 `views` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
243 INDEX (`campaignid`),
245 )TYPE={?_TABLE_TYPE?}");
247 // Allowed data to display (administrative)
249 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_admin_data`");
250 addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_admin_data` (
251 `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
252 `data_row` VARCHAR(255) NOT NULL DEFAULT '',
253 `display` ENUM('Y','N') NOT NULL DEFAULT 'N',
255 )TYPE={?_TABLE_TYPE?}");
257 // Allowed data to display (sponsor-side)
259 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_display_data`");
260 addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_display_data` (
261 `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
262 `sponsorid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
263 `data_row` VARCHAR(255) NOT NULL DEFAULT '',
264 `display` ENUM('Y','N') NOT NULL DEFAULT 'N',
267 )TYPE={?_TABLE_TYPE?}");
269 // Default allowed data to display
271 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('id','N')");
272 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('company','Y')");
273 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('position','N')");
274 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('tax_ident','N')");
275 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('gender','N')");
276 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('surname','N')");
277 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('family','N')");
278 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('street_nr1','Y')");
279 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('street_nr2','Y')");
280 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('zip','Y')");
281 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('city','Y')");
282 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('country','Y')");
283 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('phone','Y')");
284 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('fax','Y')");
285 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('email','Y')");
286 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('url','N')");
287 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('password','N')");
288 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('remote_addr','N')");
289 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('sponsor_created','N')");
290 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('last_online','N')");
291 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('last_change','N')");
292 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('status','N')");
293 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('receive_warnings','N')");
294 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('warning_interval','N')");
295 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('points_amount','N')");
296 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('points_used','N')");
297 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('refid','N')");
298 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('ref_count','N')");
299 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('hash','N')");
300 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('last_pay','N')");
301 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('last_curr','N')");
303 // Add default entries
305 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_registry` (`ext_name`, `is_active`, `admin_id`, `stamp_added`) VALUES ('sponsor','N',".getCurrentAdminId().",UNIX_TIMESTAMP())");
306 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_action_convert` (`ext_name`, `conv_rate`, `conv_name`) VALUES ('sponsor','10','Mails')");
307 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_paytypes` (`pay_name`,`pay_min_count`,`pay_rate`,`pay_currency`) VALUES ('Standart-Paket', 5, 1000.00000, '€')");
308 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_paytypes` (`pay_name`,`pay_min_count`,`pay_rate`,`pay_currency`) VALUES ('Spar-Paket', 1, 200.00000, '€')");
309 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_paytypes` (`pay_name`,`pay_min_count`,`pay_rate`,`pay_currency`) VALUES ('Power-Paket', 10, 2000.00000, '€')");
310 addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_paytypes` (`pay_name`,`pay_min_count`,`pay_rate`,`pay_currency`) VALUES ('Sponsor-Paket', 20, 4000.00000, '€')");
314 addAdminMenuSql('sponsor', NULL, 'Sponsorenbereich','Den Sponsorenbereich verwalten. Hier können Sie auch Sonderaktionen seperat deakvieren oder wieder aktivieren, Sponsorenaccounts verwalten usw.', 7);
315 addAdminMenuSql('sponsor','add_sponsor','Neuer Sponsor','Neues Sponsorenaccount hinzufügen.', 1);
316 addAdminMenuSql('sponsor','unlock_sponsor','Sponsor freischalten','Sponsorenaccounts freigeben / sperren.', 2);
317 addAdminMenuSql('sponsor','list_sponsor','Sponsoren auflisten','Listet alle verfügbaren Sponsorenaccounts auf.', 3);
318 addAdminMenuSql('sponsor','edit_sponsor','Sponsor ändern','Sponsorenaccount ändern (Grundaten, nicht Freigabe!).', 4);
319 addAdminMenuSql('sponsor','lock_sponsor','Sponsor ent-/sperren','Sponsorenaccount sperren und entsperren.', 5);
320 addAdminMenuSql('sponsor','del_sponsor','Sponsor löschen','Sponsorenaccount löschen.', 6);
321 addAdminMenuSql('sponsor','allow_sponsor_data','Datenverwaltung','Stellen Sie hier ein, welche Daten der Sponsor im Mitgliedsbereich über sicht anzeigen darf und welche nicht.', 7);
322 addAdminMenuSql('sponsor','list_sponsor_pays','Bestellungen...','Bestellungen der Sponsoren auflisten / bearbeiten.', 8);
323 addAdminMenuSql('sponsor','list_sponsor_menu','Sponsorenmenü','Das Sponsorenmenü kann hier geändert werden.', 9);
324 addAdminMenuSql('sponsor','list_sponsor_campaigns','Kampagnen...','Verwaltung aller von Ihren Sponsoren eingerichteten Kampagnen.', 10);
325 addAdminMenuSql('sponsor','list_sponsor_urls','URL-Verwaltung','Verwaltung (freischalten, sperren, löschen, testen, bearbeiten usw.) von gebuchten URLs.', 11);
326 addAdminMenuSql('sponsor','list_sponsor_banner','Banner-Verwaltung','Verwaltung (freischalten, sperren, löschen, testen, bearbeiten usw.) von gebuchten Bannern.', 12);
327 addAdminMenuSql('sponsor','list_sponsor_reg','Sponsor-Aktionen','Alle Sponsor-Aktionen auflisten und verwalten.', 13);
328 addAdminMenuSql('sponsor','list_sponsor_pay','Buchungspakete','Die Sponsoren können sich {OPEN_CONFIG}POINTS{CLOSE_CONFIG}-Pakete kaufen. Hier können Sie diese verwalten.', 14);
329 addAdminMenuSql('sponsor','list_sponsor_conv','{OPEN_CONFIG}POINTS{CLOSE_CONFIG} umwandeln...','Mit den vom Sponsor gekauften {OPEN_CONFIG}POINTS{CLOSE_CONFIG} kann er Aktionen buchen. Hier stellen Sie die Umrechnungsrate von {OPEN_CONFIG}POINTS{CLOSE_CONFIG} nach Sponsoraktionen um. Beispiel: 1 {OPEN_CONFIG}POINTS{CLOSE_CONFIG} = 10 Mails.', 15);
330 addAdminMenuSql('sponsor','config_sponsor','Einstellungen','Allgemeine Einstellungen am Sponsoring-System.', 16);
331 addAdminMenuSql('repair','repr_sponsor','Sponsormenü','Gewichtung des Sponsormenüs reparieren.', 5);
333 // Menu system (still admin menu)
335 addAdminMenuSql('menu','sponsor_medit','Sponsor-Menü editieren','Hier können Sie das Sponsorenmenü verändern: Positionen verändern, Menütitel ändern usw.', 7);
336 addAdminMenuSql('menu','sponsor_madd','Sponsor-Menü hinzufügen','Hier können Sie einen neuen Menüpunkt hinzufügen (falls Sie z.B. eigene Sponsoraktionen entwickelt haben oder welche versehendlich gelöscht haben.', 8);
340 addGuestMenuSql('sponsor', NULL, 'Sponsoren','N','Y', 2);
341 addGuestMenuSql('sponsor','sponsor_reg','Anmeldung','N','Y', 1);
342 addGuestMenuSql('sponsor','sponsor_login','Einloggen','N','Y', 2);
343 addGuestMenuSql('sponsor','sponsor_infos','Infos/Preise','N','Y', 3);
344 addGuestMenuSql('sponsor','sponsor_agb','AGBs','N','Y', 4);
348 addMemberMenuSql('main','sponsor_list','Unsere Sponsoren','N','Y',8);
349 addMemberMenuSql('main','sponsor_reg','Sponsor werden','N','Y',9);
351 // Add default menus to sponsor menu
353 addSponsorMenuSql('main', NULL, 'Hauptauswahl','N', 1);
354 addSponsorMenuSql('main','welcome','Willkommen','N', 1);
355 addSponsorMenuSql('main','account','Ihr Account','N', 2);
356 addSponsorMenuSql('main','campaigns','Kampagnen','N', 3);
357 addSponsorMenuSql('main','list_urls','URL-Verwaltung','N', 4);
358 addSponsorMenuSql('main','list_banner','Banner-Verwaltung','N', 5);
359 addSponsorMenuSql('main','settings','Einstellungen','N', 6);
360 addSponsorMenuSql('main','fillup','Konto auffüllen','N', 7);
361 addSponsorMenuSql('main','stats','Statistiken','N', 8);
362 addSponsorMenuSql('main','inquiry','Kontaktanfrage','N', 9);
363 addSponsorMenuSql('main','refid','Referal-Link','N', 10);
364 addSponsorMenuSql('actions', NULL, 'Sponsorenaktionen','N', 2);
365 addSponsorMenuSql('actions','mail','Sponsor-Mail','N', 1);
366 addSponsorMenuSql('actions','banner','Banner buchen','N', 2);
367 addSponsorMenuSql('actions','text','Textlink buchen','N', 3);
368 addSponsorMenuSql('logout', NULL, 'Ausloggen','N', 3);
369 addSponsorMenuSql('logout','logout','Ausloggen','N', 1);
370 addSponsorMenuSql('logout','guest','Zum Gastbereich','N', 2);
372 // General configuration stuff
374 addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `sponsor_ref_points` FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 100.00000");
375 addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `sponsor_min_points` FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 1000.00000");
378 case 'remove': // Do stuff when removing extension
379 // SQL commands to run
380 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_data`");
381 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_orders`");
382 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_action_convert`");
383 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_paytypes`");
384 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_menu`");
385 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_registry`");
386 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_urls`");
387 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_banner`");
388 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_campaigns`");
389 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_campaign_assigns`");
390 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_admin_data`");
391 addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_display_data`");
392 addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `action`='sponsor' OR `what` IN('repr_sponsor','sponsor_medit','sponsor_madd')");
393 addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_guest_menu` WHERE `action`='sponsor'");
394 addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_member_menu` WHERE `what`='sponsor'");
397 case 'activate': // Do stuff when admin activates this extension
398 // SQL commands to run
399 addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_guest_menu` SET `visible`='Y', `locked`='N' WHERE `action`='sponsor' LIMIT 4");
400 addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `visible`='Y', `locked`='N' WHERE `what`='sponsor' LIMIT 1");
401 addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_sponsor_menu` SET active='Y' WHERE active='N'");
402 addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_sponsor_registry` SET is_active='Y' WHERE is_active='N'");
405 case 'deactivate': // Do stuff when admin deactivates this extension
406 // SQL commands to run
407 addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_guest_menu` SET `visible`='N', `locked`='Y' WHERE `action`='sponsor' LIMIT 4");
408 addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `visible`='N', `locked`='Y' WHERE `what`='sponsor' LIMIT 1");
409 addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_sponsor_menu` SET active='N' WHERE active='Y'");
410 addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_sponsor_registry` SET is_active='N' WHERE is_active='Y'");
413 case 'update': // Update an extension
414 switch (getCurrentExtensionVersion()) {
415 case '0.0.1': // SQL queries for v0.0.1
418 // Update notes (these will be set as task text!)
419 setExtensionUpdateNotes('');
424 case 'modify': // When the extension got modified
427 case 'test': // For testing purposes. For details see file inc/modules/admin/what-extensions.php, arround line 305.
430 case 'init': // Do stuff when extension is initialized
433 default: // Unknown extension mode
434 logDebugMessage(__FILE__, __LINE__, sprintf("Unknown extension mode %s in extension %s detected.", getExtensionMode(), getCurrentExtensionName()));