Referal overview finished and rewritten for refback extension
[mailer.git] / inc / extensions / ext-bonus.php
1 <?php
2 /************************************************************************
3  * MXChange v0.2.1                                    Start: 04/04/2004 *
4  * ================                             Last change: 06/13/2005 *
5  *                                                                      *
6  * -------------------------------------------------------------------- *
7  * File              : ext-bonus.php                                    *
8  * -------------------------------------------------------------------- *
9  * Short description : Bonus pages                                      *
10  * -------------------------------------------------------------------- *
11  * Kurzbeschreibung  : Bonus-Seiten                                     *
12  * -------------------------------------------------------------------- *
13  *                                                                      *
14  * -------------------------------------------------------------------- *
15  * Copyright (c) 2003 - 2008 by Roland Haeder                           *
16  * For more information visit: http://www.mxchange.org                  *
17  *                                                                      *
18  * This program is free software; you can redistribute it and/or modify *
19  * it under the terms of the GNU General Public License as published by *
20  * the Free Software Foundation; either version 2 of the License, or    *
21  * (at your option) any later version.                                  *
22  *                                                                      *
23  * This program is distributed in the hope that it will be useful,      *
24  * but WITHOUT ANY WARRANTY; without even the implied warranty of       *
25  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *
26  * GNU General Public License for more details.                         *
27  *                                                                      *
28  * You should have received a copy of the GNU General Public License    *
29  * along with this program; if not, write to the Free Software          *
30  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,               *
31  * MA  02110-1301  USA                                                  *
32  ************************************************************************/
33
34 // Some security stuff...
35 if (!defined('__SECURITY')) {
36         $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
37         require($INC);
38 }
39
40 // Version of this extension
41 $EXT_VERSION = "0.8.7";
42
43 // Auto-set extension version
44 if (empty($EXT_VER)) $EXT_VER = $EXT_VERSION;
45
46 // Version history array (add more with , "0.1" and so on)
47 $EXT_VER_HISTORY = array("0.0", "0.1.6", "0.2.0", "0.2.1", "0.2.2", "0.2.3", "0.2.4", "0.2.5", "0.2.6", "0.2.7", "0.2.8", "0.2.9", "0.3.0", "0.3.1", "0.3.2", "0.3.3", "0.3.4", "0.3.5", "0.3.6", "0.3.7", "0.3.8", "0.3.9", "0.4.0", "0.4.1", "0.4.2", "0.4.3", "0.4.4", "0.4.5", "0.4.6", "0.4.7", "0.4.8", "0.4.9", "0.5.0", "0.5.1", "0.5.2", "0.5.3", "0.5.4", "0.5.5", "0.5.6", "0.5.7", "0.5.8", "0.5.9", "0.6.0", "0.6.1", "0.6.2", "0.6.3", "0.6.4", "0.6.5", "0.6.6", "0.6.7", "0.6.8", "0.6.9", "0.7.0", "0.7.1", "0.7.2", "0.7.3", "0.7.4", "0.7.5", "0.7.6", "0.7.7", "0.7.8", "0.7.9", "0.8.0", "0.8.1", "0.8.2", "0.8.3", "0.8.4", "0.8.5", "0.8.6", "0.8.7");
48
49 switch ($EXT_LOAD_MODE)
50 {
51 case "register": // Do stuff when installtion is running (modules.php?module=admin&action=login is called)
52         // SQL commands to run
53         $SQLs[] = "INSERT INTO "._MYSQL_PREFIX."_admin_menu VALUES (NULL,'email','send_bonus','Bonusmail senden',5,'Versenden Sie hier Bonus-Mails an alle Mitglieder oder nur an alle aus einer Kategorie. Es spielt keine Rolle, wie viele Mails bereits versendet worden, Sie k&ouml;nnen hier immer senden.')";
54         $SQLs[] = "INSERT INTO "._MYSQL_PREFIX."_member_menu VALUES (NULL,'main','bonus','Bonuspunkte',7,'Y','Y','', 0)";
55         $SQLs[] = "DROP TABLE IF EXISTS "._MYSQL_PREFIX."_bonus";
56         $SQLs[] = "CREATE TABLE "._MYSQL_PREFIX."_bonus (
57 id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
58 cat_id BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
59 subject VARCHAR(255) NOT NULL DEFAULT '',
60 text LONGBLOB NOT NULL,
61 receivers LONGBLOB NOT NULL,
62 points BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
63 time TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
64 data_type ENUM('NEW','QUEUE','SEND') NOT NULL DEFAULT 'NEW',
65 timestamp VARCHAR(10) NOT NULL DEFAULT '0',
66 url VARCHAR(255) NOT NULL DEFAULT '',
67 target_send BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
68 clicks BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
69 mails_sent BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
70 KEY(cat_id),
71 PRIMARY KEY  (id)
72 )TYPE=MyISAM";
73         $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_links MODIFY link_type ENUM('NORMAL','BONUS') NOT NULL DEFAULT 'NORMAL'";
74         $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_links ADD bonus_id BIGINT(20) UNSIGNED NOT NULL DEFAULT '0'";
75         $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_links ADD INDEX (bonus_id)";
76
77         // Run this SQL when html or html_mail extension is installed
78         if (EXT_IS_ACTIVE("html_mail")) $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_bonus add html_msg ENUM('Y','N') NOT NULL DEFAULT 'N'";
79         break;
80
81 case "remove": // Do stuff when removing extension
82         // SQL commands to run
83         $SQLs[] = "DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_admin_menu WHERE what IN ('bonus','config_bonus','send_bonus','list_bonus','list_notifications') LIMIT 5";
84         $SQLs[] = "DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_member_menu WHERE what='bonus' LIMIT 1";
85         $SQLs[] = "DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_guest_menu WHERE action='bonus' LIMIT 1";
86         $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_links MODIFY link_type ENUM('NORMAL') NOT NULL DEFAULT 'NORMAL'";
87         $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_links DROP bonus_id";
88         $SQLs[] = "DROP TABLE IF EXISTS "._MYSQL_PREFIX."_bonus";
89         $SQLs[] = "DROP TABLE IF EXISTS "._MYSQL_PREFIX."_bonus_urls";
90         $SQLs[] = "DROP TABLE IF EXISTS "._MYSQL_PREFIX."_bonus_customer";
91         $SQLs[] = "DROP TABLE IF EXISTS "._MYSQL_PREFIX."_bonus_turbo";
92         break;
93
94 case "activate": // Do stuff when admin activates this extension
95         // SQL commands to run
96         $SQLs[] = "UPDATE "._MYSQL_PREFIX."_member_menu SET visible='Y', locked='N' WHERE what='bonus' LIMIT 1";
97         $SQLs[] = "UPDATE "._MYSQL_PREFIX."_guest_menu SET visible='Y', locked='N' WHERE action='bonus' LIMIT 1";
98         $SQLs[] = "UPDATE "._MYSQL_PREFIX."_mod_reg SET locked='N', hidden='N', admin_only='N', mem_only='N' WHERE module='show_bonus' LIMIT 1";
99         break;
100
101 case "deactivate": // Do stuff when admin deactivates this extension
102         // SQL commands to run
103         $SQLs[] = "UPDATE "._MYSQL_PREFIX."_member_menu SET visible='Y', locked='Y' WHERE what='bonus' LIMIT 1";
104         $SQLs[] = "UPDATE "._MYSQL_PREFIX."_guest_menu SET visible='Y', locked='Y' WHERE action='bonus' LIMIT 1";
105         $SQLs[] = "UPDATE "._MYSQL_PREFIX."_mod_reg SET locked='Y' WHERE module='show_bonus' LIMIT 1";
106         break;
107
108 case "update": // Update an extension
109         switch ($EXT_VER)
110         {
111         case "0.1.6": // SQL queries for v0.1.6
112                 // Update notes (these will be set as task text!)
113                 $UPDATE_NOTES = "Paid-Links wurden verschoben in die Erweiterung <STRONG>paidlinks</STRONG>.";
114                 break;
115
116         case "0.2.0": // SQL queries for v0.2.0
117                 $SQLs[] = "UPDATE "._MYSQL_PREFIX."_bonus SET target_send=mails_sent WHERE target_send='0' AND mails_sent>0 AND receivers != ''";
118
119                 // Update notes (these will be set as task text!)
120                 $UPDATE_NOTES = "Behebt ein Versand-Problem mit den Bonus-Mails. Es wurde die Spalte target_send nicht beim Einf&uuml;gen der Buchung gessetzt. Bitte laden Sie sich dazu - wenn nicht bereits geschehen - alle Patches bis mindestens Patch 240 unter <A href=\"".URL."/modules.php?module=admin&amp;what=updates\">Updates pr&uuml;fen</A> herunter.";
121                 break;
122
123         case "0.2.1": // SQL queries for v0.2.1
124                 $SQLs[] = "DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_admin_menu WHERE what='config_bonus' LIMIT 1";
125                 $SQLs[] = "INSERT INTO "._MYSQL_PREFIX."_admin_menu VALUES (NULL,'setup','config_bonus','Bonus-{!POINTS!}',8,'Richten Sie Bonus-{!POINTS!} ein, die beim x&#39;ten Klick auf die Mail verbucht werden sollen. Beispiele: Der 1. Klick sollte mehr {!POINTS!} zus&auml;tzlich bekommen, als der 10. Klick.')";
126                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD login_bonus DOUBLE(20,3) NOT NULL DEFAULT '10.000'";
127                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD turbo_bonus DOUBLE(20,3) NOT NULL DEFAULT '100.000'";
128                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD login_timeout BIGINT(20) UNSIGNED NOT NULL DEFAULT '86400'";
129                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD turbo_rates VARCHAR(255) NOT NULL DEFAULT '50;20;10'";
130                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD bonus_ranks TINYINT(3) UNSIGNED NOT NULL DEFAULT '10'";
131                 // Use actual month for this update
132                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_data ADD login_bonus DOUBLE(20,3) NOT NULL DEFAULT '0.000'";
133                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_data ADD turbo_bonus DOUBLE(20,3) NOT NULL DEFAULT '0.000'";
134                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_stats ADD bonus_stats ENUM('Y','N') NOT NULL DEFAULT 'N'";
135                 $SQLs[] = "UPDATE "._MYSQL_PREFIX."_extensions SET ext_has_css='Y' WHERE ext_name='bonus' AND ext_has_css='N' LIMIT 1";
136
137                 // Update notes (these will be set as task text!)
138                 $UPDATE_NOTES = "Login-Bonus und Turbo-Klick-Bonus intergriert.";
139                 break;
140
141         case "0.2.2": // SQL queries for v0.2.2
142                 $SQLs[] = "DROP TABLE IF EXISTS "._MYSQL_PREFIX."_bonus_turbo";
143                 $SQLs[] = "CREATE TABLE "._MYSQL_PREFIX."_bonus_turbo (
144 id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
145 userid BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
146 mail_id BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
147 bonus_id BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
148 level BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
149 points DOUBLE(20,3) NOT NULL DEFAULT '0.000',
150 timemark VARCHAR(32) NOT NULL DEFAULT '0',
151 PRIMARY KEY(id),
152 KEY mail_id (mail_id),
153 KEY bonus_id (bonus_id),
154 KEY userid (userid)
155 ) TYPE=MyISAM";
156
157                 // Update notes (these will be set as task text!)
158                 $UPDATE_NOTES = "Turbo-Bonus wird in Tabelle gez&auml;hlt f&uuml;r Anzeige, wer alles bereits geklickt hat und welchen Platz er gemacht hat.";
159                 break;
160
161         case "0.2.3": // SQL queries for v0.2.3
162                 $SQLs[] = "DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_member_menu WHERE what='bonus' LIMIT 1";
163                 $SQLs[] = "INSERT INTO "._MYSQL_PREFIX."_member_menu VALUES (NULL,'main','bonus','Aktiv-Rallye',7,'Y','Y','', 0)";
164
165                 // Update notes (these will be set as task text!)
166                 $UPDATE_NOTES = "Aktiv-Rallye mit Klick-Verg&uuml;tung hinzugef&uuml;gt.";
167                 break;
168
169         case "0.2.4": // SQL queries for v0.2.4
170                 // Update notes (these will be set as task text!)
171                 $UPDATE_NOTES = "Wegen des Theme-Supportes hat sich die URL zur CSS-Datei ge&auml;ndert.";
172                 break;
173
174         case "0.2.5": // SQL queries for v0.2.5
175                 $SQLs[] = "DROP TABLE IF EXISTS "._MYSQL_PREFIX."_bonus_urls";
176                 $SQLs[] = "DROP TABLE IF EXISTS "._MYSQL_PREFIX."_bonus_customer";
177
178                 // Update notes (these will be set as task text!)
179                 $UPDATE_NOTES = "Tabellen <U>"._MYSQL_PREFIX."_bonus_urls</U> und <U>"._MYSQL_PREFIX."_bonus_customer</U> entfernt, da dies bald von der Erweiterung <U>paidlinks</U> erledigt wird.";
180                 break;
181
182         case "0.2.6": // SQL queries for v0.2.6
183                 // Update notes (these will be set as task text!)
184                 $UPDATE_NOTES = "Fehler beseitigt, wenn error_reporting=E_ALL gesetzt ist.";
185                 break;
186
187         case "0.2.7": // SQL queries for v0.2.7
188                 // Update notes (these will be set as task text!)
189                 $UPDATE_NOTES = "Turbo-Bonus klappt wieder (dies sind {!POINTS!} die an die schnellsten Klicker verg&uuml;tet werden!)";
190                 break;
191
192         case "0.2.8": // SQL queries for v0.2.8
193                 $SQLs[] = "UPDATE "._MYSQL_PREFIX."_bonus SET timestamp='0' WHERE timestamp='0000000000'";
194                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_bonus_turbo CHANGE points points DOUBLE(22,5) NOT NULL DEFAULT '0.00000'";
195                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config CHANGE turbo_bonus turbo_bonus DOUBLE(22,5) NOT NULL DEFAULT '0.00000'";
196                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config CHANGE login_bonus login_bonus DOUBLE(22,5) NOT NULL DEFAULT '0.00000'";
197                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_data CHANGE turbo_bonus turbo_bonus DOUBLE(22,5) NOT NULL DEFAULT '0.00000'";
198                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_data CHANGE login_bonus login_bonus DOUBLE(22,5) NOT NULL DEFAULT '0.00000'";
199
200                 // Update notes (these will be set as task text!)
201                 $UPDATE_NOTES = "5 Nachkommastellen implementiert";
202                 break;
203
204         case "0.2.9": // SQL queries for v0.2.9
205                 // Update notes (these will be set as task text!)
206                 $UPDATE_NOTES = "Problem mit Speicherung der Einstellungen beseitigt.";
207                 break;
208
209         case "0.3.0": // SQL queries for v0.3.0
210                 // Update notes (these will be set as task text!)
211                 $UPDATE_NOTES = "Men&uuml;punkte im Gast-/Mitgliedsbereich k&ouml;nnen nicht mehr aufgerufen werden, wenn die Erweiterung deaktiviert ist.";
212                 break;
213
214         case "0.3.1": // SQL queries for v0.3.1
215                 // Update notes (these will be set as task text!)
216                 $UPDATE_NOTES = "Sicherheitsupdate am Script <U>show_bonus.php</U> durchgef&uuml;hrt.";
217                 break;
218
219         case "0.3.2": // SQL queries for v0.3.2
220                 // Update notes (these will be set as task text!)
221                 $UPDATE_NOTES = "Design &quot;Solid-Business&quot; eingebaut.";
222                 break;
223
224         case "0.3.3": // SQL queries for v0.3.3
225                 // Update notes (these will be set as task text!)
226                 $UPDATE_NOTES = "Seit <A href=\"#\">Patch 340</A> &uuml;berfl&uuml;ssige HTML-Tags entfernt.";
227                 break;
228
229         case "0.3.4": // SQL queries for v0.3.4
230                 $SQLs[] = "INSERT INTO "._MYSQL_PREFIX."_admin_menu (`action`,`what`,`title`,`descr`,`sort`) VALUES ('user','list_bonus','Aktiv-Rallye-Teilnehmer','Listet alle Mitglieder auf, die einen Aktiv-Bonus haben und zeigt die derzeit m&ouml;glichen Gewinner an.', 10)";
231
232                 // Update notes (these will be set as task text!)
233                 $UPDATE_NOTES = "Link <U>Aktiv-Rallye-Teilnehmer</U> hinzugef&uuml;gt, inklusive manuelle Vorbereitung der Verg&uuml;tung.";
234                 break;
235
236         case "0.3.5": // SQL queries for v0.3.5
237                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD bonus_mode ENUM('UID','JACKPOT','ADD') NOT NULL DEFAULT 'ADD'";
238                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD bonus_uid BIGINT(20) UNSIGNED NOT NULL DEFAULT '0'";
239
240                 // Update notes (these will be set as task text!)
241                 $UPDATE_NOTES = "Der Login-Bonus Aktiv-Bonus (= Klick-Bonus) k&ouml;nnen nun zuerst von einem Mitgliederaccount (das sollte Ihres sein!), vom Jackpot abgezogen oder einfach dazuadiert werden.";
242                 break;
243
244         case "0.3.6": // SQL queries for v0.3.6
245                 // Update notes (these will be set as task text!)
246                 $UPDATE_NOTES = "In der Admin-Liste werden nur aktive Mitglieder gelistet und zudem die sp&auml;teste Zeitmarke f&uuml;r die Auswertung angezeigt.";
247                 break;
248
249         case "0.3.7": // SQL queries for v0.3.7
250                 // Update notes (these will be set as task text!)
251                 $UPDATE_NOTES = "Mitglieder-Account auw&auml;hlbar, von dem die {!POINTS!} f&uuml;r den Aktiv- und Login-Bonus abgebucht werden.";
252                 break;
253
254         case "0.3.8": // SQL queries for v0.3.8
255                 // Update notes (these will be set as task text!)
256                 $UPDATE_NOTES = "Ausgabe des generierten HTML-Codes nach <U>inc/footer.php</U> verlagert.";
257                 break;
258
259         case "0.3.9": // SQL queries for v0.3.9
260                 // Update notes (these will be set as task text!)
261                 $UPDATE_NOTES = "Fehlende Variablen gefixt.";
262                 break;
263
264         case "0.4.0": // SQL queries for v0.4.0
265                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD bonus_timeout BIGINT(20) UNSIGNED NOT NULL DEFAULT '".($_CONFIG['one_day']*7)."'";
266                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD bonus_lines BIGINT(20) UNSIGNED NOT NULL DEFAULT '10'";
267
268                 // Update notes (these will be set as task text!)
269                 $UPDATE_NOTES = "Automatisches L&ouml;schen von Turbo-Bonus-Zeilen ("._MYSQL_PREFIX."_bonus_turbo) und begrenzte Anzahl von Eintr&auml;gen hinzugef&uuml;gt.";
270                 break;
271
272         case "0.4.1": // SQL queries for v0.4.1
273                 // Update notes (these will be set as task text!)
274                 $UPDATE_NOTES = "Verg&uuml;tung des Aktiv-Bonus repariert.";
275                 break;
276
277         case "0.4.2": // SQL queries for v0.4.2
278                 // Update notes (these will be set as task text!)
279                 $UPDATE_NOTES = "Admin-Bereich / Aktiv-Teilnehmer auflisten: Problem mit Konstante __AUTOPURGE_TIMEOUT und das Template <U>admin_list_bonus.tpl</U> korregiert.";
280                 break;
281
282         case "0.4.3": // SQL queries for v0.4.3
283                 // Update notes (these will be set as task text!)
284                 $UPDATE_NOTES = "Verbesserung des Versandes von  HTML-Bonus-Mails.";
285                 break;
286
287         case "0.4.4": // SQL queries for v0.4.4
288                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD bonus_order DOUBLE(20,5) UNSIGNED NOT NULL DEFAULT '15.00000'";
289                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD bonus_ref DOUBLE(20,5) UNSIGNED NOT NULL DEFAULT '100.00000'";
290                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD bonus_stats DOUBLE(20,5) UNSIGNED NOT NULL DEFAULT '5.00000'";
291                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD bonus_active ENUM('Y','N') NOT NULL DEFAULT 'Y'";
292                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_data ADD bonus_order DOUBLE(20,5) UNSIGNED NOT NULL DEFAULT '0.00000'";
293                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_data ADD bonus_ref DOUBLE(20,5) UNSIGNED NOT NULL DEFAULT '0.00000'";
294                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_data ADD bonus_stats DOUBLE(20,5) UNSIGNED NOT NULL DEFAULT '0.00000'";
295                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_stats ADD is_stats ENUM('Y','N') NOT NULL DEFAULT 'N'";
296
297                 // Update notes (these will be set as task text!)
298                 $UPDATE_NOTES = "Bonus-{!POINTS!} f&uuml;r: Mailbestellung, Referal-Werbung (bei Best. der EMail-Adresse) und wenn 100% Klickrate jeder Mailbuchung erreicht wurde.<br />Template <u>admin_config_bonus_pro.tpl</u> ist &uuml;berfl&uuml;ssig geworden. Bitte l&ouml;schen Sie dies!<br />Eingestellte Bonus-{!POINTS!} f&uuml;r Rank 2 war um eins verschoben.";
299                 break;
300
301         case "0.4.5": // SQL queries for v0.4.5
302                 // Update notes (these will be set as task text!)
303                 $UPDATE_NOTES = "Abzug vom Bonus-Account integriert.";
304                 break;
305
306         case "0.4.6": // SQL queries for v0.4.6
307                 // Update notes (these will be set as task text!)
308                 $UPDATE_NOTES = "Rank 2 bekommt nun auch seine {!POINTS!} gutgeschrieben.";
309                 break;
310
311         case "0.4.7": // SQL queries for v0.4.7
312                 $SQLs[] = "UPDATE "._MYSQL_PREFIX."_user_data SET login_bonus=0, turbo_bonus=0,bonus_ref=0,bonus_order=0,bonus_stats=0";
313
314                 // Update notes (these will be set as task text!)
315                 $UPDATE_NOTES = "Die Aktiv-Rallye wurde nicht auf 0 {!POINTS!} gesetzt. Dieser Fehler ist nun behoben. Allerdings ist mit diesem Update auch die Aktiv-Rallye zur&uuml;ckgesetzt worden.";
316                 break;
317
318         case "0.4.8": // SQL queries for v0.4.8
319                 // Update notes (these will be set as task text!)
320                 $UPDATE_NOTES = "In <U>inc/monthly_bonus.php</U> fehlte ein Punkt; Fehler besseitigt.";
321                 break;
322
323         case "0.4.9": // SQL queries for v0.4.9
324                 // Update notes (these will be set as task text!)
325                 $UPDATE_NOTES = "Login-Bonus wird mit angezeigt.";
326                 break;
327
328         case "0.5.0": // SQL queries for v0.5.0
329                 // Update notes (these will be set as task text!)
330                 $UPDATE_NOTES = "Problem mit <STRONG>is_hundred</STRONG> beim t&auml;glichen Reset beseitigt.";
331                 break;
332
333         case "0.5.1": // SQL queries for v0.5.1
334                 // Update notes (these will be set as task text!)
335                 $UPDATE_NOTES = "Problem mit <STRONG>bonus_stats / Zeile 31</STRONG> beim t&auml;glichen Reset beseitigt.";
336                 break;
337
338         case "0.5.2": // SQL queries for v0.5.2
339                 // Update notes (these will be set as task text!)
340                 $UPDATE_NOTES = "W&ouml;rter <STRONG>Mailtausch</STRONG>, <STRONG>Mailtausches</STRONG> und <STRONG>Mailtauscher</STRONG> sind austauschbar.";
341                 break;
342
343         case "0.5.3": // SQL queries for v0.5.3
344                 // Update notes (these will be set as task text!)
345                 $UPDATE_NOTES = "Speichern der Aktiv-{!POINTS!} f&uuml;r Platz 2 bis <STRONG>x</STRONG> korregiert.";
346                 break;
347
348         case "0.5.4": // SQL queries for v0.5.4
349                 // Update notes (these will be set as task text!)
350                 $UPDATE_NOTES = "Variablenfehler in <STRONG>inc/monthly_bonus.php</STRONG> behoben.";
351                 break;
352
353         case "0.5.5": // SQL queries for v0.5.5
354                 // Update notes (these will be set as task text!)
355                 $UPDATE_NOTES = "Weitere Variablenfehler in <STRONG>inc/monthly_bonus.php</STRONG> haben daf&uuml;r gesorgt, dass die monatliche Aktiv-Rallye nicht ausgesch&uuml;ttet wurde. Mit diesem Update wurde die Aussch&uuml;ttung initialisiert. Ihre Mitglieder bekommen voraussichtlicht nichts doppelt verg&uuml;tet.";
356                 break;
357
358         case "0.5.6": // SQL queries for v0.5.6
359                 // Get current month
360                 $curr = date("m", time());
361                 if (strlen($curr) == 1) $curr = "0".$curr;
362                 if ($curr == "00") $curr = "12";
363
364                 // Generate timemark...
365                 $mark = mktime(0, 0, 0, $curr, 1, date('Y', time()));
366
367                 // Update accounts which are not active last months
368                 $SQLs[] = "UPDATE "._MYSQL_PREFIX."_user_data
369 SET turbo_bonus=0, login_bonus=0, bonus_order=0, bonus_stats=0, bonus_ref=0
370 WHERE last_online < ".$mark." ORDER BY userid";
371
372                 // Update notes (these will be set as task text!)
373                 $UPDATE_NOTES = "Ein weiterer Scriptfehler hat nur die Gewinner aus der Aktiv-Rallye genommen. Die anderen Mitglieder sind somit &quot;nach oben gerutsch&quot;.";
374                 break;
375
376         case "0.5.7": // SQL queries for v0.5.7
377                 break;
378
379         case "0.5.8": // SQL queries for v0.5.8
380                 // Update notes (these will be set as task text!)
381                 $UPDATE_NOTES = "Problem mit <STRONG>is_hundred</STRONG> beim t&auml;glichen Reset endlich beseitigt.";
382                 break;
383
384         case "0.5.9": // SQL queries for v0.5.9
385                 $UPDATE_NOTES = "Fehlermeldung <STRONG>/home/verzeichnis/html/inc/stats_bonus.php (42):You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '' WHERE userid='59' LIMIT 1' at line 1</STRONG> beseitigt.";
386                 break;
387
388         case "0.6.0": // SQL queries for v0.6.0
389                 $UPDATE_NOTES = "SQL-Fehlermeldung in <STRONG>inc/monthly_bonus.php</STRONG> beseitigt.";
390                 break;
391
392         case "0.6.1": // SQL queries for v0.6.1
393                 $UPDATE_NOTES = "Versand von Bonus-Mails repariert.";
394                 break;
395
396         case "0.6.2": // SQL queries for v0.6.2
397                 $UPDATE_NOTES = "L&ouml;schen von bereits gel&ouml;schten Mails wird nun abgelehnt.";
398                 break;
399
400         case "0.6.3": // SQL queries for v0.6.3
401                 $UPDATE_NOTES = "Abspeichern von Einstellungen repariert.";
402                 break;
403
404         case "0.6.4": // SQL queries for v0.6.4
405                 $SQLs[] = "UPDATE "._MYSQL_PREFIX."_admin_menu SET title='Aktiv-Rallye' WHERE what='config_bonus' LIMIT 1";
406
407                 // Update notes (these will be set as task text!)
408                 $UPDATE_NOTES = "Der Men&uuml;punkt &quot;Bonus-{!POINTS!}&quot; unter Einstellungen wird nach &quot;Aktiv-Rallye umbenannt. Und die Aktiv-Rallye konnte aufgrund eines Template-Fehlers nicht gespeichert werden.";
409                 break;
410
411         case "0.6.5": // SQL queries for v0.6.5
412                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_stats ADD bonus_stats ENUM('Y','N') NOT NULL DEFAULT 'N'";
413
414                 // Update notes (these will be set as task text!)
415                 $UPDATE_NOTES = "Fehler mit bonus_stats beseitigt.";
416                 break;
417
418         case "0.6.6": // SQL queries for v0.6.6
419                 $UPDATE_NOTES = "Template-Fehler beseitigt im Admin-Bereich.";
420                 break;
421
422         case "0.6.7": // SQL queries for v0.6.7
423                 $UPDATE_NOTES = "Vorbereitung auf die neue Mediendaten v0.0.4.";
424                 break;
425
426         case "0.6.8": // SQL queries for v0.6.8
427                 $SQLs[] = "UPDATE "._MYSQL_PREFIX."_bonus SET data_type='SEND' WHERE data_type != 'SEND' AND data_type != 'DELETED' AND receivers='' AND target_send='0'";
428
429                 // Update notes (these will be set as task text!)
430                 $UPDATE_NOTES = "Eingegebene Anzahl auszusendener Bonus-Mails wurde bei der Empf&auml;nderauswahl nicht ber&uuml;cksichtigt. Zudem wird jetzt das eingestellte Auswahlverfahren mitber&uuml;cksichtigt.";
431                 break;
432
433         case "0.6.9": // SQL queries for v0.6.9
434                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD bonus_order_yn ENUM('Y','N') NOT NULL DEFAULT 'N'";
435                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD bonus_ref_yn ENUM('Y','N') NOT NULL DEFAULT 'N'";
436                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD bonus_stats_yn ENUM('Y','N') NOT NULL DEFAULT 'N'";
437                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD bonus_login_yn ENUM('Y','N') NOT NULL DEFAULT 'N'";
438                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD bonus_click_yn ENUM('Y','N') NOT NULL DEFAULT 'Y'";
439
440                 // Update notes (these will be set as task text!)
441                 $UPDATE_NOTES = "Es k&ouml;nnen nun auch die folgenden Verg&uuml;tungen bei der Auswertung der monatlichen Aktiv-Rallye mit ber&uuml;cksichtigt werden: Mailbest&auml;tigung (war vorher schon), Login-, Mailbuchung, Referal und Statistik-Bonus (100% Klickrate erreicht).";
442                 break;
443
444         case "0.7.0": // SQL queries for v0.7.0
445                 $UPDATE_NOTES = "Zuschaltung von weiteren Bonis wird jetzt auch bei der Auflistung der mitmachenden Mitglieder im Mitgliedsbereich beachtet.";
446                 break;
447
448         case "0.7.1": // SQL queries for v0.7.1
449                 $UPDATE_NOTES = "Im Adminbereich wird nun ebenfalls die Zuschaltung von weiteren Bonis ber&uuml;cksichtigt. Zudem wird der Gesamtbonus an alle Mitglieder errechnet und auch angezeigt.";
450                 break;
451
452         case "0.7.2": // SQL queries for v0.7.2
453                 $UPDATE_NOTES = "Die Verg&uuml;tung der erreichten 100%-Klickrate war noch wegen Programmierungen am Script auskommentiert. Sorry!";
454                 break;
455
456         case "0.7.3": // SQL queries for v0.7.3
457                 $UPDATE_NOTES = "Gutgeschriebene Bonus-{!POINTS!} werden nach Deaktivierung der Aktiv-Rallye gel&ouml;scht.";
458                 break;
459
460         case "0.7.4": // SQL queries for v0.7.4
461                 $UPDATE_NOTES = "Rechtlichen Hinweis im Mitgliedsbereich vergessen. (<STRONG>member_bonus.tpl</STRONG>)";
462                 break;
463
464         case "0.7.5": // SQL queries for v0.7.5
465                 $UPDATE_NOTES = "Im Admin-Bereich Hinweis hinzugef&uuml;gt, wenn Aktiv-Rallye inaktiv ist. Bitte Script inc/monthly_bonus.php l&ouml;schen!";
466                 break;
467
468         case "0.7.6": // SQL queries for v0.7.6
469                 $UPDATE_NOTES = "Auswahlmechanismus der Gewinner repariert. Trotz Hinzuschalten von weiteren zu ber&uuml;cksichtigen Boni wurden diese bei der Sortierung der User-IDs nicht ber&uuml;cksichtig.";
470                 break;
471
472         case "0.7.7": // SQL queries for v0.7.7
473                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD bonus_en_notify ENUM('Y','N') NOT NULL DEFAULT 'N'";
474                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD bonus_di_notify ENUM('Y','N') NOT NULL DEFAULT 'N'";
475                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD bonus_new_mem_notify ENUM('Y','N') NOT NULL DEFAULT 'N'";
476                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD bonus_notify_points DOUBLE(20,5) UNSIGNED NOT NULL DEFAULT '0.00000'";
477                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD bonus_notify_wait BIGINT(20) UNSIGNED NOT NULL DEFAULT '30'";
478                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_data ADD bonus_ral_notify BIGINT(20) UNSIGNED NOT NULL DEFAULT '0'";
479                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_data ADD bonus_ral_en_notify BIGINT(20) UNSIGNED NOT NULL DEFAULT '0'";
480                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_data ADD bonus_ral_di_notify BIGINT(20) UNSIGNED NOT NULL DEFAULT '0'";
481
482                 // Update notes (these will be set as task text!)
483                 $UPDATE_NOTES = "Optionale automatische Benachrichtigung &uuml;ber aktivierte und/oder deaktivierte Aktiv-Rallye einstellbar.";
484                 break;
485
486         case "0.7.8": // SQL queries for v0.7.8
487                 // Update notes (these will be set as task text!)
488                 $UPDATE_NOTES = "Fehler im t&auml;glichen Reset beseitigt.";
489                 break;
490
491         case "0.7.9": // SQL queries for v0.7.9
492                 $UPDATE_NOTES = "Dollarzeichen fehlte in <STRONG>inc/reset/reset_bonus.php</STRONG>, Zeile 39";
493                 break;
494
495         case "0.8.0": // SQL queries for v0.8.0
496                 $UPDATE_NOTES = "De-/Aktivieren des mit dieser Erweiterung verkn&uuml;pften Modules eingebunden.";
497                 break;
498
499         case "0.8.1": // SQL queries for v0.8.1
500                 $UPDATE_NOTES = "Bei ".POINTS."-Gleichstand wird als n&auml;chstes nach wer als letztes Online war umsortiert.";
501                 break;
502
503         case "0.8.2": // SQL queries for v0.8.2
504                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD bonus_include_own ENUM('Y','N') NOT NULL DEFAULT 'N'";
505                 $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_bonus ADD is_notify ENUM('Y','N') NOT NULL DEFAULT 'N'";
506
507                 // Update notes (these will be set as task text!)
508                 $UPDATE_NOTES = "Eigene User-ID von Aktiv-Rallye ausschliessbar. Benachrichtigungsmails sind von Aktiv-Rallye ausgeschlossen.";
509                 break;
510
511         case "0.8.3": // SQL queries for v0.8.3
512                 $SQLs[] = "UPDATE "._MYSQL_PREFIX."_member_menu SET action='rals', sort='2', title='Aktiv-Rallye' WHERE what='bonus' LIMIT 1";
513
514                 // Update notes (these will be set as task text!)
515                 $UPDATE_NOTES = "Mitgliedsmen&uuml; komplett umgebaut.";
516                 break;
517
518         case "0.8.4": // SQL queries for v0.8.4
519                 $UPDATE_NOTES = "Ladeproblem bei nicht installierter Erweiterung <strong>cache</strong> gefixt.";
520                 break;
521
522         case "0.8.5": // SQL queries for v0.8.5
523                 $UPDATE_NOTES = "CSS-Klassenname gefixt in Templates.";
524                 break;
525
526         case "0.8.6": // SQL queries for v0.8.6
527                 $UPDATE_NOTES = "Fehlerhinweis bei deaktivierter Erweiterung verbessert.";
528                 break;
529
530         case "0.8.7": // SQL queries for v0.8.7
531                 $SQLs[] = "INSERT INTO "._MYSQL_PREFIX."_admin_menu (`action`,`what`,`title`,`descr`,`sort`) VALUES ('email','list_notifications','Benachrichtigungen','Listet alle an die Mitglieder ausgesandten Benachrichtigungen auf.', 10)";
532
533                 // Update notes
534                 $UPDATE_NOTES = "Benachrichtigungsmails f&uuml;r z.B. Bettel- oder Aktiv-Rallye werden nun angezeigt.";
535                 break;
536         }
537         break;
538
539 default: // Do stuff when extension is loaded
540         if (isBooleanConstantAndTrue('__DAILY_RESET') && (!DEBUG_MODE) && ($CSS != 1)) {
541                 // Daily reset was run so let's check if active rallye is activated
542                 if ($_CONFIG['bonus_active'] == "Y") {
543                         // Run active rallye
544                         if($_CONFIG['bonus_stats'] > 0) $INC_POOL[] = sprintf("%sinc/stats_bonus.php", PATH);
545                         $INC_POOL[] = sprintf("%sinc/monthly/monthly_bonus.php", PATH);
546                 } else {
547                         // Reset points
548                         $INC_POOL[] = sprintf("%sinc/reset/reset_bonus.php", PATH);
549                 }
550         }
551
552         // Check for bonus rallye is active and send mails out
553         if (($_CONFIG['bonus_active'] == "Y") && ($_CONFIG['bonus_new_mem_notify'] == "Y")) {
554                 // Include file for sending out mails
555                 $INC_POOL[] = sprintf("%sinc/mails/bonus_mails.php", PATH);
556         }
557         break;
558 }
559
560 // Language file prefix
561 $EXT_LANG_PREFIX = "bonus";
562
563 //
564 ?>