osHelpers - Help for your osCommerce store
 
oscommerce Seo
  Seo Pack 2
  SE Friendly URLs
  Session ID Removal
  Title and Meta Tags
  Google Sitemap
Magnum Shopping Cart
  Magnum Light
  Magnum Multi Store
  Magnum MVS Basic
  Magnum MVS Advanced
osCommerce Services
  osc / cre patch
  Data Entry
  Data Extraction
  bugs and fixing
  Site Transfer
  creloaded Transfer
  Design Special
  Hosting
osCommerce Templates
osCommerce Contributions
  Credit Modules
  Features
  Images
  InfoBoxes
  Languages
  Order Total Modules
  Other
  Payment Modules
  Reports
  Shipping Modules
  Templates/Themes
  Zones
osCommerce Articles
osCommerce Tutorials
  Installing osCommerce
  Configuring your store
  Adding categories
  Adding products
  Adding product attributes
  Configuring currency
  Adding payment modules
  Adding shipping modules
  Configuring sales tax
  Editing your home page
  Editing columns
  Editing header and footer
  Creating specials
  Managing customers
  Sending out a newsletter
  Sending out email
  Managing your banners
  Backup database
CRELoaded Tutorials
  Add Administrators
  Add Article Author
  Additional Images
  Create a New Page
  Define Mainpage
  Disable cc Encryption
  Disable Company Field
  Disable Country
  Disable Date of Birth
  Display broken images
  Easypopulate Export
  Email confirmation
  Insert Faq
  Max Package Weight
  Require Terms of Use
  Affiliate Newsletter
  Enable Cache
CB Power Affiliate
Tell A Friend
 

Tell someone you know about this product.

   OSHELPERS | OSCOMMERCE CONTRIBUTIONS | SHIPPING MODULES | 1222   


oscommerce PercentRatextotalsaleprice
[1222]
 
 
box_bg_l.gif.
"This Shipping Module is Uses a Percentage Rate based on the total amount purchased.

{ $234.16 x .14 } = $32.78

it also sets the minimum you will ship before flat rate is used.

