Page 3 of 4 FirstFirst 1234 LastLast
Results 21 to 30 of 33
  1. #21
    Join Date
    Sep 2003
    Location
    Ohio
    Posts
    69,402
    Plugin Contributions
    6

    Default Re: Multiple flat shipping rates

    You can do it with any of the Shipping Modules ...

    However, you must be careful in your replacements that you keep them case sensative and in the case of Table Rate that you do not change the word TABLE when it is referencing a table in the database ...
    Linda McGrath
    If you have to think ... you haven't been zenned ...

    Did YOU buy the Zen Cart Team a cup of coffee and a donut today? Just click here to support the Zen Cart Team!!

    Are you using the latest? Perhaps you've a problem that's fixed in the latest version: [Upgrade today!]
    Officially PayPal-Certified! Just click here

    Try our Zen Cart Recommended Services - Hosting, Payment and more ...
    Signup for our Announcements Forums to stay up to date on important changes and updates!

  2. #22
    Join Date
    Apr 2007
    Posts
    22
    Plugin Contributions
    0

    Default Re: Multiple flat shipping rates

    Thank you very much... I'll give er a try

  3. #23
    Join Date
    Apr 2007
    Posts
    22
    Plugin Contributions
    0

    Default Re: Multiple flat shipping rates

    There are 55 occurances of "table" in table.php and I'm not really confident which ones refer to a database and which ones don't. Could I get some help please? I want to name my new file tableFedExOvrNgt.php

    Code:
    <?php
    /**
     * @package shippingMethod
     * @copyright Copyright 2003-2005 Zen Cart Development Team
     * @copyright Portions Copyright 2003 osCommerce
     * @license http://www.zen-cart.com/license/2_0.txt GNU Public License V2.0
     * @version $Id: table.php 4184 2006-08-21 03:36:36Z ajeh $
     */
    /**
     * Enter description here...
     *
     */
    class table extends base {
      /**
       * Enter description here...
       *
       * @var unknown_type
       */
      var $code;
      /**
       * Enter description here...
       *
       * @var unknown_type
       */
      var $title;
      /**
       * Enter description here...
       *
       * @var unknown_type
       */
      var $description;
      /**
       * Enter description here...
       *
       * @var unknown_type
       */
      var $icon;
      /**
       * Enter description here...
       *
       * @var unknown_type
       */
      var $enabled;
      /**
       * Enter description here...
       *
       * @return table
       */
      function table() {
        global $order, $db;
        $this->code = 'table';
        $this->title = MODULE_SHIPPING_TABLE_TEXT_TITLE;
        $this->description = MODULE_SHIPPING_TABLE_TEXT_DESCRIPTION;
        $this->sort_order = MODULE_SHIPPING_TABLE_SORT_ORDER;
        $this->icon = '';
        $this->tax_class = MODULE_SHIPPING_TABLE_TAX_CLASS;
        $this->tax_basis = MODULE_SHIPPING_TABLE_TAX_BASIS;
        // disable only when entire cart is free shipping
        if (zen_get_shipping_enabled($this->code)) {
          $this->enabled = ((MODULE_SHIPPING_TABLE_STATUS == 'True') ? true : false);
        }
        if ( ($this->enabled == true) && ((int)MODULE_SHIPPING_TABLE_ZONE > 0) ) {
          $check_flag = false;
          $check = $db->Execute("select zone_id from " . TABLE_ZONES_TO_GEO_ZONES . " where geo_zone_id = '" . MODULE_SHIPPING_TABLE_ZONE . "' and zone_country_id = '" . $order->delivery['country']['id'] . "' order by zone_id");
          while (!$check->EOF) {
            if ($check->fields['zone_id'] < 1) {
              $check_flag = true;
              break;
            } elseif ($check->fields['zone_id'] == $order->delivery['zone_id']) {
              $check_flag = true;
              break;
            }
            $check->MoveNext();
          }
          if ($check_flag == false) {
            $this->enabled = false;
          }
        }
      }
      /**
       * Enter description here...
       *
       * @param unknown_type $method
       * @return unknown
       */
      function quote($method = '') {
        global $order, $shipping_weight, $shipping_num_boxes, $total_count;
        // shipping adjustment
        switch (MODULE_SHIPPING_TABLE_MODE) {
          case ('price'):
            $order_total = $_SESSION['cart']->show_total() - $_SESSION['cart']->free_shipping_prices() ;
            break;
          case ('weight'):
            $order_total = $shipping_weight;
            break;
          case ('item'):
            $order_total = $total_count - $_SESSION['cart']->free_shipping_items();
            break;
        }
        $table_cost = split("[:,]" , MODULE_SHIPPING_TABLE_COST);
        $size = sizeof($table_cost);
        for ($i=0, $n=$size; $i<$n; $i+=2) {
          if (round($order_total,9) <= $table_cost[$i]) {
            $shipping = $table_cost[$i+1];
            break;
          }
        }
        if (MODULE_SHIPPING_TABLE_MODE == 'weight') {
          $shipping = $shipping * $shipping_num_boxes;
          // show boxes if weight
          switch (SHIPPING_BOX_WEIGHT_DISPLAY) {
            case (0):
            $show_box_weight = '';
            break;
            case (1):
            $show_box_weight = ' (' . $shipping_num_boxes . ' ' . TEXT_SHIPPING_BOXES . ')';
            break;
            case (2):
            $show_box_weight = ' (' . number_format($shipping_weight * $shipping_num_boxes,2) . TEXT_SHIPPING_WEIGHT . ')';
            break;
            default:
            $show_box_weight = ' (' . $shipping_num_boxes . ' x ' . number_format($shipping_weight,2) . TEXT_SHIPPING_WEIGHT . ')';
            break;
          }
        }
        $this->quotes = array('id' => $this->code,
        'module' => MODULE_SHIPPING_TABLE_TEXT_TITLE . $show_box_weight,
        'methods' => array(array('id' => $this->code,
        'title' => MODULE_SHIPPING_TABLE_TEXT_WAY,
        'cost' => $shipping + MODULE_SHIPPING_TABLE_HANDLING)));
        if ($this->tax_class > 0) {
          $this->quotes['tax'] = zen_get_tax_rate($this->tax_class, $order->delivery['country']['id'], $order->delivery['zone_id']);
        }
        if (zen_not_null($this->icon)) $this->quotes['icon'] = zen_image($this->icon, $this->title);
        return $this->quotes;
      }
      /**
       * Enter description here...
       *
       * @return unknown
       */
      function check() {
        global $db;
        if (!isset($this->_check)) {
          $check_query = $db->Execute("select configuration_value from " . TABLE_CONFIGURATION . " where configuration_key = 'MODULE_SHIPPING_TABLE_STATUS'");
          $this->_check = $check_query->RecordCount();
        }
        return $this->_check;
      }
      /**
       * Enter description here...
       *
       */
      function install() {
        global $db;
        $db->Execute("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) VALUES ('Enable Table Method', 'MODULE_SHIPPING_TABLE_STATUS', 'True', 'Do you want to offer table rate shipping?', '6', '0', 'zen_cfg_select_option(array(\'True\', \'False\'), ', now())");
        $db->Execute("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Shipping Table', 'MODULE_SHIPPING_TABLE_COST', '25:8.50,50:5.50,10000:0.00', 'The shipping cost is based on the total cost or weight of items or count of the items. Example: 25:8.50,50:5.50,etc.. Up to 25 charge 8.50, from there to 50 charge 5.50, etc', '6', '0', 'zen_cfg_textarea(', now())");
        $db->Execute("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Table Method', 'MODULE_SHIPPING_TABLE_MODE', 'weight', 'The shipping cost is based on the order total or the total weight of the items ordered or the total number of items orderd.', '6', '0', 'zen_cfg_select_option(array(\'weight\', \'price\', \'item\'), ', now())");
        $db->Execute("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Handling Fee', 'MODULE_SHIPPING_TABLE_HANDLING', '0', 'Handling fee for this shipping method.', '6', '0', now())");
        $db->Execute("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_TABLE_TAX_CLASS', '0', 'Use the following tax class on the shipping fee.', '6', '0', 'zen_get_tax_class_title', 'zen_cfg_pull_down_tax_classes(', now())");
        $db->Execute("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Tax Basis', 'MODULE_SHIPPING_TABLE_TAX_BASIS', 'Shipping', 'On what basis is Shipping Tax calculated. Options are<br />Shipping - Based on customers Shipping Address<br />Billing Based on customers Billing address<br />Store - Based on Store address if Billing/Shipping Zone equals Store zone', '6', '0', 'zen_cfg_select_option(array(\'Shipping\', \'Billing\', \'Store\'), ', now())");
        $db->Execute("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_TABLE_ZONE', '0', 'If a zone is selected, only enable this shipping method for that zone.', '6', '0', 'zen_get_zone_class_title', 'zen_cfg_pull_down_zone_classes(', now())");
        $db->Execute("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Sort Order', 'MODULE_SHIPPING_TABLE_SORT_ORDER', '0', 'Sort order of display.', '6', '0', now())");
      }
      /**
       * Enter description here...
       *
       */
      function remove() {
        global $db;
        $db->Execute("delete from " . TABLE_CONFIGURATION . " where configuration_key in ('" . implode("', '", $this->keys()) . "')");
      }
      /**
       * Enter description here...
       *
       * @return unknown
       */
      function keys() {
        return array('MODULE_SHIPPING_TABLE_STATUS', 'MODULE_SHIPPING_TABLE_COST', 'MODULE_SHIPPING_TABLE_MODE', 'MODULE_SHIPPING_TABLE_HANDLING', 'MODULE_SHIPPING_TABLE_TAX_CLASS', 'MODULE_SHIPPING_TABLE_TAX_BASIS', 'MODULE_SHIPPING_TABLE_ZONE', 'MODULE_SHIPPING_TABLE_SORT_ORDER');
      }
    }
    ?>

  4. #24
    Join Date
    Apr 2007
    Posts
    22
    Plugin Contributions
    0

    Default Re: Multiple flat shipping rates

    Anyone?

  5. #25
    Join Date
    Sep 2003
    Location
    Ohio
    Posts
    69,402
    Plugin Contributions
    6

    Default Re: Multiple flat shipping rates

    Hint 1: table.php is called table.php not tAbLe.php

    Hint 2: tableFedExOvrNgt.php is not going to go over big in the code as table.php is table.php and not tAbLe.php that should be tablefedexovrnght.php

    Hint 3: table.php uses table and TABLE

    Hint 4: tablefedexovrnght.php uses tablefedexovrnght and TABLEFEDEXOVRNGT

    Take 2 ... try again ...
    Linda McGrath
    If you have to think ... you haven't been zenned ...

    Did YOU buy the Zen Cart Team a cup of coffee and a donut today? Just click here to support the Zen Cart Team!!

    Are you using the latest? Perhaps you've a problem that's fixed in the latest version: [Upgrade today!]
    Officially PayPal-Certified! Just click here

    Try our Zen Cart Recommended Services - Hosting, Payment and more ...
    Signup for our Announcements Forums to stay up to date on important changes and updates!

  6. #26
    Join Date
    Apr 2007
    Posts
    22
    Plugin Contributions
    0

    Default Re: Multiple flat shipping rates

    Ah... your riddles are killing me! BTW... What part of Ohio you from Ajeh? I grew up near Akron/Canton

  7. #27
    Join Date
    Sep 2003
    Location
    Ohio
    Posts
    69,402
    Plugin Contributions
    6

    Default Re: Multiple flat shipping rates

    Cleveland area ...

    Do a search on flat clone or cloning flat for further examples ... there are many threads on cloning shipping modules that can help you further ...

    Hint 5: the constants that start with the word TABLE_ are not related to the code for the Table Rate Shipping module but rather to the database tables ...
    Linda McGrath
    If you have to think ... you haven't been zenned ...

    Did YOU buy the Zen Cart Team a cup of coffee and a donut today? Just click here to support the Zen Cart Team!!

    Are you using the latest? Perhaps you've a problem that's fixed in the latest version: [Upgrade today!]
    Officially PayPal-Certified! Just click here

    Try our Zen Cart Recommended Services - Hosting, Payment and more ...
    Signup for our Announcements Forums to stay up to date on important changes and updates!

  8. #28

    Default Re: Multiple flat shipping rates

    Will something along these lines work for duplicating the Per Item shipping module also?

    I need two Per Item rates for the US (standard and priority).

    I tried applying these same steps to the Per Item module but end up with this error:

    Code:
    1062 Duplicate entry 'MODULE_SHIPPING_ITEM_STATUS' for key 2
    in:
    [insert into configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Enable Item Shipping', 'MODULE_SHIPPING_ITEM_STATUS', 'True', 'Do you want to offer per item rate shipping?', '6', '0', 'zen_cfg_select_option(array(\'True\', \'False\'), ', now())]
    If you were entering information, press the BACK button in your browser and re-check the information you had entered to be sure you left no blank fields.
    ----------------------------------------------------
    Letting Zen Cart give me migraines since '06!

    Phil Leitch
    http://unwounddesign.com
    ----------------------------------------------------

  9. #29
    Join Date
    Sep 2003
    Location
    Ohio
    Posts
    69,402
    Plugin Contributions
    6

    Default Re: Multiple flat shipping rates

    This belongs to the item.php ...
    MODULE_SHIPPING_ITEM_STATUS

    You cannot have duplicate constants in the shipping modules ...
    Linda McGrath
    If you have to think ... you haven't been zenned ...

    Did YOU buy the Zen Cart Team a cup of coffee and a donut today? Just click here to support the Zen Cart Team!!

    Are you using the latest? Perhaps you've a problem that's fixed in the latest version: [Upgrade today!]
    Officially PayPal-Certified! Just click here

    Try our Zen Cart Recommended Services - Hosting, Payment and more ...
    Signup for our Announcements Forums to stay up to date on important changes and updates!

  10. #30

    Default Re: Multiple flat shipping rates

    Actually I just thankfully figured out a different way to accomplish what I needed to do.

    I set up the US as a zone in the Zone Shipping module and used that for US standard shipping rates.

    I then used the Per Item module to set up a US Priority shipping rate.

    Works fine. Not sure why it took me three months to see that as a shipping "hack".

    Oh well.
    ----------------------------------------------------
    Letting Zen Cart give me migraines since '06!

    Phil Leitch
    http://unwounddesign.com
    ----------------------------------------------------

 

 
Page 3 of 4 FirstFirst 1234 LastLast

Similar Threads

  1. v151 US and International Shipping Flat Rates plus calculated shipping rates.
    By Rick5150 in forum Built-in Shipping and Payment Modules
    Replies: 5
    Last Post: 22 Jan 2013, 10:48 PM
  2. Multiple Flat Shipping rates
    By SKlos in forum Built-in Shipping and Payment Modules
    Replies: 8
    Last Post: 16 Nov 2010, 04:50 PM
  3. Multiple flat rates for shipping
    By jmouse in forum Built-in Shipping and Payment Modules
    Replies: 6
    Last Post: 18 May 2007, 08:07 AM
  4. Multiple Flat Rates
    By matt g in forum Built-in Shipping and Payment Modules
    Replies: 1
    Last Post: 13 Nov 2006, 02:46 PM
  5. Multiple Flat Rates Shipping
    By gems14k in forum Built-in Shipping and Payment Modules
    Replies: 9
    Last Post: 10 Aug 2006, 02:13 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
disjunctive-egg