elari Posted November 5, 2002 Share Posted November 5, 2002 i changed a little bit module shipping zone to support 3 zone 1 your country (FR by default) 2 -> other zone country you want to set price (Other European Countries) 3 (lastest zone) -> all other country by default without need to check all iso code. you can still add other zone if needed first disallow zone.php in admin panel to remove value from database change in catalog/includes/modules/zones.php (v1.14 Snap Nov 02) 0/ find line 109 $this->num_zones = 1; replace by $this->num_zones = 3; 1/ find in function quote near line 129 if ($dest_zone == 0) { $error = true; } else { Add before // elari - Added to select default country if not in listing if ($dest_zone == 0) { $dest_zone = $this->num_zones; $i--; } // elari - Added to select default country if not in listing 2/ find in function install near line 178 if ($i == 1) { $default_countries = 'US,CA'; } tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Zone " . $i ." Countries', 'MODULE_SHIPPING_ZONES_COUNTRIES_" . $i ."', '" . $default_countries . "', 'Comma separated list of two character ISO country codes that are part of Zone " . $i . ".', '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 ('Zone " . $i ." Shipping Table', 'MODULE_SHIPPING_ZONES_COST_" . $i ."', '3:8.50,7:10.50,99:20.00', 'Shipping rates to Zone " . $i . " destinations based on a group of maximum order weights. Example: 3:8.50,7:10.50,... Weights less than or equal to 3 would cost 8.50 for Zone " . $i . " destinations.', '6', '0', now())"); replace by // elari - Added to select default country if not in listing if ($i == 1) { $default_countries = 'FR'; $shipping_table = '3:6,7:10.50,99:20.00'; } if ($i == 2) { $default_countries = 'AT,BE,GB,DE,GL,IS,IE,IT,NO,NL,DK,PL,ES,SE,CH,FI,PT,IL,GR'; $shipping_table = '3:7,7:11,99:23.00'; } if ($i == 3) { $default_countries = 'Others'; // this must be the lastest zone $shipping_table = '3:8,7:12,99:25.00'; } tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Zone " . $i ." Countries', 'MODULE_SHIPPING_ZONES_COUNTRIES_" . $i ."', '" . $default_countries . "', 'Comma separated list of two character ISO country codes that are part of Zone " . $i . ".', '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 ('Zone " . $i ." Shipping Table', 'MODULE_SHIPPING_ZONES_COST_" . $i ."', '" . $shipping_table . "', 'Shipping rates to Zone " . $i . " destinations based on a group of maximum order weights. Example: 3:8.50,7:10.50,... Weights less than or equal to 3 would cost 8.50 for Zone " . $i . " destinations.', '6', '0', now())"); // elari - Added to select default country if not in listing you can change the default value before running the module if you want to add more defined zone you must only let the Others to be the lastest one Quote Link to comment Share on other sites More sharing options...
Pauli Posted November 5, 2002 Share Posted November 5, 2002 Thanks for your tip! I managed to change it to 4 zones, which are used in the Netherlands (2003 Prices). The changes: $this->num_zones = 4; and: $default_countries = 'NL'; $shipping_table = '5.00:5.50,10.00:7.25,20.00:10.12,30.00:12.20'; } if ($i == 2) { $default_countries = 'AT,BE,FR,GB,DE,IE,IT,LU,MC,NL,DK,ES,SE,FI,PT,IL,GR'; $shipping_table = '0.25:3.00,0.50:5.00,1.00:8.00,20.00:10.50,5.00:18.50,10.00:25.50,15.00:32.50,20. 00:39.00'; } if ($i == 3) { $default_countries = 'AL,AD,BA,BG,CY,EE,FO,GI,GL,HU,YU,HR,LV,LI,LT,MK,MT,MD,NO,UA,PL,RO,RU,SM,SI,SK,CZ ,TR,VA,BY,IS,CH'; $shipping_table = '0.25:3.00,0.50:5.00,1.00:8.00,2.00:10.50,5.00:20.00,10.00:28.00,15.00:37.00,20.0 0:43.00'; } if ($i == 4) { $default_countries = 'Others'; // this must be the lastest zone $shipping_table = '0.25:5.00,0.50:10.00,1.00:18.00,2.00:21.00,5.00:27.00,10.00:48.00,15.00:80.00,20 .00:105.00'; } Zone 2 are countries in the Europian Union (EU). Zone 3 are countries in Europe but not in EU. Quote Link to comment Share on other sites More sharing options...
Pauli Posted November 5, 2002 Share Posted November 5, 2002 Please delete IL (Israel) from this line: if ($i == 2) { $default_countries = 'AT,BE,FR,GB,DE,IE,IT,LU,MC,NL,DK,ES,SE,FI,PT,IL,GR'; so it would be: if ($i == 2) { $default_countries = 'AT,BE,FR,GB,DE,IE,IT,LU,MC,NL,DK,ES,SE,FI,PT,GR'; Quote Link to comment Share on other sites More sharing options...
Guyver Posted November 5, 2002 Share Posted November 5, 2002 Take a look at this mod: http://www.oscommerce.com/downloads.php/co...ions,392/type,2 Phil used it to create 4 zones for UK>world and I recently changed it to do other UK specific stuff, I think you'd find it useful!. John Quote Link to comment Share on other sites More sharing options...
peter Teo Posted November 11, 2002 Share Posted November 11, 2002 I dont really understand by the following : 1/ find in function quote near line 129 if ($dest_zone == 0) { $error = true; } else { Add before // elari - Added to select default country if not in listing if ($dest_zone == 0) { $dest_zone = $this->num_zones; $i--; } Where do we paste the coding at? I need to add those countries not selected into the listing under 'Others', will someone please enlightened me? THanks!! PS: I am using 2.2 Quote Link to comment Share on other sites More sharing options...
Guyver Posted November 12, 2002 Share Posted November 12, 2002 This is the new style code for the latest CVS ie, after November. John Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.