Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Shipping Module Help


lastblackjellybean

Recommended Posts

Hi all, I'm completely new to osCommerce so forgive me if the answer to this question is obvious.

 

The website i have just taken charge of uses flat rate shipping where the customer then chooses which rate they pay, for example UK weekday delivery, UK saturay delivery, european delivery all with a set price regardless of weight or number of items.

 

More options now need to be added, for example channel islands and scottish highlands delivery. At the moment in shipping modules there are 3 seperate modules for uk weekday, uk saturday and european delivery. Is it possible to somehow make copies of these and simply rename them and edit the cost to create the new modules or how should i go about it?

 

Thankyou in advance

Link to comment
Share on other sites

Hi all, I'm completely new to osCommerce so forgive me if the answer to this question is obvious.

 

The website i have just taken charge of uses flat rate shipping where the customer then chooses which rate they pay, for example UK weekday delivery, UK saturay delivery, european delivery all with a set price regardless of weight or number of items.

 

More options now need to be added, for example channel islands and scottish highlands delivery. At the moment in shipping modules there are 3 seperate modules for uk weekday, uk saturday and european delivery. Is it possible to somehow make copies of these and simply rename them and edit the cost to create the new modules or how should i go about it?

 

Thankyou in advance

I have made a copy of flat shipping module and have do all necessary modification.

Two files created.

Note: I have create a sign named "//changed" behind every line needs to be modify.

First:

catalog/includes/modules/shipping/flat2.php

<?php
/*
 $Id: flat.php,v 1.40 2003/02/05 22:41:52 hpdl Exp $

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

 Copyright (c) 2003 osCommerce

 Released under the GNU General Public License
*/

 class flat2 {   //changed
var $code, $title, $description, $icon, $enabled;

// class constructor
function flat2() {//changed
  global $order;

  $this->code = 'flat2';//changed
  $this->title = MODULE_SHIPPING_FLAT2_TEXT_TITLE;//changed
  $this->description = MODULE_SHIPPING_FLAT2_TEXT_DESCRIPTION;//changed
  $this->sort_order = MODULE_SHIPPING_FLAT2_SORT_ORDER;//changed
  $this->icon = '';
  $this->tax_class = MODULE_SHIPPING_FLAT2_TAX_CLASS;//changed
  $this->enabled = ((MODULE_SHIPPING_FLAT2_STATUS == 'True') ? true : false);//changed

  if ( ($this->enabled == true) && ((int)MODULE_SHIPPING_FLAT2_ZONE > 0) ) {//changed
	$check_flag = false;
	$check_query = tep_db_query("select zone_id from " . TABLE_ZONES_TO_GEO_ZONES . " where geo_zone_id = '" . MODULE_SHIPPING_FLAT2_ZONE . "' and zone_country_id = '" . $order->delivery['country']['id'] . "' order by zone_id");//changed
	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;

  $this->quotes = array('id' => $this->code,
						'module' => MODULE_SHIPPING_FLAT2_TEXT_TITLE,//changed
						'methods' => array(array('id' => $this->code,
												 'title' => MODULE_SHIPPING_FLAT2_TEXT_WAY,//changed
												 'cost' => MODULE_SHIPPING_FLAT2_COST)));//changed

  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_FLAT2_STATUS'");//changed
	$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 Flat Shipping', 'MODULE_SHIPPING_FLAT2_STATUS', 'True', 'Do you want to offer flat rate shipping?', '6', '0', 'tep_cfg_select_option(array(\'True\', \'False\'), ', now())");//changed
  tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Shipping Cost', 'MODULE_SHIPPING_FLAT2_COST', '5.00', 'The shipping cost for all orders using this shipping method.', '6', '0', now())");//changed
  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_FLAT2_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())");//changed
  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_FLAT2_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())");//changed
  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_FLAT2_SORT_ORDER', '0', 'Sort order of display.', '6', '0', now())");//changed
}

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

function keys() {
  return array('MODULE_SHIPPING_FLAT2_STATUS', 'MODULE_SHIPPING_FLAT2_COST', 'MODULE_SHIPPING_FLAT2_TAX_CLASS', 'MODULE_SHIPPING_FLAT2_ZONE', 'MODULE_SHIPPING_FLAT2_SORT_ORDER');//changed
}
 }
?>

 

catalog/includes/languages/modules/shipping/flat2.php

<?php
/*
 $Id: flat.php,v 1.5 2002/11/19 01:48:08 dgw_ Exp $

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

 Copyright (c) 2002 osCommerce

 Released under the GNU General Public License
*/

define('MODULE_SHIPPING_FLAT2_TEXT_TITLE', 'Flat2 Rate');//changed
define('MODULE_SHIPPING_FLAT2_TEXT_DESCRIPTION', 'Flat2 Rate');//changed
define('MODULE_SHIPPING_FLAT2_TEXT_WAY', 'Best Way2');//changed
?>

 

Upload to the correct folders and go to admin panel to install them.

Everyone is changing the world.

Everyone is a world.

For everyone needs my help, PM or email if I amn't online.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...