Jump to content
  • Checkout
  • Login
  • Get in touch


The e-commerce.


  • Content count

  • Joined

  • Last visited

Posts posted by potatocake

  1. I installed the latest version - 2.8 by wdepot - from here.


    In create_account.php for instance, when I from the drop down menu choose a zone that holds a special character the page won't accept that zone. But if I change a zone name in the database like from Skåne to Skåne, the zone will be accepted.


    In the install document the author emphasises the importance of using special characters. Anyone knows what I need to do in order to be able to keep all the zones that contains html special characters?



    Was wondering if you or anyone has found a fix for this? If there isnt a fix for this and you installed the world zones by wdepot you will get errors with zones with special chars in the text file. Eg. Try creating an account with Faroe Islands or Norway on your store.

  2. Hi,


    I have installed WorldPay Junior Select on to my site and have gotten activation from worldpay to go from Test to Live. I would like some help urgently on how to integrate Futurepay on to my site. The only contribution I found was for just WorldPay not WorldPay Junior Select and it is not very helpful to modify for Junior Select as it shows I am suppose to add code after a particular line that cant be found.


    The URL for this addon is as follows: Futurepay addon


    If anyone has integrated futurepay successfully please reply to this thread or send me a pm. Or if this question has been answered if you could please point me to the right thread, I have used the search functions and found that most futurepay threads were not answered.


    Need help asap.


    Thank You

  3. Hi, I've just recently setup the Horizontal drop-down menu into my oscommerce site.


    My question is - why doesnt the subcategories expand from the main category untill u have clicked the main category?


    i.e: i have 4 categories - A, B, C & D . Category A and category B has subcategories. When I mouseover category A or B, a drop-down menu does not appear. The drop-down menu appears only after I have clicked on the main category (A or B). What do I have to change so that the drop-down sub-categories will show when I mouseover the main category?


    Below is my dm_categories.php ;






    $Id: dm_categories.php,v 1.00 2006/05/07 01:13:58 nate_02631 Exp $


    Ties the store category menu into the PHP Layers Menu library, allowing display

    of categories as DTHML drop-down or fly-out menus, collapsable tree-style menus

    or horizontal/vertical indented plain menus.


    osCommerce, Open Source E-Commerce Solutions



    Copyright © 2006 Nate Welch http://www.natewelch.com


    Released under the GNU General Public License



    // BEGIN Configuration Options


    // Set the value below corresponding to the type of menu you want to render

    // 0 = Horizontal Drop-down; 1 = Vertical Flyout; 2 = Tree Menu;

    // 3 = Plain Horizontal Menu; 4 = Plain Vertical Menu

    // Include the appropriate stylesheet in your store stylesheet, and if rendering

    // types '0' or '1', you must also echo (output) the "menu footer" variable

    // in your store footer as described in the readme (or submenus won't work)

    $menu_type = 0;


    // Set to false to display the menu output only. Set to true to display in

    // a regular box. The former is useful for better integrating the menu with your layout.

    $show_dmcats_as_box = false;


    // Set to 'true' to assign TITLE tags to each of the menu's items, 'false' to leave blank

    $menu_use_titles = false;


    // Name of the icon file to be used preceding menu items. Leave blank for no icons.

    // NOTE: Does not apply to plain style menus. Icon should be in the /images directory

    $menu_icon_file = '';


    // Width and height of icons used in menus (does not apply to plain menus).

    $menu_icon_width = 16;

    $menu_icon_height = 16;


    // Set the graphic to be used for the forward arrow and down arrow images used in

    // drop-down and fly-out menus. Images must reside in your catalog's /images directory

    $menu_fwdarrowimg = 'forward-arrow.png';

    $menu_downarrowimg = 'down-arrow.png';


    // Indicates whether or not to render your entire category list or just the root categories

    // and the currently selected submenu tree. Rendering the full list is useful for dynamic menu

    // generation where you want the user to have instant access to all categories. The other option

    // is the default oSC behaviour, when the subcats aren't available until the parent is clicked,

    // more suitable for plain-style menus

    $show_full_tree = true;


    // For tree menus, set to true to have only nodes corresponding to the current category path

    // expanded. If set to false, the tree menu will retain expanded/collapse nodes the user has

    // selected (as well as expanding any for categories they've entered)

    $menu_tree_current_path = true;


    // Set the three numerical values below to adjust the offset of submenus in

    // horizontal drop-down and vertical fly-out menus. Values adjust the following (in order)

    // Top Offset: # of pixels from top border of previous menu the submenu appears

    // Right Offset: # of pixels from right border of previous menu the submenu appears

    // Left Offset: # of pixels from left border of previous menu the submenu appears

    // if the submenu pops to left (i.e. if window border is reached). Negative values are allowed.

    $menu_layer_offset = array (0,4,4);


    // Show icons on tree menus? If set to false, only expand/collapse icons and connecting lines are shown

    $GLOBALS['dm_tree_folder_icons'] = true;


    // This is the HTML that you would like to appear before/after your categories menu if *not*

    // displaying in a standard "box". This is useful for reconciling tables or clearing

    // floats, depending on your layout needs. For example if not including in a box in the

    // default osC template, you would need opening/closing <tr><td> tags...

    $before_nobox_html = '';

    $after_nobox_html = '';


    // Use this option if you have a *lot* of subcategories in a DHTML style menu and your

    // submenus won't fit on the page. Set $divide_subcats to the max # of subcategories you want

    // to display. The menu will show a "more..." link and display the remaining subcategories

    // under that selection. Leave at "0" to not divide your subcategories.

    $divide_subcats = 0;


    // The text you want to display to indicate more subcategories are available

    // This can be set a string or to a language constant you define.

    $divide_subcats_text = 'more...';


    // END Configuration Options



    // Misc setting to make folder icon clickable to expand tree menu nodes

    $GLOBALS['dm_tree_titleclick'] = true;


    // Initialize HTML and info_box class if displaying inside a box

    if ($show_dmcats_as_box) {

    echo '<tr><td>';

    $info_box_contents = array();

    $info_box_contents[] = array('text' => BOX_HEADING_CATEGORIES);

    new infoBoxHeading($info_box_contents, true, false);



    // Generate the menu data output (uses configuration options above)

    $categories_string = tep_make_cat_dmlist();


    // Include required libraries based on menu type

    require_once 'includes/functions/dynamenu/lib/PHPLIB.php';

    require_once 'includes/functions/dynamenu/lib/layersmenu-common.inc.php';


    if ($menu_type < 2) { // Setup for DHTML style menus



    <script language="JavaScript" type="text/javascript">


    <?php require_once 'includes/functions/dynamenu/libjs/layersmenu-browser_detection.js'; ?>

    // -->


    <script language="JavaScript" type="text/javascript" src="includes/functions/dynamenu/libjs/layersmenu-library.js"></script>

    <script language="JavaScript" type="text/javascript" src="includes/functions/dynamenu/libjs/layersmenu.js"></script>



    require_once 'includes/functions/dynamenu/lib/layersmenu.inc.php';

    $mid = new LayersMenu($menu_layer_offset[0],$menu_layer_offset[1],$menu_layer_offset[2],1);


    } elseif ($menu_type > 2) { // Setup for plain style menus


    require_once 'includes/functions/dynamenu/lib/plainmenu.inc.php';

    $mid = new PlainMenu();


    } else { // Setup for tree style menus



    <script language="JavaScript" type="text/javascript">


    <?php require_once 'includes/functions/dynamenu/libjs/layersmenu-browser_detection.js'; ?>




    if ($menu_tree_current_path) {

    echo "\n".'var menu_tree_current_path = true';

    } else {

    echo "\n".'var menu_tree_current_path = false';




    // -->


    <script language="JavaScript" type="text/javascript" src="includes/functions/dynamenu/libjs/layerstreemenu-cookies.js"></script>



    require_once 'includes/functions/dynamenu/lib/treemenu.inc.php';

    $mid = new TreeMenu();




    // Set menu config variables




    if ($menu_type !=2) {








    $mid->setIconsize($menu_icon_width, $menu_icon_height);


    // Generate menus




    switch ($menu_type) {

    case 0: // Horizontal drop-down







    $categories_menu = $mid->getMenu('catmenu');

    $GLOBALS['dmfooter'] = $mid->getFooter();


    case 1: // Vertical fly-out







    $categories_menu = $mid->getMenu('catmenu');

    $GLOBALS['dmfooter'] = $mid->getFooter();


    case 2: // Tree menu

    $categories_menu = $mid->newTreeMenu('catmenu');


    case 3: // Horizontal plain menu


    $categories_menu = $mid->newHorizontalPlainMenu('catmenu');


    case 4: // Vertical plain menu


    $categories_menu = $mid->newPlainMenu('catmenu');





    // Output list inside a box if specified, otherwise just output unordered list

    if ($show_dmcats_as_box) {

    $info_box_contents = array();

    $info_box_contents[] = array('text' => $categories_menu);

    new infoBox($info_box_contents);

    echo '</td></tr>';

    } else {

    echo $before_nobox_html;

    echo $categories_menu;

    echo $after_nobox_html;



    // Create the root category list

    function tep_make_cat_dmlist($rootcatid = 0, $maxlevel = 0){


    global $cPath_array, $show_full_tree, $languages_id;


    global $idname_for_menu, $cPath_array, $show_full_tree, $languages_id;


    // Modify category query if not fetching all categories (limit to root cats and selected subcat tree)

    if (!$show_full_tree) {

    $parent_query = 'AND (c.parent_id = "0"';


    if (isset($cPath_array)) {


    $cPath_array_temp = $cPath_array;


    foreach($cPath_array_temp AS $key => $value) {

    $parent_query .= ' OR c.parent_id = "'.$value.'"';






    $parent_query .= ')';

    } else {

    $parent_query = '';



    $result = tep_db_query('select c.categories_id, cd.categories_name, c.parent_id from ' . TABLE_CATEGORIES . ' c, ' . TABLE_CATEGORIES_DESCRIPTION . ' cd where c.categories_id = cd.categories_id and cd.language_id="' . (int)$languages_id .'" '.$parent_query.'order by sort_order, cd.categories_name');


    while ($row = tep_db_fetch_array($result)) {

    $table[$row['parent_id']][$row['categories_id']] = $row['categories_name'];



    $output .= tep_make_cat_dmbranch($rootcatid, $table, 0, $maxlevel);


    return $output;



    // Create the branches off the category list

    function tep_make_cat_dmbranch($parcat, $table, $level, $maxlevel) {


    global $cPath_array, $menu_use_titles, $menu_icon_file, $divide_subcats, $divide_subcats_text;


    $lvl_adjust = 1;


    $list = $table[$parcat];


    // Build data for menu

    while(list($key,$val) = each($list)){


    if (isset($cPath_array) && in_array($key, $cPath_array)) {

    $this_expanded = '1';

    $this_selected = 'dmselected';

    } else {

    $this_expanded = '';

    $this_selected = '';



    if (!$level) {


    $GLOBALS['cPath_set'][0] = $key;

    $cPath_new = 'cPath=' . $key;


    } else {

    $GLOBALS['cPath_set'][$level] = $key;

    $cPath_new = 'cPath=' . implode("_", array_slice($GLOBALS['cPath_set'], 0, ($level+1)));





    if ($menu_use_titles) {

    $this_title = $val;

    } else {

    $this_title = '';



    if (SHOW_COUNTS == 'true') {

    $products_in_category = tep_count_products_in_category($key);

    if ($products_in_category > 0) {

    $val .= ' (' . $products_in_category . ')';




    // Output for file to be parsed by PHP Layers Menu

    // Each line (terminated by a newline "\n" is a pipe delimited string with the following fields:

    // [dots]|[text]|[link]|[title]|[icon]|[target]|[expanded]

    // dots - number of dots signifies the level of the link '.' root level items, '..' first submenu, etc....

    // text - text for link; title - tooltip for link; icon - icon for link; target - "dmselected" CSS class if item is selected

    // expanded - signifies if the node is expanded or collapsed by default (applies only to tree style menus)


    // Add "more" submenu if dividing subcategories

    if ($this_subcat_count > $divide_subcats && $divide_subcats) {

    $output .= str_repeat(".", $level+$lvl_adjust).'|'.$divide_subcats_text.'||'.$this_title.'|'.$menu_icon_file.'|'.$this_selected.'|'.$this_expanded."\n";

    $this_subcat_count = 1;

    $lvl_adjust ++;



    $output .= str_repeat(".", $level+$lvl_adjust).'|'.$val.'|'.tep_href_link(FILENAME_DEFAULT, $cPath_new).'|'.$this_title.'|'.$menu_icon_file.'|'.$this_selected.'|'.$this_expanded."\n";



    if ((isset($table[$key])) AND (($maxlevel > $level + 1) OR ($maxlevel == '0'))) {

    $output .= tep_make_cat_dmbranch($key,$table,$level + $lvl_adjust,$maxlevel);



    } // End while loop


    return $output;




  4. Hi,


    I just installed this contribution and its working great but I have a question. I have multiple currencies on my site with AUD as default but when I set an option value of a product attribute to be a certain amount for example:




    and when the user switch currencies to USD this amount gets converted. Is there any way to stop this conversion? As I would like to set it as the amount of 40 for all currencies. So say:


    Currency is selected as AUD

    Product A

    Option Price = AUD40


    Currency is selected as USD


    Product A

    Option Price = USD40


    If any1 has any idea that a contribution or modification to the OTF that would do that, i would very much like some help or information. :)


    thank you

  5. Need some help just installed the latest CCGV at



    Am having the following error in /includes/modules/payment/paypal_standard.php

    Fatal error: Call to a member function update_credit_account() on a non-object in includes/modules/payment/paypal_standard.php on line 471


    This is when returning from paypal site after the transaction has gone through. It has the CCGV fix describe on the site.


    It is kinda urgent so if anyone has any idea why it would be great.

  6. Hi,


    I am thinking of installing newsdesk contribution but could someone show me a live demo of it in english. So far the only one Ive found is in persian...cant read persian unfortunately.


    Also for most newsdesk users which release is the most stable at this point?


    Thank you

  7. Hi,

    I have just installed this contribution and i need some help in creating my rss.xml file. I used the code suggested in one of the posts to create a php file called create_rss.php. Placed this file in catalog/admin/ also set the chmods to 777 as well as the catalog/rss.php to 777 it seems to redirect back me correctly to the admin page but no .xml file can be found anywhere.


    Could I please please get some help on this thanks

  8. Hi,


    I have placed a create_rss.php file with the following code:


      //$filename = DIR_FS_DOCUMENT_ROOT . FILENAME_RSS;
    //if (is_writable($filename)) {
     // open a file pointer to an RSS file
     $fp = fopen (DIR_FS_DOCUMENT_ROOT . FILENAME_RSS, "w");
     // Now write the header information
     fwrite ($fp, "<?xml version='1.0' ?><rss version='2.0'><channel>”);
     fwrite ($fp, “<title>Your Title</title>");
     fwrite ($fp, "<link>" . HTTP_SERVER . "</link>");
     fwrite ($fp, "<description>Your description</description>");
     fwrite ($fp, "<language>en-us</language>");
     fwrite ($fp, "<docs>" . HTTP_SERVER . DIR_WS_CATALOG . FILENAME_RSS . "</docs>");
      $news_query_raw = tep_db_query("select * from " . TABLE_NEWS . " order by id desc limit 10");
       while ($content_rec = tep_db_fetch_array($news_query_raw)) {
    	fwrite ($fp, "<item>");
    	$headline = $content_rec['name'];
    	$date = 'Date: ' . tep_date_short($content_rec['date_created']);
    	$content_1 = substr($content_rec['content'], 0, 250);
    	$content = strip_tags($content_1);
    	if (strlen($content_rec['content']) > 250) {
    		$content = $content . "....";
    	fwrite ($fp, "<title>$headline</title>");
    	fwrite ($fp, "<pubDate>$date</pubDate>");
    	fwrite ($fp, "<description>$content</description>");
    	$item_link = HTTP_SERVER . DIR_WS_CATALOG . FILENAME_NEWS . "?article=" . $content_rec['id'];
    	fwrite ($fp, "<link>$item_link</link>");
    	fwrite ($fp, "</item>");
       fwrite ($fp, "</channel></rss>");
    fclose ($fp);
      tep_redirect(tep_href_link(FILENAME_NEWS, 'update=true'));
    // } else {
      // tep_redirect(tep_href_link(FILENAME_NEWS, 'update=false'));
    // }


    in the location of catalog/admin


    I tried running this file and setting its chmod permissions to 777 but im getting these errors

    Warning: fopen(/public_html/rss.php) [function.fopen]: failed to open stream: Permission denied in /public_html/admin/create_rss.php on line 8
    Warning: fwrite(): supplied argument is not a valid stream resource in /public_html/admin/create_rss.php on line 13
    Warning: fwrite(): supplied argument is not a valid stream resource in /public_html/admin/create_rss.php on line 15
    Warning: fwrite(): supplied argument is not a valid stream resource in /public_html/admin/create_rss.php on line 17
    Warning: fwrite(): supplied argument is not a valid stream resource in /public_html/admin/create_rss.php on line 19
    Warning: fwrite(): supplied argument is not a valid stream resource in /public_html/admin/create_rss.php on line 21


    Could i get some help as to how this is done properly. I havent been able to find a post with the full instructions on how to do this.


    Thanks heaps


    Hi Alex,


    Thanks for replying so quickly, I have actually did the fix in the ipn.php searched on one of your threads. Its not displaying in admin anymore but still is in the email labelled:

    PayPal EC IPN Error

    [Completed (PayPal account:Verified; USD 3.19)]
    Toatl amount did not match
    Address status: unconfirmed


    But the IPN contribution is fine right? Theres no problems with the transactions going back and forth at all in the long term? Sorry just double checking before going live.



    Another question is if I would like to change anything on the language file do I have to reinstall the paypal IPN to show the changes?

    Thanks alot :)

  10. Hi Alex,


    Great contribution btw. Just would like to double check something with you regarding the Paypal IPN dump email. My shopping cart is in MYR(Malaysian Currency) i have set the following options within paypal to accept payments in other currencies and convert to USD which is the currency set for both test merchant and buyer accounts.


    Though the transactions are going through completed I am getting this below on the dump (bold text):

    This order has been updated to the following status and requires your attention.
    New status: Pending
    The IPN response contained following message:
    [Completed (PayPal account:Verified; USD 3.19)]
    [b]Total amount did not match
    Address status: unconfirmed[/b]
    OrderTotal= MYR 10.28


    As well as on my admin orders page:

    PayPal IPN Verified
    [Completed (PayPal account:Verified; USD 3.19)] --> though it has converted the amount to usd correctly
    Total amount did not match
    Address status: unconfirmed


    Sorry I am not sure exactly what is the correct output of the IPN email dump. Is this something I should be worried about? as in would that be a problem with the transaction through IPN? If you could kindly explain what it means it would be much appreciated.


    Thanks alot

  11. What did you end up doing that resolved your SSL issue (good for future reference or someone doing a search on this topic)?


    It wasnt an STS issue it was due to the configure.php file within catalog/includes/local was not set correctly, my mistake.

  12. All I can tell you is that STS will not cause any SSL issues with your shop. Of course, if you do not create your links correctly, then you could be causing some SSL issues within your templates. You mentioned that you checked all of your images to be sure the paths were relative, good. Also check for your stylesheet link.


    Besides links, check with whomever you purchased the cert from to be sure that you have it configured correctly.


    Here is a google search that may assist you in getting this worked out:



    Its all sorted now. Thanks alot.

  13. Hi Bill,


    Do you think you could help me please on my issue. No one in the support forums seems to be replying to any of my threads at all. The only thing I have found to work was to hardcode on every sts_template https:// but I understand that is not the correct way of doing things but I cant seem to find any solution. Somehow the base href keeps redirecting to http instead. Am I suppose to place links from my http:// index page to https://login page for this to work?

  14. Hi,


    I really really need some help with STS installed on my Oscommerce and SSL. NonSSL pages work fine, but I have just installed a SSL cert from GoDaddy. Somehow the base href is not changing in my login pages eventhough I have tried most of the tests on the forums and searching on google. The line:

    $request_type = (getenv('HTTPS') == 'on') ? 'SSL' : 'NONSSL';

    is suppose to be right for me as Ive done a test with the following php code from one of the forum topics:

     echo 'HTTP HOST: ' . "$HTTP_HOST";
    echo '<br>Server Port: ' . getenv('SERVER_PORT'); //-->displays 443
    echo '<br>SSL Status: ' . getenv('HTTPS');//--displays 'on;
    echo '<br>Fowarded Server: ' . getenv('HTTP_X_FORWARDED_SERVER');
    echo '<br>Fowarded Host: ' . getenv('HTTP_X_FORWARDED_HOST');
    echo '<br>Fowarded By: ' . getenv('HTTP_X_FORWARDED_BY');


    With admin it is working fine, it directs straight to https. so I assume the config files are working correctly. But the catalog is not working. Ive followed this thread and used absolute/relative urls for everything. Ive even moved all my images to the sts_templates/images folder and tried with $templatedir infront of all the image links. But its still not working. I did a page source with where I place areas with templatedir it didnt state the url address except the path: /includes/sts_templates/full/images/


    Heres the code in my general.php which is the default code from STS4.58

    $sts->template['templatedir'] = substr(((($request_type == 'SSL') ? DIR_WS_HTTPS_CATALOG : DIR_WS_HTTP_CATALOG) . STS_TEMPLATE_DIR),0,-1);


    I really really need some help as I am not sure if I am doing it correctly with the STS templates or is there another reason that might be causing the problem. I have a dedicated ip address and the SSL was installed on this host: www.d3bakery.com


    Here are my config files



      define('HTTP_SERVER', 'http://www.d3bakery.com');
     define('HTTPS_SERVER', 'https://www.d3bakery.com');
     define('ENABLE_SSL', true);
     define('HTTP_COOKIE_DOMAIN', 'www.d3bakery.com');
     define('HTTPS_COOKIE_DOMAIN', 'www.d3bakery.com');
     define('HTTP_COOKIE_PATH', '/');
     define('HTTPS_COOKIE_PATH', '/');
     define('DIR_WS_HTTP_CATALOG', '/');
     define('DIR_WS_HTTPS_CATALOG', '/');






       define('HTTP_SERVER', 'https://www.d3bakery.com');
     define('HTTP_CATALOG_SERVER', 'https://www.d3bakery.com');
     define('HTTPS_CATALOG_SERVER', 'https://www.d3bakery.com');
     define('ENABLE_SSL_CATALOG', true);




    If anyone could get back to me soon it would be much appreciated. I really need help to get this working and have been searching around for days for a solution. Please help.


    Thanks alot

  15. Your SQL doesn't work for me, or for anybody who might have reloaded their countries table, or changed the format of their zones table. A query that does work for me is this one using a MySQL variable and named insert columns:


    Sorry if it doesnt work for you I was hoping people could elaborate or change the SQL to suit. Because my zones table only displays zones from Malaysia only so Ive actually got a drop table SQL query that drops the table before the inserts of new values in. But I didnt display the drop table query with people who have different zones other than those of malaysia as it would be an inappropriate thing to do. Thanks for updating and correcting me though. :)


    I'll update the malaysiastate module to use the new state names. This all exposes a bit of a flaw with hard-coded shipping calculations though: installing an updated module will result in the loss of any local modifications to the zones or rates. I'll try splitting the module into the rating part and a 'require'd rates part that must be renamed on first installation.


    Before you change it to Wilayah Persekutuan you might want to check with your courier company first in the event they separated their costs for the federal territories - KL, Putrajaya, Labuan. Im using this because my shipping is using the domestic PosLaju postal states.

  16. Yes, you have to install each zone individually. Maybe someone could write a little piece of SQL to do it copy-and-paste, but there are only 14 states, so it's not that bad. This is how my zones page looks:


    Country	  Zones	  Code
    Malaysia	  Johor	  Johor	   
    Malaysia 	Kedah 	Kedah
    Malaysia 	Kelantan 	Kelantan
    Malaysia 	Kuala Lumpur 	Kuala Lumpur
    Malaysia 	Malacca 	Melaka
    Malaysia 	Negeri Sembilan 	Negeri Sembilan
    Malaysia 	Pahang 	Pahang 
    Malaysia 	Penang 	Penang
    Malaysia 	Perak 	Perak
    Malaysia 	Perlis 	Perlis
    Malaysia 	Sabah 	Sabah
    Malaysia 	Sarawak 	Sarawak 
    Malaysia 	Selangor 	Selangor 
    Malaysia 	Terengganu 	Terengganu


    I don't know what happened to Malacca, seems to work out ok.


    Yup everything works out fine thanks heaps for the contribution. Melaka is the spelling in malaysia for the state from our country's language. Though in English its called Malacca. Local people usually spell it as the Malay name instead of Malacca.


    Ive actually created an sql query which people could update their zones table for local. It uses all the states that are categorised from Pos Malaysia. Here it is

    #Malaysia states taken from www.pos.com.my
    INSERT INTO zones VALUES (NULL,129,'Wilayah Persekutuan','Wilayah Persekutuan');
    INSERT INTO zones VALUES (NULL,129,'Selangor','Selangor');
    INSERT INTO zones VALUES (NULL,129,'Terengganu','Terengganu');
    INSERT INTO zones VALUES (NULL,129,'Sarawak','Sarawak');
    INSERT INTO zones VALUES (NULL,129,'Kedah','Kedah');
    INSERT INTO zones VALUES (NULL,129,'Kelantan','Kelantan');
    INSERT INTO zones VALUES (NULL,129,'Negeri Sembilan','Negeri Sembilan');
    INSERT INTO zones VALUES (NULL,129,'Sabah','Sabah');
    INSERT INTO zones VALUES (NULL,129,'Pulau Pinang','Pulau Pinang');
    INSERT INTO zones VALUES (NULL,129,'Johor','Johor');
    INSERT INTO zones VALUES (NULL,129,'Melaka','Melaka');
    INSERT INTO zones VALUES (NULL,129,'Perlis','Perlis');
    INSERT INTO zones VALUES (NULL,129,'Perak','Perak');
    INSERT INTO zones VALUES (NULL,129,'Pahang','Pahang');


    Note: Values are respective in this order - zone_id, zone_country_id, zone_code, zone_name. Same as in your zones table.


    The Federal Territory (Malay: Wilayah Persekutuan) is a collective of three territories, namely Kuala Lumpur, Putrajaya and Labuan if your wondering where Kuala Lumpur went.

  17. @potatocake: Sounds like a conflict with another contribution.



    Hi dynamo,


    I think the problem could be the fact that my products are sending a malaysian currency but the default for the paypal contribution is USD. I did install the currency converter but that didnt help either.


    Anyways I had to remove the whole contribution :( as I just got a reply from Paypal that I am unable to use this contribution for my country.


    Thanks alot tho for trying to help

  18. So anyway, I wrote a module that doesn't save the rates to the DB. Since part of configuring interstate requires editing the code, I thought I might as well go the whole hog and just leave the rates right in the code. It should be trivial to change the code for any zoned shipping calculation. If you're happy to use a text editor to update your zone rates, this might be a reasonable alternative. The resulting code is a little bit simpler.


    Thanks Sean for the contribution. Trying to install it atm, in your readme file you said:


    Make sure your Malaysian states are setup in Admin..Locations/Taxes..Zones


    Do I have to add each insert each zones individually to make it work? as it just currently displays:


    Country Zone

    Malaysia All Zones

  19. There's an issue with the interstate code (there should be a post a couple of pages back!) with splitting the string of state names, you can fix it by choosing to split on comma-space, rather than comma, if I recall correctly.


    I thought that actually fixes:

    Changed line 48 from

    $state_zones = split("[,]", $state_table);


    $state_zones = split("[ ,]", $state_table);


    Which does: This allows the states to be listed with a space following the comma, making it easier to read. Prior to this change, the spaces were used but any state other than the first listed resulted in an error message rather than the shipping info.


    Well I tried comma-space anyways and it didnt work still Invalid Zone.


    I think I am looking more for the solution stated below as one of my zones have two words. Any idea anyone? (or Skittles please help)




    In theory, this module should work for any country.


    A quick look at the zones table in the oscommerce database shows shows the following zones (provinces?):

    'A Coruña', 'Alava', 'Albacete', 'Alicante', 'Almeria',
    'Asturias', 'Avila', 'Badajoz', 'Baleares', 'Barcelona', 'Burgos',
    'Caceres', 'Cadiz', 'Cantabria', 'Castellon', 'Ceuta', 'Ciudad Real', 
    'Cordoba', 'Cuenca', 'Girona', 'Granada', 'Guadalajara',
    'Guipuzcoa', 'Huelva', 'Huesca', 'Jaen', 'La Rioja', 'Las Palmas',
    'Leon', 'Lleida', 'Lugo', 'Madrid', 'Malaga', 'Melilla', 'Murcia', 
    'Navarra', 'Ourense', 'Palencia', 'Pontevedra', 'Salamanca', 
    'Santa Cruz De Tenerife', 'Segovia', 'Sevilla', 'Soria', 
    'Tarragona', 'Teruel', 'Toledo', 'Valencia', 'Valladolid', 'Vizcaya', 
    'Zamora', 'Zaragoza',

    It does not include any abbreviations for these zones. If there are abbreviations, you should update your table, as using the full names can get a bit ugly in the admin. It isn't functional. If Spain's postal system doesn't use abbreviations, then we'll just have to make do.


    Specifically, in the Admin, I have the code set to break the list on both semi-colons and spaces, so the list can wrap and keep the column at a reasonable width. However, your zones have several names with spaces as part of the name. That would cause problems, so either the name cannot include the spaces or the code needs to be changed. Changing the code to support the space in the name is not a major issue.


    Mi Español es muy malo. But if I don't need to undertand Spanish to work on the site, I'd be happy to integrate this into your site. Just send me a PM with your email address (don't post it!) and I'll get back to you.





    Also, has anyone tried this contribution with Add Weight To Product Attributes v0.1 contribution?

  20. I have just installed this contribution and need some help because I am using this for another country other than US our weight measurement is in grams/kgs instead of lbs. Any idea how to change this?


    I finally figured out how to do this. Sorry I should have read more closely.


    Though I did come across an error Invalid Zone. What Ive done is I separated all the zones in my zones table into 3 zones in the interstate.php file as follows:


    	//1. Within Peninsula Malaysia
    	if ($i == 1) {
    	  $default_states = 'Johor, Kedah, Kelantan, Labuan, Melaka, Negeri Sembilan, Pahang, Perak, Perlis, Pulau Pinang, Selangor, Terengganu, Kuala Lumpur';
    	  $default_rates = '0.5:4.50, 0.750:5.50, 1:6.50, 1.25:7.50, 1.50:8.50, 1.75:9.50, 2:10.50, 2.50:16.00, 3:18.00, 3.5:20.00, 4:22.00, 4.5:24.00, 5:26.00';
    //2. Between Peninsula and Sarawak
    	if ($i == 2) {
    	  $default_states = 'Sarawak';
    	  $default_rates = '0.5:6.50, 0.750:8.00, 1:9.50, 1.25:11.00, 1.50:12.50, 1.75:14.00, 2:15.50, 2.50:26.00, 3:29.50, 3.5:33.00, 4:36.50, 4.5:40.00, 5:43.50';
    //3. Between Peninsula and Sabah
    	if ($i == 3) {
    	  $default_states = 'Sabah';
    	  $default_rates = '0.5:7.00, 0.750:9.00, 1:11.00, 1.25:13.00, 1.50:15.00, 1.75:17.00, 2:19.00, 2.50:31.00, 3:35.00, 3.5:39.00, 4:43.00, 4.5:47.00, 5:51.00';


    I modified your interstate.php for Malaysia rates instead of US rates. I didnt change much but follow your instructions to just change the values according to my country's rates. To test, I created an the order with a shipping address containing the state of Kuala Lumpur this gave me the Invalid Zone error on the checkout_shipping page.


    Reading one of your old posts about checking what is passed into the module via the code:


    if ($error == true) $this->quotes['error'] = $dest_state;


    I tried this and got the value Kuala Lumpur. This is stored the same as the zone_code in the database. Is it due to the spaces?


    Below is the data of my zones table:

    zone_id zone_country_id zone_code zone_name


    1 129 Johor Johor

    2 129 Kedah Kedah

    3 129 Kelantan Kelantan

    4 129 Labuan Labuan

    5 129 Melaka Melaka

    6 129 Negeri Sembilan Negeri Sembilan

    7 129 Pahang Pahang

    8 129 Perak Perak

    9 129 Perlis Perlis

    10 129 Pulau Pinang Pulau Pinang

    11 129 Sabah Sabah

    12 129 Sarawak Sarawak

    13 129 Selangor Selangor

    14 129 Terengganu Terengganu

    15 129 Kuala Lumpur Kuala Lumpur


    (Sorry about the horrible table format)


    Thank You in advance.

  21. Hi,


    I have just installed this contribution and need some help because I am using this for another country other than US our weight measurement is in grams/kgs instead of lbs. Any idea how to change this?


    Another question is that I am using product attributes to create a weight drop down box to display different types of weight per product and their costs instead of the weight box on the products page. Can this be altered to accommodate a product attribute box instead?


    If anyone could get back to me on this it would be much appreciated.


    Thank You