Hi,
I have defined one country (Greece) with two different zones,
and I have assigned two flat shipping methods for each zone.
When, at the checkout, I select the first zone as delivery and payment address,
I see the flat shipping methods for both zones.
I should see one flat shipping method but I see two.
The solution I found is:
Go to the folder "components/com_eshop/plugins/shipping"
and edit ONLY the php files for flat shipping THAT REFER TO THE SPECIFIC COUNTRY (e.g. eshop_flat.php, eshop_flat2.php etc) like following:
The code:
->where('(zone_id = 0 OR zone_id = ' . intval($addressData) . ')');
is changed to:
->where('zone_id = ' . intval($addressData));
For some reason, every geozone has a zone with id=0 so the initial code shows all the flat shipping methods.
Also I think that the line with code:
->where('geozone_id = ' . intval($params->get('geozone_id'))) is of no use and I think it could be deleted.
There is no reason to select a payment method comparing it to a value from itself.
If the above are correct, could you find a solution for the next version?
Thanks,
Thanos