addCreateTableSql() is now more encapsulated
[mailer.git] / inc / extensions / ext-grade.php
index b595c1e854f28594842becc9ebb35a5b5333ccb4..2ce287dd616a9f5c421cc69b44969369c8835e97 100644 (file)
@@ -53,18 +53,19 @@ switch (getExtensionMode()) {
        case 'register': // Do stuff when installation is running
                // General and grade level data
                addDropTableSql('grade_data');
-               addCreateTableSql('grade_data', "(
+               addCreateTableSql('grade_data', "
 `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
 `grade_name` VARCHAR(255) NOT NULL DEFAULT '',
 `grade_description` TINYTEXT NOT NULL,
 `grade_parent_id` BIGINT(20) UNSIGNED NULL DEFAULT NULL,
 PRIMARY KEY (`id`),
-INDEX (`grade_parent_id`)
-) TYPE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Grade general data'");
+UNIQUE KEY (`grade_name`),
+INDEX (`grade_parent_id`)",
+                       'Grade general data');
 
                // Data for if a grade level has been reached
                addDropTableSql('grade_cash_data');
-               addCreateTableSql('grade_cash_data', "(
+               addCreateTableSql('grade_cash_data', "
 `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
 `grade_cash_name` VARCHAR(255) NOT NULL DEFAULT '',
 `grade_cash_type` ENUM('DISCOUNT','BONUS') NOT NULL DEFAULT 'DISCOUNT',
@@ -72,30 +73,31 @@ INDEX (`grade_parent_id`)
 `reached_mails` BIGINT(20) UNSIGNED NULL DEFAULT NULL,
 `time_valid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
 PRIMARY KEY (`id`),
-) TYPE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Grade data if the grade have been \"cashed\"'");
+UNIQUE KEY (`grade_cash_name`)",
+                       'Grade data if the grade have been "cashed"');
 
                // Connection grade<->cash data
                addDropTableSql('grade_cash_connect');
-               addCreateTableSql('grade_cash_connect', "(
+               addCreateTableSql('grade_cash_connect', "
 `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
 `grade_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
 `grade_cash_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
 PRIMARY KEY (`id`),
 UNIQUE KEY `grade_cash` (`grade_id`,`grade_cash_id`),
-INDEX (`grade_cash_id`)
-) TYPE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Grade<->cash data connection'");
+INDEX (`grade_cash_id`)",
+                       'Grade<->cash data connection');
 
                // Connection grade<->user data
                addDropTableSql('grade_user_connect');
-               addCreateTableSql('grade_user_connect', "(
+               addCreateTableSql('grade_user_connect', "
 `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
 `userid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
 `grade_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
-`grade_expired TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00',
+`grade_expired` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00',
 PRIMARY KEY (`id`),
 UNIQUE KEY (`userid`,`grade_id`),
-INDEX (`grade_id`)
-) TYPE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Grade<->user connection'");
+INDEX (`grade_id`)",
+                       'Grade<->user connection');
 
                // Admin menu entries
                addAdminMenuSql('grade', NULL, 'Einstufungen', 'Stufen Sie Ihre Mitglieder ein, die sie ab einer einstellbaren Anzahl an {?POINTS?} oder best&auml;tigten Mails usw. erhalten und durch die Einstufung Erm&auml;&szlig;igungen oder Sonderboni erhalten k&ouml;nnen.', 6);