ext-autopurge verschoben."); break; case '0.0.3': // SQL queries for v0.0.3 addConfigAddSql('points_word', "VARCHAR(255) NOT NULL DEFAULT '{OPEN_LANGUAGE}DEFAULT_POINTS{CLOSE_LANGUAGE}'"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Das Wort "Punkte" kann nun per Datenbank geändert werden. Damit können anstelle des Wortes Punkte auch Klammlose, Wernis, Primera und auch € geschrieben werden."); break; case '0.0.4': // SQL queries for v0.0.4 addConfigAddSql('mails_page', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 10'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Anzahl Mails pro Seite in EMail-Details ansehen und EMail-Archiv hinzugefügt."); break; case '0.0.5': // SQL queries for v0.0.5 addConfigAddSql('index_home', "VARCHAR(255) NOT NULL DEFAULT 'welcome'"); addAdminMenuSql('setup','config_home','Home-Seite festlegen','Stellen Sie hier ein, welcher Menüpunkt (what-welcome ist Standard) als Einstiegspunkt in das Menüsystem genutzt werden soll.', 5); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Die what-welcome.php ist derzeit die "Home"-Seite (Eingangsseite). Dies kann nun per Datenbank geändert werden."); break; case '0.0.6': // SQL queries for v0.0.6 addExtensionAddTableColumnSql('extensions', 'ext_has_css', "ENUM('Y','N') NOT NULL DEFAULT 'Y'"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Es können nun SQL-Updates von einander abhängig gemacht werden und die CSS-Datei kann per Admin-Bereich (wegen Debuggings) ein- bzw. ausgeschaltet werden."); break; case '0.0.7': // SQL queries for v0.0.7 addConfigAddSql('verbose_sql', "ENUM('Y','N') NOT NULL DEFAULT 'N'"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Die SQL-Anweisungen werden bei eingeschalteter Verbose-Funktion detailiert angezeigt."); break; case '0.0.8': // SQL queries for v0.0.8 addConfigAddSql('menu_blur_spacer', "VARCHAR(255) NOT NULL DEFAULT ' · '"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Nette Mouse-Hover-Effekte eingebaut (Anleitung MENUE_HOVER.txt zum Patchen der general.css bitte lesen!)"); break; case '0.0.9': // SQL queries for v0.0.9 addAdminMenuSql('email','list_unconfirmed','Unbest. Mails auflisten','Schauen Sie sich hier unbestätigte Maillinks an. Bitte diesen Link nur über dem EMail-Archiv oder EMail-Details aufrufen, direkt aufgerufen bekommen Sie eine Fehlermeldung.', 8); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Unbestätigte Maillinks können unter Email-Management -> Unbest. Mails auflisten aufgelistet werden."); break; case '0.1.0': // SQL queries for v0.1.0 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Soll der einmalige Ref-Bonus über das Referral-System (also alle oberen Refs bekommen auch etwas davon ab) oder direkt dem Werber aufgebucht werden?"); break; case '0.1.1': // SQL queries for v0.1.1 addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_admin_menu` SET `title`='Home-/Eingangsseite', descr='Stellen Sie hier ein, welcher Menüpunkt (what-welcome ist Standard) als Einstiegspunkt in das Menüsystem genutzt werden soll und wie die automatische Weiterleitung in der Eingangsseite funktionieren soll.' WHERE `what`='config_home' LIMIT 1"); addConfigAddSql('index_delay', 'TINYINT(3) NOT NULL DEFAULT 0'); addConfigAddSql('index_cookie', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT ' . (getOneDay() * 365)); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Sie können nun hier die Verzögerungszeit in der Eingangsseite einstellen."); break; case '0.1.2': // SQL queries for v0.1.2 addAdminMenuSql('setup','config_refid','Standard-Ref-Id','Stellen Sie hier die Mitglieds-Id ein, die genommen werden soll, wenn der Gast n icht per Referral-Link Ihren {?mt_word?} aufgerufen hat.', 7); addConfigAddSql('def_refid', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 0'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Standard Referral-Id kann per Admin-Bereich eingestellt werden (war vorher nur in modules.php und index.php direkt eingebbar.)"); break; case '0.1.3': // SQL queries for v0.1.3 addConfigAddSql('refid_target', "ENUM('register','index') NOT NULL DEFAULT 'register'"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Auf welche Seite soll der Ref-Link zeigen? Eingangsseite oder Anmeldeformular?"); break; case '0.1.4': // SQL queries for v0.1.4 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Ungültiges Update (nach ext-theme.php verschoben!)."); break; case '0.1.5': // SQL queries for v0.1.5 addExtensionDropTableColumnSql('extensions', 'ext_has_admin'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Spalte ext_has_admin aus der Tabelle {?_MYSQL_PREFIX?}_extensions entfernt, da sie keinen Sinn mehr macht."); break; case '0.1.6': // SQL queries for v0.1.6 addConfigAddSql('enable_title_deco', "ENUM('Y','N') NOT NULL DEFAULT 'Y'"); addConfigAddSql('title_left', "VARCHAR(10) NOT NULL DEFAULT '[--'"); addConfigAddSql('title_middle', "VARCHAR(10) NOT NULL DEFAULT '-'"); addConfigAddSql('title_right', "VARCHAR(10) NOT NULL DEFAULT '--]'"); addConfigAddSql('enable_mod_title', "ENUM('Y','N') NOT NULL DEFAULT 'Y'"); addConfigAddSql('enable_what_title', "ENUM('Y','N') NOT NULL DEFAULT 'Y'"); addAdminMenuSql('setup','config_title','Seitentitel ändern','De-/aktivieren Sie hier die Dekorationen, sowie Modul-Titel und what-Titel im Seitentitel.', 8); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Dekorationen des Seitentiteles lassen sich ein- und ausschalten und selber definieren; Modul-Titel und Titel der what-Dateien kann hinzugefügt werden."); break; case '0.1.7': // SQL queries for v0.1.7 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Fehler beseitigt, wenn error_reporting=E_ALL gesetzt ist."); break; case '0.1.8': // SQL queries for v0.1.8 // Update notes (these will be set as task text!) setExtensionUpdateNotes("mad_count und last_mad werden nun aus der Datenbank geladen"); break; case '0.1.9': // SQL queries for v0.1.9 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Fehler beseitigt, wenn error_reporting=E_ALL gesetzt ist."); break; case '0.2.0': // SQL queries for v0.2.0 addExtensionChangeTableColumnSql('jackpot', 'points', 'points', 'FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000'); addExtensionChangeTableColumnSql('payments', 'payment', 'payment', 'FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000'); addExtensionChangeTableColumnSql('payments', 'price', 'price', 'FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("5 Nachkommastellen implementiert"); break; case '0.2.1': // SQL queries for v0.2.1 addConfigAddSql('css_php', "ENUM('DIRECT','FILE','INLINE') NOT NULL DEFAULT 'FILE'"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Ausgabe der CSS-Dateien entweder per css.php oder sie sind direkt eingebunden."); break; case '0.2.2': // SQL queries for v0.2.2 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Erweiterung bleibt wegen integrierten Schalters immer aktiv."); break; case '0.2.3': // SQL queries for v0.2.3 addConfigAddSql('guest_menu', "ENUM('Y','N') NOT NULL DEFAULT 'Y'"); addConfigAddSql('member_menu', "ENUM('Y','N') NOT NULL DEFAULT 'Y'"); addConfigAddSql('youre_here', "ENUM('Y','N') NOT NULL DEFAULT 'Y'"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Gast- und Mitgliedsmenüs lassen sich getrennt voneinander abschalten."); break; case '0.2.4': // SQL queries for v0.2.4 // PNG image is the default $auto_type = 'png'; // Is the JPEG file found and required PHP function there? if ((!isFileReadable(getPath() . 'theme/' . getCurrentTheme() . '/images/code_bg.png')) || (!function_exists('imagecreatefrompng'))) { // Switch to JPEG format because PNG is not available $auto_type = 'jpg'; } // END - if addConfigAddSql('img_type', "ENUM('jpg','png') NOT NULL DEFAULT '" . $auto_type . "'"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Generierung des Mailbestätigungscodes hängt davon ab, ob die PHP-Funktion imagecreatefromjpeg() und das JPEG-Bild vorhanden sind oder nicht."); break; case '0.2.5': // SQL queries for v0.2.5 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Spalten max_mails und receive_mails auf BIGINT(20) gesetzt."); break; case '0.2.6': // SQL queries for v0.2.6 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Verschoben nach ext-user."); break; case '0.2.7': // SQL queries for v0.2.7 addConfigAddSql('stats_limit', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 10'); addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_admin_menu` SET `what`='config_stats' WHERE `what`='stats' LIMIT 1"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("
  1. Das Mitglied kann das derzeitige Design in sein Profil abspeichern.
  2. Mitgliederstatistik mit Seitennavigation.
