case 'remove': // Do stuff when removing extension
// SQL commands to run
addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `action`='admins'");
- addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_admins_acls`');
- addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_admins_mails`');
+ addDropTableSql('admins_acls');
+ addDropTableSql('admins_mails');
addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_admins` DROP `default_acl`");
// Remove filters
addAdminMenuSql('admins','config_admins','ACL einstellen','Richten Sie Zugriffskontrollzeilen für jeden Admin individuell ein, um ihm nur bestimmte Bereiche des Admin-Bereiches zugänglich zu machen oder zu sperren.',4);
// Which is the default setting when you create a new admin login?
- addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD admins_default_acl ENUM('deny','allow') NOT NULL DEFAULT 'deny'");
+ addConfigAddSql('admins_default_acl', "ENUM('deny','allow') NOT NULL DEFAULT 'deny'");
// Default is deny everything
addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_admins` ADD default_acl ENUM('deny','allow') NOT NULL DEFAULT 'deny'");
// But allow current admin everything (THIS SHALL BE YOU!)
addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_admins` SET `default_acl`='allow' WHERE `id`=".bigintval(getCurrentAdminId())." LIMIT 1");
- addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_admins_acls`');
- addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_admins_acls` (
+ addDropTableSql('admins_acls');
+ addCreateTableSql('admins_acls', "(
`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
`admin_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
`action_menu` VARCHAR(255) NOT NULL DEFAULT '',
`access_mode` ENUM('deny','allow') NOT NULL DEFAULT 'deny',
KEY (`admin_id`),
PRIMARY KEY (`id`)
-) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci");
+) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Access control lines (ACLs)'");
// Update notes (these will be set as task text!)
setExtensionUpdateNotes("Sogn. ACLs werden hinzugefügt: <strong>A</strong>ccess <strong>C</strong>ontrol <strong>L</strong>ines sind zu deutsch Zugriffkontrollzeilen, mit denen Sie einstellen können, was welcher Admin machen darf oder nicht. <strong>Nur Sie haben momentan Vollzugriff auf den Adminbereich.</strong>");
break;
case '0.4.0': // SQL queries for v0.4.0
- addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_admins_mails`');
- addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_admins_mails` (
+ addDropTableSql('admins_mails');
+ addCreateTableSql('admins_mails', "(
`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
`admin_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
`mail_template` VARCHAR(255) NOT NULL,
KEY (`admin_id`),
PRIMARY KEY (`id`)
-) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci");
+) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Mail template -> admin connection table'");
addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('admins','admins_mails','Admin-Mails','Stellen Sie hier ein, welcher Admin welche Mail erhalten soll. Sie können dies (derzeit) jedoch erst, wenn einmal die Mail versendet wurde!',5)");
// Update notes (these will be set as task text!)
- setExtensionUpdateNotes("Kontrollieren Sie, welche Mails welcher Admin oder alle (admin_id=0) bekommen soll oder im UserLog (admin_id=-1) verzeichnet werden soll. Standartmässig wird weiter an alle versendet.");
+ setExtensionUpdateNotes("Kontrollieren Sie, welche Mails welcher Admin oder alle (admin_id=0) bekommen soll oder im UserLog (admin_id=-1) verzeichnet werden soll. Standardmässig wird weiter an alle versendet.");
break;
case '0.4.1': // SQL queries for v0.4.1
addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_admins` CHANGE `last_failure` `last_failure` TIMESTAMP NULL DEFAULT NULL");
// Update notes (these will be set as task text!)
- setExtensionUpdateNotes("Standartwert ist nicht mehr 0000-00-00 00:00:00, sondern NULL.");
+ setExtensionUpdateNotes("Standardwert ist nicht mehr 0000-00-00 00:00:00, sondern NULL.");
break;
} // END - switch
break;