X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fextensions%2Fext-grade.php;h=4f2c430f2be7fff37547aac32cd051b1fc7e0b90;hp=b595c1e854f28594842becc9ebb35a5b5333ccb4;hb=2df9f7a53f8b1dd5164f87824a324ccb3b6634cb;hpb=9f9d88d5c69948a0306c3d362b42793ae59c8553 diff --git a/inc/extensions/ext-grade.php b/inc/extensions/ext-grade.php index b595c1e854..4f2c430f2b 100644 --- a/inc/extensions/ext-grade.php +++ b/inc/extensions/ext-grade.php @@ -16,8 +16,8 @@ * $Author:: $ * * -------------------------------------------------------------------- * * Copyright (c) 2003 - 2009 by Roland Haeder * - * Copyright (c) 2009 - 2011 by Mailer Developer Team * - * For more information visit: http://www.mxchange.org * + * Copyright (c) 2009 - 2012 by Mailer Developer Team * + * For more information visit: http://mxchange.org * * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * @@ -53,54 +53,56 @@ switch (getExtensionMode()) { case 'register': // Do stuff when installation is running // General and grade level data addDropTableSql('grade_data'); - addCreateTableSql('grade_data', "( -`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, + addCreateTableSql('grade_data', " +`grade_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 INDEX (`grade_name`), +INDEX (`grade_parent_id`), +PRIMARY KEY (`grade_id`)", + 'Grade data'); // Data for if a grade level has been reached addDropTableSql('grade_cash_data'); - addCreateTableSql('grade_cash_data', "( -`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, + addCreateTableSql('grade_cash_data', " +`cash_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', `reached_points` FLOAT(20,5) UNSIGNED NULL DEFAULT NULL, `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 INDEX (`grade_cash_name`), +PRIMARY KEY (`cash_id`)", + 'Data for "cashed" grades'); // Connection grade<->cash data addDropTableSql('grade_cash_connect'); - addCreateTableSql('grade_cash_connect', "( -`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, + addCreateTableSql('grade_cash_connect', " +`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 INDEX `grade_cash` (`grade_id`, `grade_cash_id`), +INDEX (`grade_cash_id`), +PRIMARY KEY (`connect_id`)", + 'Grade<->cash data connection'); // Connection grade<->user data addDropTableSql('grade_user_connect'); - addCreateTableSql('grade_user_connect', "( -`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, + addCreateTableSql('grade_user_connect', " +`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', -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'"); +`grade_expired` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00', +UNIQUE INDEX (`userid`, `grade_id`), +INDEX (`grade_id`), +PRIMARY KEY (`connect_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); - addAdminMenuSql('grade', 'list_grades', 'Auflisten...', 'Listet alle Einstufungen auf, auch sind diese hier editierbar, neue hinzufügbar und löschbar.', 1); - addAdminMenuSql('grade', 'list_cash_grade', 'Ermäßigungen/Sonderboni', 'Listet alle Ermäßigungen/Sonderbi auf, auch sind diese hier editierbar, neue hinzufügbar und löschbar.', 2); + addAdminMenuSql('grade', NULL, 'Einstufungen', 'Stufen Sie Ihre Mitglieder ein, die sie ab einer einstellbaren Anzahl an {OPEN_CONFIG}POINTS{CLOSE_CONFIG} oder bestätigten Mails usw. erhalten und durch die Einstufung Ermäßigungen oder Sonderboni erhalten können.', 6); + addAdminMenuSql('grade', 'list_grade_data', 'Auflisten...', 'Listet alle Einstufungen auf, auch sind diese hier editierbar, neue hinzufügbar und löschbar.', 1); + addAdminMenuSql('grade', 'list_cash_grade', 'Ermäßigungen/Sonderboni', 'Listet alle Ermäßigungen/Sonderboni auf, auch sind diese hier editierbar, neue hinzufügbar und löschbar.', 2); addAdminMenuSql('grade', 'list_current_grades', 'Mitglieder-Einstufungen', 'Liste alle durch die Mitglieder aktuell erreichten Einstungen auf. Diese sind nicht editierbar (wir wollen ja nicht schummeln und bestimmten Mitgliedern bessere Einstufungen geben, oder? ;-) ).', 3); addAdminMenuSql('grade', 'config_grade', 'Einstellungen ...', 'Diverse Einstellungen zu den Einstufungen.', 4); @@ -126,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