1 - This worked.
public function onAfterOrderProductsListingDisplay(&$order, $type) {
if(empty($order->order_id)) return;
$database = JFactory::getDBO();
$query='SELECT history_data FROM '.hikashop_table('history').' WHERE history_order_id='.(int)$order->order_id.' AND history_data != \'\' ORDER BY history_created ASC';
$database->setQuery($query);
echo "<br/>";
echo $database->loadResult();
}
2 - Your understanding is correct. The custom fields were either displayed or hidden based on the Shipping Method selected (the shipping method was a forced selection based on cart weight).
I did not mean to imply this was a feature of HikaShop, just that our cart behaved this way before the update, and now it does not. I am attempting to pick up the pieces after a developer that gave no documentation. We no longer have a good relationship with this developer, so we cannot ask them for information.
The update is being tested in a test environment, so our current website is still up and running the old Joomla and HikaShop versions.
Re-implementing the functionality is fine, but my PHP skills are lacking. I am a programmer, but my knowledge in HTML and PHP is limited. Could you give me some direction in the override system for this task: Hide "Custom fields" based on what "Shipping method" is selected?
3 - As a side note, where can I modify the message the customer receives from an order?
You can now send us a purchase order for the amount of $x.xx using the following information. We will now process your order and contact you when completed.
This is not necessary, since we give them the ability to upload a Purchase Order during the checkout process.