Ok I've tried as much as I can here and still can't figure this out. My tangible products show the shipping options on checkout just fine. My parcels that contain these same tangible products don't show the shipping options upon checkout.
In my digging I find that the function product_is_shippable gets a blank array back on line 981:
$attributes = (array) module_invoke($product->ptype, 'productapi', $product, 'attributes');
when the ptype is 'parcel'
So the problem, I figure, is somewhere in parcel_productapi in the case: 'attributes' is not returning the 'is_shippable' or 'in_stock' attributes of tangible products assigned to it.
If I put this
$attributes[] = 'is_shippable';
$attributes[] = 'in_stock';before it returns $attributes then everything works fine. This is a dirty hack and I know it's not the solution but I can't figure out the best way forward.
Thanks,
Tim
| Comment | File | Size | Author |
|---|---|---|---|
| #1 | parcel-not-shippable.patch.txt | 2.26 KB | mo6 |
Comments
Comment #1
mo6The check for default attributes (with node object equals NULL) in the product api doesn't return "is_shippable" so no shipping methods can be defined by shipcalc.
The attached patch fixes this.
Comment #2
mo6Patch applies cleanly and is still active.
Comment #3
gordon commentedI think this has been committed with the other patch. Please check.