if ( total sale is = to or greater than $36.00 then use

{ $234.16 x .14 } = $32.78

if not then use

(flat rate =$6.50)

You control all 3 setting in one module

this is not the actual code lol wish it was that easy lol

This is a Module it is like the original modules for 2.2 and it works just like them and you do not need to do anything but add the 2 php pages to the proper folders.

And then use them in the admin. area under Modules Shipping.

If you choose not to use them once you see them just simply delete the 2 files.
Enjoy.

For those weary of zip downloads:
below is 2 pages simply copy to notepad and save each as percent.php

page name: percent.php
location:catalog/includes/modules/shipping/

copy the following page

<?php
/*
$Id: percent.phps,v 2.2 2003/05/03 modifyed:WebyMaster-TWM dgw_ Exp $

osCommerce, Open Source E-Commerce Solutions
http://www.oscommerce.com

Copyright (c) 2001,2002 osCommerce

Released under the GNU General Public License
*/
class percent {
var $code, $title, $description, $icon, $enabled;

// class constructor
function percent() {
global $order;

$this->code = 'percent';
$this->title = MODULE_SHIPPING_PERCENT_TEXT_TITLE;
$this->description = MODULE_SHIPPING_PERCENT_TEXT_DESCRIPTION;
$this->sort_order = MODULE_SHIPPING_PERCENT_SORT_ORDER;
$this->icon = '';
$this->tax_class = MODULE_SHIPPING_PERCENT_TAX_CLASS;
$this->enabled = ((MODULE_SHIPPING_PERCENT_STATUS == 'True') ? true : false);

if ( ($this->enabled == true) && ((int)MODULE_SHIPPING_PERCENT_ZONE > 0) ) {
$check_flag = false;
$check_query = tep_db_query("select zone_id from " . TABLE_ZONES_TO_GEO_ZONES . " where geo_zone_id = '" . MODULE_SHIPPING_PERCENT_ZONE . "' and zone_country_id = '" . $order->delivery['country']['id'] . "' order by zone_id");
while ($check = tep_db_fetch_array($check_query)) {
if ($check['zone_id'] < 1) {
$check_flag = true;
break;
} elseif ($check['zone_id'] == $order->delivery['zone_id']) {
$check_flag = true;
break;
}
}

if ($check_flag == false) {
$this->enabled = false;
}
}
}

// class methods
function quote($method = '') {
global $order, $cart;

if (MODULE_SHIPPING_PERCENT_STATUS == 'True') {
$order_total = $cart->show_total();
}
if ($order_total >= MODULE_SHIPPING_PERCENT_LESS_THEN) {
$shipping_percent = $order_total * MODULE_SHIPPING_PERCENT_RATE;
}
else {
$shipping_percent = MODULE_SHIPPING_PERCENT_FLAT_USE;
}

$this->quotes = array('id' => $this->code,
'module' => MODULE_SHIPPING_PERCENT_TEXT_TITLE,
'methods' => array(array('id' => $this->code,
'title' => MODULE_SHIPPING_PERCENT_TEXT_WAY,
'cost' => $shipping_percent)));

if ($this->tax_class > 0) {
$this->quotes['tax'] = tep_get_tax_rate($this->tax_class, $order->delivery['country']['id'], $order->delivery['zone_id']);
}

if (tep_not_null($this->icon)) $this->quotes['icon'] = tep_image($this->icon, $this->title);

return $this->quotes;
}

function check() {
if (!isset($this->_check)) {
$check_query = tep_db_query("select configuration_value from " . TABLE_CONFIGURATION . " where configuration_key = 'MODULE_SHIPPING_PERCENT_STATUS'");
$this->_check = tep_db_num_rows($check_query);
}
return $this->_check;
}

function install() {
tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Enable Percent Shipping', 'MODULE_SHIPPING_PERCENT_STATUS', 'True', 'Do you want to offer percent rate shipping?', '6', '0', 'tep_cfg_select_option(array('True', 'False'), ', now())");
tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Percentage Rate', 'MODULE_SHIPPING_PERCENT_RATE', '.18', 'The Percentage Rate all .01 to .99 for all orders using this shipping method.', '6', '0', now())");
tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('A Flat Rate for orders under', 'MODULE_SHIPPING_PERCENT_LESS_THEN', '34.75', 'A Flat Rate for all orders that are under the amount shown.', '6', '0', now())");
tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('A Flat Rate of', 'MODULE_SHIPPING_PERCENT_FLAT_USE', '6.50', 'A Flat Rate used for all orders.', '6', '0', now())");
tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, use_function, set_function, date_added) values ('Tax Class', 'MODULE_SHIPPING_PERCENT_TAX_CLASS', '0', 'Use the following tax class on the shipping fee.', '6', '0', 'tep_get_tax_class_title', 'tep_cfg_pull_down_tax_classes(', now())");
tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, use_function, set_function, date_added) values ('Shipping Zone', 'MODULE_SHIPPING_PERCENT_ZONE', '0', 'If a zone is selected, only enable this shipping method for that zone.', '6', '0', 'tep_get_zone_class_title', 'tep_cfg_pull_down_zone_classes(', now())");
tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Sort Order', 'MODULE_SHIPPING_PERCENT_SORT_ORDER', '0', 'Sort order of display.', '6', '0', now())");
}

function remove() {
tep_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key in ('" . implode("', '", $this->keys()) . "')");
}

function keys() {
return array('MODULE_SHIPPING_PERCENT_STATUS', 'MODULE_SHIPPING_PERCENT_RATE', 'MODULE_SHIPPING_PERCENT_LESS_THEN', 'MODULE_SHIPPING_PERCENT_FLAT_USE', 'MODULE_SHIPPING_PERCENT_TAX_CLASS', 'MODULE_SHIPPING_PERCENT_ZONE', 'MODULE_SHIPPING_PERCENT_SORT_ORDER');
}
}
?>

........................................................................................................................................................................................................................................................



page name: percent.php
location:catalog/includes/languages/english/modules/shipping/

copy the following page

<?php
/*
$Id: percent.phps,v 2.2 2003/05/03 modifyed:WebyMaster-TWM dgw_ Exp $

osCommerce, Open Source E-Commerce Solutions
http://www.oscommerce.com

Copyright (c) 2001,2002 osCommerce

Released under the GNU General Public License
*/
define('MODULE_SHIPPING_PERCENT_TEXT_TITLE', 'Shipping');
define('MODULE_SHIPPING_PERCENT_TEXT_DESCRIPTION', 'Percent Rate');
define('MODULE_SHIPPING_PERCENT_TEXT_WAY', 'Total');
?>


.............................................................."

 


For more information, visit the official osCommerce contribution webpage.
box_bg_r.gif.
 

osHelpers

osHelpers