Edit the files:
/includes/classes/shipping.php
and add the code in RED:
Code:
function calculate_boxes_weight_and_tare() {
global $total_weight, $shipping_weight, $shipping_quoted, $shipping_num_boxes;
// bof: force Always Free Shipping with products_weight
$total_weight += $_SESSION['cart']->free_shipping_weight;
// eof: force Always Free Shipping with products_weight
$this->abort_legacy_calculations = FALSE;
/includes/modules/shipping/fedexwebservices.php
Code:
$this->sort_order = MODULE_SHIPPING_FEDEX_WEB_SERVICES_SORT_ORDER;
//$this->icon = DIR_WS_IMAGES . 'fedex-images/fedex.gif';
$this->icon = '';
// Ajeh - force FedEx to always show for Always Free Shipping with products_weight set
if (MODULE_SHIPPING_FEDEX_WEB_SERVICES_FREE_SHIPPING == 'true' || true || zen_get_shipping_enabled($this->code)) {
if (extension_loaded('soap')) {
$this->enabled = ((MODULE_SHIPPING_FEDEX_WEB_SERVICES_STATUS == 'true') ? true : false);
}
}
$this->tax_class = MODULE_SHIPPING_FEDEX_WEB_SERVICES_TAX_CLASS;
/includes/modules/shipping/freeshipper.php
Code:
if (zen_get_shipping_enabled($this->code)) {
$this->enabled = ((MODULE_SHIPPING_FREESHIPPER_STATUS == 'True') ? true : false);
}
// bof: force Always Free Shipping with products_weight
$this->enabled = true;
// eof: force Always Free Shipping with products_weight
if ( ($this->enabled == true) && ((int)MODULE_SHIPPING_FREESHIPPER_ZONE > 0) ) {
Code:
// class methods
function quote($method = '') {
global $order;
// bof: force Always Free Shipping with products_weight
global $shipping_weight;
$check_free_weight = $_SESSION['cart']->free_shipping_weight;
//echo '$shipping_weight: ' . $shipping_weight . '<br>';
//echo '$check_weight: ' . $check_free_weight . '<br>';
if ($shipping_weight - $check_free_weight != 0) {
return false;
}
// eof: force Always Free Shipping with products_weight
$this->quotes = array('id' => $this->code,