"); break; case '0.2.8': // SQL queries for v0.2.8 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Nicht mehr gültiges Update."); break; case '0.2.9': // SQL queries for v0.2.9 addConfigAddSql('mt_word', "VARCHAR(255) NOT NULL DEFAULT 'Mailtausch'"); addConfigAddSql('mt_word2', "VARCHAR(255) NOT NULL DEFAULT 'Mailtausches'"); addConfigAddSql('mt_word3', "VARCHAR(255) NOT NULL DEFAULT 'Mailtauscher'"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Wörter {?mt_word?}, {?mt_word2?} und {?mt_word3?} sind austauschbar."); break; case '0.3.0': // SQL queries for v0.3.0 addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_admin_menu` SET `title`='{OPEN_CONFIG}POINTS{CLOSE_CONFIG}/Referral-Ebenen' WHERE `what`='config_points' LIMIT 1"); addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_admin_menu` SET `title`='Mailvergütungen...' WHERE `what`='payments' LIMIT 1"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Zwei Menüpunkte umbenannt."); break; case '0.3.1': // SQL queries for v0.3.1 addExtensionAddTableUniqueSql('extensions', 'ext_name', '(`ext_name`)'); addExtensionAddTableUniqueSql('admins', 'login', '(`login`)'); addExtensionAddTableIndexSql('refbanner', 'visible', '(`visible`)'); addExtensionAddTableUniqueSql('refdepths', 'level', '(`level`)'); addExtensionAddTableIndexSql('refsystem', 'level', '(`level`)'); addExtensionAddTableIndexSql('pool', 'data_type', '(`data_type`)'); addExtensionAddTableUniqueSql('mod_reg', 'module', '(`module`)'); addExtensionAddTableIndexSql('admin_menu', 'action', '(`action`)'); addExtensionAddTableIndexSql('admin_menu', 'what', '(`what`)'); addExtensionAddTableIndexSql('extensions', 'ext_active', '(`ext_active`)'); addExtensionAddTableIndexSql('guest_menu', 'action', '(`action`)'); addExtensionAddTableIndexSql('guest_menu', 'what', '(`what`)'); addExtensionAddTableIndexSql('guest_menu', 'sort', '(`sort`)'); addExtensionAddTableIndexSql('guest_menu', 'visible', '(`visible`)'); addExtensionAddTableIndexSql('guest_menu', 'locked', '(`locked`)'); addExtensionAddTableIndexSql('member_menu', 'what', '(`what`)'); addExtensionAddTableIndexSql('member_menu', 'sort', '(`sort`)'); addExtensionAddTableIndexSql('member_menu', 'visible', '(`visible`)'); addExtensionAddTableIndexSql('member_menu', 'locked', '(`locked`)'); addExtensionAddTableIndexSql('cats', 'visible', '(`visible`)'); addExtensionAddTableIndexSql('cats', 'sort', '(`sort`)'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Eindeutige Schlüssel (UNIQUE) und normale Schlüssel (INDEX) gesetzt."); break; case '0.3.2': // SQL queries for v0.3.2 // Connection table between the menu system and the "logical area system" addDropTableSql('admin_menu_las'); addCreateTableSql('admin_menu_las', " `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `la_id` VARCHAR(255) NOT NULL DEFAULT '', `la_action` VARCHAR(255) NOT NULL DEFAULT '', `la_what` VARCHAR(255) NOT NULL DEFAULT '', PRIMARY KEY (`id`), INDEX (`la_id`), INDEX (`la_action`), INDEX (`la_what`)", 'Menu system -> LAS'); // All "logical areas" together addDropTableSql('admin_menu_las_data'); addCreateTableSql('admin_menu_las_data', " `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `la_id` VARCHAR(255) NOT NULL DEFAULT '', `la_title` VARCHAR(255) NOT NULL DEFAULT '', `la_posx` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, `la_posy` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, PRIMARY KEY (`id`), UNIQUE INDEX (`la_id`), INDEX (`la_posx`), INDEX (`la_posy`)", 'LAS position and title data'); // Which menu do you like? addConfigAddSql('admin_menu', "ENUM('NEW','OLD') NOT NULL DEFAULT 'OLD'"); // Insert menus addAdminMenuSql('setup', 'config_admin', 'Adminmenü', 'Diverse Einstellungen am Adminmenü vornehmen.', 9); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Logische Bereiche (Logical Areas = LAs) eingeführt. Dadurch wird das immer stärker anwachsende Admin-Menü in grosse Hauptgruppen unterteilt, wodurch ein Auffinden von Menüpunkten verbessert wird."); break; case '0.3.3': // SQL queries for v0.3.3 // Switch of the "intelligent menu sorter" when you want to have a fixed menu structure... addConfigAddSql('admin_menu_sorter', "ENUM('Y','N') NOT NULL DEFAULT 'Y'"); // The statistics table addDropTableSql('admin_las_stats'); addCreateTableSql('admin_las_stats', " `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `admin_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, `type` ENUM('la','action','what') NOT NULL DEFAULT 'what', `clicks` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, PRIMARY KEY (`id`), INDEX (`admin_id`)", 'LAS click data'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Admin-abhängig werden nun Klicks im Admin-Menü gezählt, die zur automatischen Anpassung des Menüs in den logischen Bereichen diennen. Dieses "intelligente Unbauen" können Sie auch ganz abschalten."); break; case '0.3.4': // SQL queries for v0.3.4 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Veraltetes Update (what=list_user&mode=noref)"); break; case '0.3.5': // SQL queries for v0.3.5 // List accounts with no referral addMemberMenuSql('stats', NULL, 'Statistiken', 4); addMemberMenuSql('stats', 'stats2', 'Framekiller-Mails', 2); addMemberMenuSql('extras', NULL, 'Extras', 5); addMemberMenuSql('rals', NULL, 'Rallyes', 6); addMemberMenuSql('account', NULL, 'Ihr Account', 7); addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `action`='stats',`sort`=1,`title`='Klick-Mails' WHERE `what`='stats' LIMIT 1"); addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `action`='extras',`sort`=3 WHERE `what`='reflinks' LIMIT 1"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Mitgliedsmenü komplett umgebaut."); break; case '0.3.6': // SQL queries for v0.3.6 addConfigAddSql('salt_length', 'TINYINT(3) UNSIGNED NOT NULL DEFAULT 10'); addConfigAddSql('pass_scramble', "VARCHAR(255) NOT NULL DEFAULT ''"); addExtensionChangeTableColumnSql('admins', 'password', 'password', "VARCHAR(255) NOT NULL DEFAULT ''"); addConfigAddSql('rand_no', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 0'); addConfigAddSql('file_hash', "VARCHAR(255) NOT NULL DEFAULT ''"); addConfigAddSql('master_salt', "VARCHAR(255) NOT NULL DEFAULT ''"); addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_config` SET `rand_no`=(ROUND(RAND() * 99999) + 100000) WHERE `config`=0 LIMIT 1"); addExtensionAddTableColumnSql('mod_reg', 'has_menu', "ENUM('Y','N') NOT NULL DEFAULT 'N'"); addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_mod_reg` SET `has_menu`='Y' WHERE `module`='admin' OR `module`='index' OR `module`='login' LIMIT 3"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Passwort-System mit Zufallshash erweitert (Schutzt gegen Dictionary-Attacks!)"); break; case '0.3.7': // SQL queries for v0.3.7 setExtensionUpdateNotes("Problem während des Installationsvorganges behoben."); break; case '0.3.8': // SQL queries for v0.3.8 addExtensionChangeTableColumnSql('admin_menu', 'descr', 'descr', 'MEDIUMTEXT NULL'); addExtensionChangeTableColumnSql('pool', 'text', 'text', 'LONGTEXT NOT NULL'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Beschreibungstexte für Admin-Menüs können länger sein. Diverse Fixes."); break; case '0.3.9': // SQL queries for v0.3.9 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Beschreibungstexte für Admin-Menüs können länger sein. Diverse Fixes."); break; case '0.4.0': // SQL queries for v0.4.0 addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_admin_menu` SET `title` = 'Email-Management' WHERE `action` = 'email' AND (`what`='' OR `what` IS NULL) LIMIT 1"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Email-Verwaltung nach Email-Management umbenannt."); break; case '0.4.1': // SQL queries for v0.4.1 addConfigAddSql('show_timings', "ENUM ('Y','N') NOT NULL DEFAULT 'Y'"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Tabellen-Schlüssel neu gesetzt und Parsing-Zeit im Footer eingeblendet."); break; case '0.4.2': // SQL queries for v0.4.2 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Nicht mehr gültiges Update."); break; case '0.4.3': // SQL queries for v0.4.3 addConfigAddSql('proxy_host', "VARCHAR(255) NOT NULL DEFAULT ''"); addConfigAddSql('proxy_port', 'INT(5) UNSIGNED NOT NULL DEFAULT 0'); addConfigAddSql('proxy_username', "VARCHAR(255) NOT NULL DEFAULT ''"); addConfigAddSql('proxy_password', "VARCHAR(255) NOT NULL DEFAULT ''"); addAdminMenuSql('setup','config_proxy','Proxy-Einstellungen','Sollte Ihr Webserver sich hinter einem Proxy befinden, so können Sie Ihren {?mt_word?} so konfigurieren, dass es z.B. Updates, Abfragen von Netzwerkupdates über diesen tätigt.', 15); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Proxy-Einstellungen hinzugefügt."); break; case '0.4.4': // SQL queries for v0.4.4 addExtensionChangeTableColumnSql('admin_menu', 'what', 'what', 'VARCHAR(255) NULL DEFAULT NULL'); addExtensionChangeTableColumnSql('guest_menu', 'what', 'what', 'VARCHAR(255) NULL DEFAULT NULL'); addExtensionChangeTableColumnSql('member_menu', 'what', 'what', 'VARCHAR(255) NULL DEFAULT NULL'); addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_admin_menu` SET `what`=NULL WHERE `what`=''"); addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_guest_menu` SET `what`=NULL WHERE `what`=''"); addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `what`=NULL WHERE `what`=''"); // Make this depending on ext-menu addExtensionDependency('menu'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Schlüssel in Admin-, Gast- und Mitgliedsmenü verbessert."); break; case '0.4.5': // SQL queries for v0.4.5 addConfigAddSql('last_daily' , 'TINYINT(2) UNSIGNED ZEROFILL NOT NULL DEFAULT 00'); addConfigAddSql('last_weekly' , 'TINYINT(2) UNSIGNED ZEROFILL NOT NULL DEFAULT 00'); addConfigAddSql('last_monthly', 'TINYINT(2) UNSIGNED ZEROFILL NOT NULL DEFAULT 00'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Täglichen/wöchentlichen/monatlichen Reset verbessert."); break; case '0.4.6': // SQL queries for v0.4.6 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Nicht mehr gültiges Update."); break; case '0.4.7': // SQL queries for v0.4.7 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Veraltetes Update."); break; case '0.4.8': // SQL queries for v0.4.8 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Update nach ext-task verschoben."); break; case '0.4.9': // SQL queries for v0.4.9 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Nicht mehr gültiges Update."); break; case '0.5.0': // SQL queries for v0.5.0 addExtensionDropTableIndexSql('refsystem', 'level'); addExtensionDropTableIndexSql('refsystem', 'userid'); addExtensionAddTableIndexSql('refsystem', 'userid_level', '(`userid`, `level`)'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Referral-System unterstützt nun detailierte Referral-Übersicht und vieles mehr."); break; case '0.5.1': // SQL queries for v0.5.1 addExtensionDropTableColumnSql('member_menu', 'descr'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Beschreibungsspalte von Mitgliedsmenü entfernt, welche ohnehin nicht genutzt wird."); break; case '0.5.2': // SQL queries for v0.5.2 addExtensionChangeTableColumnSql('refdepths', 'percents', 'percents', 'FLOAT(8,5) UNSIGNED NOT NULL DEFAULT 0.00000'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Prozentsätze können nun fünf Stellen hinter dem Komma sein."); break; case '0.5.3': // SQL queries for v0.5.3 addConfigAddSql('session_save_path', "VARCHAR(255) NOT NULL DEFAULT ''"); addAdminMenuSql('setup','config_session','Session-Einstellungen','Ändern Sie hier den Speicherpfad für Sessiondateien (Sitzungsdateien) ab, falls die Standard-Einstellung bei Ihrem Hoster zu Problem führen sollte.', 16); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Session-Speicherpfad konfigurierbar. Beispielsweise ist dies bei all-inkl.com nötig."); break; case '0.5.4': // SQL queries for v0.5.4 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Dieses Update wurde nach ext-refback verschoben."); break; case '0.5.5': // SQL queries for v0.5.5 addConfigAddSql('show_points_unconfirmed', "ENUM('Y','N') NOT NULL DEFAULT 'Y'"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Anzeige der {?POINTS?} unter den unbestätigten Mails kann nun optional abgeschaltet werden."); break; case '0.5.6': // SQL queries for v0.5.6 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Nicht mehr gültiges Update."); break; case '0.5.7': // SQL queries for v0.5.7 addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `what`='list_norefs' LIMIT 1"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Auflistung der Mitglieder ohne Werber nach what=list_user&mode=norefs verschoben."); break; case '0.5.8': // SQL queries for v0.5.8 addExtensionDropTableColumnSql('extensions', 'ext_lang_file'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Sprachdateinamen werden nicht mehr in der Datenbank behalten."); break; case '0.5.9': // SQL queries for v0.5.9 // Table 'filters' is vital because many functionality depends on it, so don't remove it addCreateTableSql('filters', " `filter_id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `filter_name` VARCHAR(50) NOT NULL DEFAULT '', `filter_function` VARCHAR(100) NOT NULL DEFAULT '', `filter_active` ENUM('N','Y') NOT NULL DEFAULT 'Y', `filter_counter` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, PRIMARY KEY (`filter_id`), UNIQUE INDEX `name_function` (`filter_name`, `filter_function`)", 'Filter system'); // Admin menu addAdminMenuSql('setup','list_filter','Filter-Management', 'Zeigt alle im System registrierten Filter an und lässt diese de- bzw. wieder aktivieren.', 17); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Tabellen für Filter-System hinzugefügt."); break; case '0.6.0': // SQL queries for v0.6.0 addConfigAddSql('update_filter_usage', "ENUM('N','Y') NOT NULL DEFAULT 'N'"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Benutzungsstatistik eingebaut. Das Zählen der Filterverwendungen sollte ausschliesslich zu Debugging-Zwecken eingesetzt werden."); break; case '0.6.1': // SQL queries for v0.6.1 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Nicht mehr gültiges Update."); break; case '0.6.2': // SQL queries for v0.6.2 // Depends on refback extension addExtensionDependency('user'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Abhängigkeit von ext-user gesetzt."); break; case '0.6.3': // SQL queries for v0.6.3 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Filter-Tabelle bereinigt um doppelte Einträge und Unique-Key auf filter_name und filter_function zusammen gesetzt."); // Add special fix include to fix filters addIncludeToPool('extension', 'inc/fix_filters.php'); break; case '0.6.4': // SQL queries for v0.6.4 // Update admin menu addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_admin_menu` SET `title` = REPLACE(`title`, '!POINTS!', '?POINTS?') WHERE `title` LIKE '%!POINTS!%'"); addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_admin_menu` SET `descr` = REPLACE(`descr`, '!POINTS!', '?POINTS?') WHERE `descr` LIKE '%!POINTS!%'"); addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_guest_menu` SET `title` = REPLACE(`title`, '!POINTS!', '?POINTS?') WHERE `title` LIKE '%!POINTS!%'"); addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `title` = REPLACE(`title`, '!POINTS!', '?POINTS?') WHERE `title` LIKE '%!POINTS!%'"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Datenbank umgestellt auf Konfigurationselemente."); break; case '0.6.5': // SQL queries for v0.6.5 addConfigChangeSql('css_php', 'css_php', "ENUM('DIRECT','FILE','INLINE') NOT NULL DEFAULT 'FILE'"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Ausgabe der CSS-Dateien entweder per css.php oder sie sind direkt eingebunden."); break; case '0.6.6': // SQL queries for v0.6.6 addAdminMenuSql('setup', 'config_secure', 'Sicherheitseinstellungen', 'Stellen Sie ein, wie lange das Passwort eines Mitgliedes mindestens sein muss uvm.', 9); addAdminMenuSql('setup', 'config_points', '{OPEN_CONFIG}POINTS{CLOSE_CONFIG}', 'Stellen Sie hier die Willkommensgutschrift, Referral-Gutschrift (einmalige) usw. ein.', 10); addAdminMenuSql('email', 'email_archiv', 'E-Mail Archiv', 'Sehen Sie sich hier bereits gesendete Mails an.', 6); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Die Sicherheitseinstellungen, {?POINTS?}-Einstellungen und Email-Archiv funktionieren nur, wenn diese Erweiterung installiert ist."); break; case '0.6.7': // SQL queries for v0.6.7 addConfigChangeSql('index_delay', 'index_delay', 'TINYINT(3) NOT NULL DEFAULT 0'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Die Weiterleitungseinstellung muss auch Werte kleiner Null akzeptieren."); break; case '0.6.8': // SQL queries for v0.6.8 addExtensionChangeTableColumnSql('admin_menu', 'action', 'action', 'VARCHAR(50) NOT NULL'); addExtensionChangeTableColumnSql('admin_menu', 'what', 'what', 'VARCHAR(50) NULL DEFAULT NULL'); addExtensionChangeTableColumnSql('guest_menu', 'action', 'action', 'VARCHAR(50) NOT NULL'); addExtensionChangeTableColumnSql('admin_menu', 'what', 'what', 'VARCHAR(50) NULL DEFAULT NULL'); addExtensionChangeTableColumnSql('member_menu', 'action', 'action', 'VARCHAR(50) NOT NULL'); addExtensionChangeTableColumnSql('admin_menu', 'what', 'what', 'VARCHAR(50) NULL DEFAULT NULL'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Spalten verkürzt, damit die Schlüssel passen."); break; case '0.6.9': // SQL queries for 0.6.9 // Register filter registerFilter(__FILE__, __LINE__, 'member_login_check', 'RESET_USER_LOGIN_FAILURE', FALSE, TRUE, isExtensionDryRun()); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Filter zum Zurücksetzens des fehlgeschlagenen Mitgliederlogins hinzugefügt (internes TODO)."); break; case '0.7.0': // SQL queries for 0.7.0 // Table definition addDropTableSql('dns_cache'); addCreateTableSql('dns_cache', " `hostname` VARCHAR(255) NOT NULL, `ip` VARCHAR(15) NOT NULL, `added` DATETIME NOT NULL, PRIMARY KEY (`hostname`), INDEX (`ip`)", 'Cache for DNS requests'); // Configuration addConfigAddSql('dns_cache_timeout', 'BIGINT(20) NOT NULL DEFAULT ' . (60*60*24)); // Register filter registerFilter(__FILE__, __LINE__, 'reset', 'CLEANUP_DNS_CACHE', FALSE, TRUE, isExtensionDryRun()); // Update notes (these will be set as task text!) setExtensionUpdateNotes("IP-Resolver-Klasse hinzugefügt, um bei der Erweiterung ext-network DNS-Anfragen einzusparen."); break; case '0.7.1': // SQL queries for v0.7.1 // This update just depends on ext-timezone to make integration of an essential extension much easier addExtensionDependency('timezone'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Zeitzone ist nun mit ext-timezone konfigurierbar."); break; case '0.7.2': // SQL queries for v0.7.2 addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_task_system` SET `task_type`='MEMBER_SUPPORT' WHERE `task_type`='SUPPORT_MEMBER'"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Daten an Namenskonvention angepasst."); break; case '0.7.3': // SQL queries for v0.7.3 addExtensionChangeTableColumnSql('filters', 'filter_name', 'filter_name', "VARCHAR(50) NOT NULL DEFAULT ''"); addExtensionChangeTableColumnSql('filters', 'filter_function', 'filter_function', "VARCHAR(100) NOT NULL DEFAULT ''"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Spalten in Filtertabelle gekürzt (SQL-Fehler wegen zu grossem Schlüssel)."); break; case '0.7.4': // SQL queries for v0.7.4 addExtensionAddTableColumnSql('pool', 'mails_sent', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 0'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Spalten in Filtertabelle gekürzt (SQL-Fehler wegen zu grossem Schlüssel)."); break; case '0.7.5': // SQL queries for v0.7.5 addConfigAddSql('last_hourly', 'TINYINT(2) UNSIGNED ZEROFILL NOT NULL DEFAULT 00'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Aktuelle Stunde hinzugefügt (ist nicht konfigurierbar)."); break; case '0.7.6': // SQL queries for v0.7.6 addConfigChangeSql('last_month', 'last_monthly', 'TINYINT(2) UNSIGNED ZEROFILL NOT NULL DEFAULT 00'); addConfigChangeSql('last_week' , 'last_weekly' , 'TINYINT(2) UNSIGNED ZEROFILL NOT NULL DEFAULT 00'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Spaltentyp fuer kleine Zahlen sollten auch z.B. TINYINT sein."); break; case '0.7.7': // SQL queries for v0.7.7 addMemberMenuSql('earn', NULL, 'Verdienen', 2); addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `action`='earn',`sort`=1 WHERE `what`='unconfirmed' LIMIT 1"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Menüpunkt Verdienen hinzugefügt und Unbestätigte Mails als ersten Punkt dort hin verschoben."); break; case '0.7.8': // SQL queries for v0.7.8 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Konfigurationseinträge mit Spaltentyp ENUM werden nun immer komplett gross geschrieben."); break; case '0.7.9': // SQL queries for v0.7.9 addExtensionSQL("UPDATE `{?_MYSQL_PREFIX?}_admin_menu` SET `what`='list_email_max_rec' WHERE `what`='config_email' LIMIT 1"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Adminscript what-config_email.php nach what-list_email_max_rec.php umbenannt."); break; case '0.8.0': // SQL queries for v0.8.0 // Points account data (this table should not be dropped or else you may have to re-install a lot extensions) addCreateTableSql('points_data', " `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `subject` VARCHAR(255) NOT NULL DEFAULT '', `column_name` VARCHAR(255) NOT NULL DEFAULT 'points', `locked_mode` ENUM('LOCKED','UNLOCKED') NOT NULL DEFAULT 'LOCKED', `payment_method` ENUM('DIRECT','REFERRAL') NOT NULL DEFAULT 'REFERRAL', `notify_recipient` ENUM('Y','N') NOT NULL DEFAULT 'N', PRIMARY KEY (`id`), UNIQUE KEY (`subject`)", 'Points account data'); // Admin menu addAdminMenuSql('setup', 'list_point_accounts', 'Guthabenkonten...', 'Veralten Sie hier bequem Einstellungen zu den Guthabenkonten.', 5); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Tabelle points_data erzeugt, diese soll das {?POINTS?}-Guthaben komplett lenken."); break; case '0.8.1': // SQL queries for v0.8.1 addExtensionChangeTableColumnSql('refdepths', 'level', 'level', 'TINYINT(3) UNSIGNED NULL DEFAULT NULL'); addExtensionSql('UPDATE `{?_MYSQL_PREFIX?}_refdepths` SET `level`=NULL WHERE `level`=0 LIMIT 1'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Level 0 ist nun auch NULL."); break; case '0.8.2': // SQL queries for v0.8.2 addExtensionDropTableIndexSql('points_data', 'ext_name'); addExtensionChangeTableColumnSql('points_data', 'ext_name', 'subject', "VARCHAR(255) NOT NULL DEFAULT ''"); addExtensionAddTableColumnSql('points_data', 'notify_recipient', "ENUM('Y','N') NOT NULL DEFAULT 'N'"); // Register points data registerExtensionPointsData('pool_payback', 'points', 'LOCKED', 'DIRECT'); registerExtensionPointsData('mail_deleted', 'points', 'LOCKED', 'DIRECT'); // Remove deprecated configuration entry addConfigDropSql('reg_points_mode'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Es sollte der Gutschriftenbetreff und nicht der Erweiterungsname gepeichert werden, zudem brauchen wir einen Konfigurationseintrag nicht mehr."); break; case '0.8.3': // SQL queries for v0.8.3 addConfigAddSql('display_home_in_index', "ENUM('Y','N') NOT NULL DEFAULT 'Y'"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Es kann nun die "Home"-Seite in index.php angezeigt werden, anstelle der Weiterleitung."); break; case '0.8.4': // SQL queries for v0.8.4 addCreateTableSql('history', " `history_id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `history_subject` VARCHAR(255) NOT NULL DEFAULT 'GENERIC', `history_userid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, `history_value` VARCHAR(255) NOT NULL DEFAULT '', `history_added` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, `history_last_used` TIMESTAMP NULL DEFAULT NULL, PRIMARY KEY (`history_id`), INDEX `userid` (`history_userid`), INDEX (`history_last_used` DESC)", 'History of used data'); // Register filter registerFilter(__FILE__, __LINE__, 'add_history_entry', 'ADD_HISTORY_ENTRY', FALSE, TRUE, isExtensionDryRun()); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Allgemeine Historie-Tabelle hinzugefügt."); break; case '0.8.5': // SQL queries for v0.8.5 // Old-lost configuration entry addConfigDropSql('ext_autopurge'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Uralten Konfigurationseintrag entfernt."); break; case '0.8.6': // SQL queries for v0.8.6 addExtensionChangeTableColumnSql('points_data', 'payment_method', 'payment_method', "ENUM('DIRECT','REFERRAL') NOT NULL DEFAULT 'REFERRAL'"); addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_points_data` SET `payment_method`='REFERRAL' WHERE `payment_method` != 'DIRECT'"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Referral/REFERRAL soll es überall heissen (ist ein Typo nur mit einem R zu schreiben)."); break; case '0.8.7': // SQL queries for v0.8.7 addConfigAddSql('admin_menu_javascript', "ENUM('Y','N') NOT NULL DEFAULT 'N'"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Es kann ausgewählt werden, ob das herkömliche JavaScrit-lose Menü oder mit JavaScript aktiv sein soll. Das herkömliche ist erstmal Standardeinstellung, bis das JavaScript-Menü funktioniert."); break; case '0.8.8': // SQL queries for v0.8.8 addExtensionDropTableIndexSql('points_data', 'subject'); addExtensionAddTableUniqueSql('points_data', 'subject', '(`subject`)'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Der Wert in der Spalte subject sollte nur einmal vorkommen, damit eventuell nichts mehrfach durchfl&auuml;ft."); break; case '0.8.9': // SQL queries for v0.8.9 addExtensionAddTableColumnSql('points_data', 'account_provider', "ENUM('EXTENSION', 'CUSTOM') NOT NULL DEFAULT 'EXTENSION'"); addConfigAddSql('points_remove_account', "VARCHAR(255) NOT NULL DEFAULT 'points'"); // Update notes (these will be set as task text!) setExtensionUpdateNotes(""Provider" hinzugefügt, welcher nur Erweiterung oder Selbstdefiniert sein kann. Es können dann auch nur selbstdefinierte gelöscht oder editiert werden, Erweiterungen können auch nur "einige" Einträge löschen."); break; case '0.9.0': // SQL queries for v0.9.0 // Register filter registerFilter(__FILE__, __LINE__, 'init', 'GENERATE_FILE_SECRET_HASH', FALSE, TRUE, isExtensionDryRun()); // Register points data registerExtensionPointsData('admin_add_single', 'points', 'LOCKED', 'DIRECT'); registerExtensionPointsData('admin_add_all', 'points', 'LOCKED', 'DIRECT'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Filter zum Initialisieren von ext-sql_patches registriert und Einträge in {?_MYSQL_PREFIX?}_points_data hinzugefügt."); break; case '0.9.1': // SQL queries for v0.9.1 // Add admin menu addAdminMenuSql('misc', 'list_server_name', 'Verkehrte Domains auflisten', 'Listet alle als verkehrt erkannten Domains auf.', 4); // Create table addCreateTableSql('server_name_log', " `server_name_id` BIGINT (20) NOT NULL AUTO_INCREMENT, `server_name` VARCHAR (255) NOT NULL DEFAULT 'invalid', `server_name_remote_addr` VARCHAR (15) NOT NULL DEFAULT '0.0.0.0', `server_name_ua` TINYTEXT NULL DEFAULT NULL, `server_name_referrer` TINYTEXT NULL DEFAULT NULL, `server_name_added` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, `server_name_counter` BIGINT (20) NOT NULL DEFAULT 1, PRIMARY KEY (`server_name_id`) ", 'Logging of wrong SERVER_NAME'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Loggen von falschen SERVER_NAME Einträgen hinzugefügt."); break; case '0.9.2': // SQL queries for v0.9.2 addExtensionAddTableColumnSql('server_name_log', 'server_name_remote_addr', "VARCHAR (15) NOT NULL DEFAULT '0.0.0.0'"); addExtensionAddTableColumnSql('server_name_log', 'server_name_counter', 'BIGINT (20) NOT NULL DEFAULT 0'); addExtensionAddTableColumnSql('server_name_log', 'server_name_ua', 'TINYTEXT NULL DEFAULT NULL'); addExtensionAddTableColumnSql('server_name_log', 'server_name_referrer', 'TINYTEXT NULL DEFAULT NULL'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Sorry, hatte noch IP-Nummer, User-Agent, aufrufende Seite und Zähler vergessen."); break; case '0.9.3': // SQL queries for v0.9.3 addConfigAddSql('ap_server_name', "ENUM('Y','N') NOT NULL DEFAULT 'Y'"); addConfigAddSql('ap_server_name_since', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT ' . (getOneDay() * 7)); // Register filter registerFilter(__FILE__, __LINE__, 'extra_autopurge', 'SERVER_NAME_EXTRA_AUTOPURGE', FALSE, TRUE, isExtensionDryRun()); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Bereinigung von verkehrten SERVER_NAME Einträgen hinzugefügt."); break; case '0.9.4': // SQL queries for v0.9.4 addAdminMenuSql('setup', 'list_referral_levels', 'Referral-Ebenen', 'Erlaubt das Auflisten, hinzufügen, ändern und löschen von Referral-Ebenen. Seien Sie beim Löschen vorsichtig, da deren Id-Nummern zum Verknüpfen verwendet werden. Sollten Sie also eine Ebene löschen, in der Mitglieder {OPEN_CONFIG}POINTS{CLOSE_CONFIG} haben sollten, sind diese verloren.', 15); addExtensionChangeTableColumnSql('refdepths', 'percents', 'percents', 'FLOAT(8,5) UNSIGNED NOT NULL DEFAULT 0.00000'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Auflisten (usw.) von Referral-Ebenen ausgelagert in eigenen Menüpunkt. Referral-Prozente dürfen nun auch 5 Stellen hinter dem Komma haben."); break; case '0.9.5': // SQL queries for v0.9.5 addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_admin_menu` SET `what`='list_cats' WHERE `action`='setup' AND `what`='config_cats' LIMIT 1"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Menüpunkt umbenannt, da "config" nur für die Konfigurationstabelle {?_MYSQL_PREFIX?}_config ist."); break; case '0.9.6': // SQL queries for v0.9.6 // Register filter registerFilter(__FILE__, __LINE__, 'determine_menu_mode', 'DETERMINE_MENU_MODE_GENERIC', FALSE, TRUE, isExtensionDryRun()); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Filter hinzugefügt, der den Menümodus für weitere von dieser Erweiterung benutzten Module erkennen soll."); break; case '0.9.7': // SQL queries for v0.9.7 // Register filter registerFilter(__FILE__, __LINE__, 'config_userid_exclusion_sql', 'EXCLUDE_DEFAULT_REFID', FALSE, TRUE, isExtensionDryRun()); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Filter hinzugefügt, der die Standard-Referral-Id für SQL-Befehle ausschliesst."); break; case '0.9.8': // SQL queries for v0.9.8 addConfigChangeSql('last_hour' , 'last_hourly' , 'TINYINT(2) UNSIGNED ZEROFILL NOT NULL DEFAULT 00'); addConfigChangeSql('last_update', 'last_daily' , 'TINYINT(2) UNSIGNED ZEROFILL NOT NULL DEFAULT 00'); addConfigChangeSql('last_week' , 'last_weekly' , 'TINYINT(2) UNSIGNED ZEROFILL NOT NULL DEFAULT 00'); addConfigChangeSql('last_month' , 'last_monthly', 'TINYINT(2) UNSIGNED ZEROFILL NOT NULL DEFAULT 00'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Spalten umbenannt, damit die Namen (Verwendung) nun eindeutiger sind."); break; case '0.9.9': // SQL queries for v0.9.9 addConfigAddSql('last_yearly', 'SMALLINT(4) UNSIGNED ZEROFILL NOT NULL DEFAULT ' . getYear()); addConfigChangeSql('pass_len', 'min_password_length', 'TINYINT(2) UNSIGNED NOT NULL DEFAULT 5'); addConfigAddSql('min_password_score', 'TINYINT(2) UNSIGNED NOT NULL DEFAULT 3'); addModuleSql('api', '{OPEN_LANGUAGE}MODULE_GENERIC_API_TITLE{CLOSE_LANGUAGE}', 'Y', 'Y', 'N', 'N'); // Make this depending on ext-mods addExtensionDependency('mods'); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Jahres-Reset + generelles API-Modul hinzugefügt."); break; case '1.0.0': // SQL queries for v1.0.0 addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `action`='account' WHERE `what`='categories'"); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Auswahl im Mitgliedsbereich verschoben nach "Ihr Account"."); break; case '1.0.1': // SQL queries for v1.0.1 addModuleSql('ajax', 'AJAX', 'N', 'Y', 'N', 'N');; // Update notes (these will be set as task text!) setExtensionUpdateNotes("AJAX-Modul hinzugefügt."); break; } // END - switch // [EOF] ?>