Interim fix #2. This will handle the calculation of reward points for discounted/specials and free items.
Code:
SET @group_id = '';
SELECT (@group_id := `configuration_group_id`) FROM `configuration_group` WHERE `configuration_group_title` LIKE 'Reward Points';
REPLACE INTO `configuration`
(`configuration_id` ,`configuration_title` ,`configuration_key` ,`configuration_value` ,`configuration_description` ,`configuration_group_id` ,`sort_order` ,`last_modified` ,`date_added` ,`use_function` ,`set_function`)
VALUES (NULL , 'Adjust Reward Points for Sales/Specials', 'REWARD_POINTS_SPECIAL_ADJUST', '0', 'How to calculate Reward Points<br />0= Always use the base price.<br />1= Use price less Discounts and Specials.', @group_id, '7', NULL, now(), NULL , 'zen_cfg_select_option(array(''0'', ''1''), ');
REPLACE INTO `configuration`
(`configuration_id` ,`configuration_title` ,`configuration_key` ,`configuration_value` ,`configuration_description` ,`configuration_group_id` ,`sort_order` ,`last_modified` ,`date_added` ,`use_function` ,`set_function`)
VALUES (NULL , 'Allow Reward Points on Free Products', 'REWARD_POINTS_ALLOW_ON_FREE', '0', 'Set how points are rewarded for free products.<br />0= Free products give 0 Reward Points.<br />1= Allow Reward Points on free products.', @group_id, '8', NULL, now(), NULL , 'zen_cfg_select_option(array(''0'', ''1''), ');