* $Author:: $ *
* -------------------------------------------------------------------- *
* Copyright (c) 2003 - 2009 by Roland Haeder *
- * Copyright (c) 2009 - 2011 by Mailer Developer Team *
+ * 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 *
`total_created` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
`total_cashed` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
`points` FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000,
-`coupon_description` TEXT,
+`coupon_description` TEXT NOT NULL,
PRIMARY KEY (`id`)",
'Created coupons');
`coupon_code` VARCHAR(30) NULL DEFAULT NULL,
`cashed_on` TIMESTAMP NULL DEFAULT NULL,
PRIMARY KEY (`id`),
-UNIQUE INDEX `coupon_user` (`coupon_id`,`userid`),
-UNIQUE (`coupon_code`)",
+UNIQUE INDEX `coupon_user` (`coupon_id`, `userid`),
+UNIQUE INDEX (`coupon_code`)",
'Coupon->user connection');
// Configuration entries
addConfigAddSql('coupon_userid', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 0');
// User data table
- addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_user_data` ADD `receiving_coupons` ENUM('Y','N') NOT NULL DEFAULT 'Y'");
+ addExtensionAddTableColumnSql('user_data', 'receiving_coupons', "ENUM('Y','N') NOT NULL DEFAULT 'Y'");
// Menu systems:
// - Admin entries
addMemberMenuSql('coupon', 'list_coupon', 'Eingelöste auflisten', 2);
// Add filter (for changing user_points column dynamically
- registerFilter('determine_points_column_name', 'COUPON_CHANGE_POINTS_COLUMN_NAME', false, true, isExtensionDryRun());
+ registerFilter(__FILE__, __LINE__, 'determine_points_column_name', 'COUPON_CHANGE_POINTS_COLUMN_NAME', FALSE, TRUE, isExtensionDryRun());
break;
case 'remove': // Do stuff when removing extension
addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `action`='coupon' LIMIT 4");
addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_member_menu` WHERE `action`='coupon' LIMIT 3");
+ // Remove points data
+ unregisterExtensionPointsData('coupon_cashed');
+
// Remove all filters
- unregisterFilter(__FUNCTION__, __LINE__, 'determine_points_column_name', 'COUPON_CHANGE_POINTS_COLUMN_NAME', true, isExtensionDryRun());
- unregisterFilter(__FUNCTION__, __LINE__, 'post_cash_coupon', 'POST_CASH_COUPON', true, isExtensionDryRun());
+ unregisterFilter(__FILE__, __LINE__, 'determine_points_column_name', 'COUPON_CHANGE_POINTS_COLUMN_NAME', TRUE, isExtensionDryRun());
+ unregisterFilter(__FILE__, __LINE__, 'post_cash_coupon', 'POST_CASH_COUPON', TRUE, isExtensionDryRun());
break;
case 'activate': // Do stuff when admin activates this extension
addExtensionDependency('order');
// Insert data in new table
- addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_points_data` (`subject`,`column_name`,`locked_mode`,`payment_method`) VALUES ('coupon_cashed','order_points','LOCKED','DIRECT')");
+ registerExtensionPointsData('coupon_cashed', 'order_points', 'LOCKED', 'DIRECT');
// Update notes (these will be set as task text!)
setExtensionUpdateNotes('');
break;
case '0.0.3': // SQL queries for v0.0.3
- registerFilter('post_cash_coupon', 'POST_CASH_COUPON', false, true, isExtensionDryRun());
+ registerFilter(__FILE__, __LINE__, 'post_cash_coupon', 'POST_CASH_COUPON', FALSE, TRUE, isExtensionDryRun());
// Update notes (these will be set as task text!)
setExtensionUpdateNotes('Filter zum Post- und Pre-Filter hinzugefügt.');