I experienced an interesting situation with these RM add-ons. When the items in thev cart are ALL free shipping, it does not disable the module(s).
ORIGINAL CODE (Example from RM First Class Recorded)
class rmfirstrec {
var $code, $title, $description, $enabled, $num_zones;
// class constructor
function rmfirstrec() {
global $order, $total_weight;
$this->version = '2.2.2';
$this->code = 'rmfirstrec';
$this->title = MODULE_SHIPPING_RMFIRSTREC_TEXT_TITLE . ' v' . $this->version;
$this->description = MODULE_SHIPPING_RMFIRSTREC_TEXT_DESCRIPTION . ' v' . $this->version;
$this->sort_order = MODULE_SHIPPING_RMFIRSTREC_SORT_ORDER;
$this->icon = ( defined('DIR_WS_ICONS') ? DIR_WS_ICONS : 'images/icons/' ) . 'shipping_rmukrec.gif'; // upload icon to catalog/images/icon directory
$this->tax_class = MODULE_SHIPPING_RMFIRSTREC_TAX_CLASS;
$this->enabled = ((MODULE_SHIPPING_RMFIRSTREC_STATUS == 'True') ? true : false);
$this->num_zones = 1;
$this->weight_split = ((MODULE_SHIPPING_RMFIRSTREC_WEIGHT_SPLIT == 'True') ? true : false);
$this->value_split = ((MODULE_SHIPPING_RMFIRSTREC_VALUE_SPLIT == 'True') ? true : false);
MY CHANGES (seem to fix this).
class rmfirstrec {
var $code, $title, $description, $enabled, $num_zones;
// class constructor
function rmfirstrec() {
global $order, $total_weight;
$this->version = '2.2.2';
$this->code = 'rmfirstrec';
$this->title = MODULE_SHIPPING_RMFIRSTREC_TEXT_TITLE . ' v' . $this->version;
$this->description = MODULE_SHIPPING_RMFIRSTREC_TEXT_DESCRIPTION . ' v' . $this->version;
$this->sort_order = MODULE_SHIPPING_RMFIRSTREC_SORT_ORDER;
$this->icon = ( defined('DIR_WS_ICONS') ? DIR_WS_ICONS : 'images/icons/' ) . 'shipping_rmukrec.gif'; // upload icon to catalog/images/icon directory
$this->tax_class = MODULE_SHIPPING_RMFIRSTREC_TAX_CLASS;
//$this->enabled = ((MODULE_SHIPPING_RMFIRSTREC_STATUS == 'True') ? true : false);
$this->num_zones = 1;
$this->weight_split = ((MODULE_SHIPPING_RMFIRSTREC_WEIGHT_SPLIT == 'True') ? true : false);
$this->value_split = ((MODULE_SHIPPING_RMFIRSTREC_VALUE_SPLIT == 'True') ? true : false);
// disable only when entire cart is free shipping
if (zen_get_shipping_enabled($this->code)) {
$this->enabled = ((MODULE_SHIPPING_RMFIRSTREC_STATUS == 'True') ? true : false);
}