X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Fextensions%2Fext-grade.php;h=5302dc70e6b65626823dbc4e39a53bb198b70040;hb=ed3a88c0334600c7d7246480008c79716aa3f80b;hp=acc1b5f3dcf1c7f894a519334262bcce3fdbbaeb;hpb=9f30db83eedcaf1d265d973e4bffcd3fa7df9bde;p=mailer.git diff --git a/inc/extensions/ext-grade.php b/inc/extensions/ext-grade.php index acc1b5f3dc..5302dc70e6 100644 --- a/inc/extensions/ext-grade.php +++ b/inc/extensions/ext-grade.php @@ -53,17 +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 (`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', @@ -71,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 (`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'"); +UNIQUE `grade_cash` (`grade_id`, `grade_cash_id`), +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'"); +UNIQUE (`userid`, `grade_id`), +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ätigten Mails usw. erhalten und durch die Einstufung Ermäßigungen oder Sonderboni erhalten können.', 6); @@ -125,10 +128,14 @@ INDEX (`grade_id`) case 'activate': // Do stuff when admin activates this extension // SQL commands to run + addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `locked`='N', `visible`='Y' WHERE `what`='grade' LIMIT 1"); + addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_guest_menu` SET `locked`='N', `visible`='Y' WHERE `what`='grade' LIMIT 1"); break; case 'deactivate': // Do stuff when admin deactivates this extension // SQL commands to run + addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `locked`='Y', `visible`='N' WHERE `what`='grade' LIMIT 1"); + addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_guest_menu` SET `locked`='Y', `visible`='N' WHERE `what`='grade' LIMIT 1"); break; case 'update': // Update an extension