+
+ 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('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
+ addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_filters` CHANGE `filter_name` `filter_name` VARCHAR(50) NOT NULL DEFAULT ''");
+ addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_filters` CHANGE `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
+ addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_pool` ADD `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_hour', '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_month', 'TINYINT(2) UNSIGNED ZEROFILL NOT NULL DEFAULT 00');
+ addConfigChangeSql('last_week', 'last_week', '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 <strong>Verdienen</strong> hinzugefügt und <strong>Unbestätigte Mails</strong> 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 <strong>ENUM</strong> 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 <strong>what-config_email.php</strong> nach <strong>what-list_email_max_rec.php</strong> 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','REFERAL') NOT NULL DEFAULT 'REFERAL',
+`notify_recipient` ENUM('Y','N') NOT NULL DEFAULT 'N',
+PRIMARY KEY(`id`),
+INDEX (`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 <em>points_data</em> erzeugt, diese soll das {?POINTS?}-Guthaben komplett lenken.");
+ break;
+
+ case '0.8.1': // SQL queries for v0.8.1
+ addExtensionSql('ALTER TABLE `{?_MYSQL_PREFIX?}_refdepths` CHANGE `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
+ addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_points_data` DROP INDEX `ext_name`");
+ addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_points_data` CHANGE `ext_name` `subject` VARCHAR(255) NOT NULL DEFAULT ''");
+ addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_points_data` CHANGE `payment_method` `payment_method` ENUM('DIRECT','REFERAL') NOT NULL DEFAULT 'REFERAL'");
+ addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_points_data` ADD INDEX `subject` (`subject`)");
+ addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_points_data` ADD `notify_recipient` ENUM('Y','N') NOT NULL DEFAULT 'N'");
+ addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_points_data` (`subject`,`column_name`,`locked_mode`,`payment_method`) VALUES ('pool_payback','points','LOCKED','DIRECT')");
+ addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_points_data` (`subject`,`column_name`,`locked_mode`,`payment_method`) VALUES ('mail_deleted','points','LOCKED','DIRECT')");
+ 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 <strong>index.php</strong> angezeigt werden, anstelle der Weiterleitung.");
+ break;