I'm still looking at the processing surrounding that debug-log ... something's (obviously) funny.
I'm still looking at the processing surrounding that debug-log ... something's (obviously) funny.
When I do it, I do it up brown![]()
A little help with colors.
myZenCartHost.com - Zen Cart Certified, PCI Compatible Hosting by JEANDRET
Free SSL & Domain with semi-annual and longer hosting. Updating 1.5.2 and Up.
@dbltoe, I've updated /includes/classes/class.multiship.php on your test site, adding the highlighted line below. Does that correct the issue?
Code:// ----- // Called by the multiship_observer class upon receipt of NOTIFY_ORDER_DURING_CREATE_ADDED_ATTRIBUTE_LINE_ITEM // (issued by the order class). // public function _createOrderAddAttributes($products_attributes_array) { if ($this->selected) { unset($products_attributes_array['orders_products_attributes_id']); foreach ($this->orders_multiship_ids as $orders_products_id) { $products_attributes_array['orders_products_id'] = $orders_products_id; zen_db_perform(TABLE_ORDERS_PRODUCTS_ATTRIBUTES, $products_attributes_array); } } }
Technically yes. By that, I mean that one would need to know what's going on to get to the multiple addresses. Knowing what the mod is supposed to do, I can go through the order process and successfully order, select different addresses, and get multiple packing slips that are correct. It's just some of the verbiage that might confuse the customer.
Since Multi does not work with One Page Checkout (OPC), the customer must go through the standard three-step checkout. Even one more, if actually using Multi, to confirm it all. So, here's the two situations.
Situation #1
When the customer selects Checkout, they are presented with Step 1 of 3 - Delivery Information. This is Shipping Information and the customer is told that their order will be shipped to the address on the left or they can change it by clicking on the Change Address button. Actually, if shipping to multiple addresses, any changes done here will need to be re-accomplished on Step 3 of 3 to accurately reflect the multiship addresses.
includes/languages/english/checkout_shipping, line #16, defines the textYou can have the mod installer change the text in the core file, merge a changed file with the core, or place an override in includes/languages/english/YOUR_TEMPLATE/checkout_shipping.php. Any method would work with the override being simplest for newbie installers.Code:Your order will be shipped to the address at the left or you may change the shipping address by clicking the <em>Change Address</em> button.
Suggested text:
If you are <em>only shipping to one address</em>, now is the time to make sure the address is correct. If you are shipping items to <em>multiple addresses</em>, those addresses will be entered in Step 3 of the checkout process.
Situation #2
If the customer gets to Step 3 of checkout and realizes they need to buy additional items, increase a quantity or decrease a quantity a warning is triggered from includes/languages/english/extra_definitions/multiship_common.php. The warning is of two sentences. The first lets the customer know that the product was added, or increased/decreased in quantity and will ship to the Primary address. The second sentence of that warning isIf this file is only called when multiple addresses are selected, perhaps the second sentence should beCode:You will have the opportunity to change this during the checkout process.The warning correctly does not appear on a deletion of an item as the customer would not have to adjust a deleted shipping address.Code:You will have the opportunity to change this during Step 3 of the checkout process.
A little help with colors.
myZenCartHost.com - Zen Cart Certified, PCI Compatible Hosting by JEANDRET
Free SSL & Domain with semi-annual and longer hosting. Updating 1.5.2 and Up.
There is a new error when trying to delete the test order.Code:[18-Aug-2017 19:17:23 UTC] Request URI: /******/orders.php?origin=index&page=1&&action=deleteconfirm, IP address: 216.177.186.199 #1 trigger_error() called at [/home/******/public_html/*ADMIN*/includes/classes/observers/class.multiship_admin_observer.php:122] #2 multiship_observer->logError() called at [/home/******/public_html/*ADMIN*/includes/classes/observers/class.multiship_admin_observer.php:93] #3 multiship_observer->update() called at [/home/******/public_html/includes/classes/class.base.php:103] #4 base->notify() called at [/home/******/public_html/*ADMIN*/includes/functions/general.php:1538] #5 zen_remove_order() called at [/home/******/public_html/*ADMIN*/orders.php:284] [18-Aug-2017 19:17:23 UTC] PHP Fatal error: : Missing or invalid orders_id in notification params array. in /home/******/public_html/*ADMIN*/includes/classes/observers/class.multiship_admin_observer.php on line 122
A little help with colors.
myZenCartHost.com - Zen Cart Certified, PCI Compatible Hosting by JEANDRET
Free SSL & Domain with semi-annual and longer hosting. Updating 1.5.2 and Up.
Understood; I'll get three GitHub issues noted:
- The coding error that resulted in the database barf when the order includes a product with attributes.
- The coding error that resulted in the "new error" you reported.
- A change to the language text, providing "better" guidance.
Just so I'm clear, did the change I made to your test site (issue #1) correct that debug-log generation?
Last edited by lat9; 18 Aug 2017 at 08:24 PM. Reason: Added another bugfix issue
Yes ma'am!
A little help with colors.
myZenCartHost.com - Zen Cart Certified, PCI Compatible Hosting by JEANDRET
Free SSL & Domain with semi-annual and longer hosting. Updating 1.5.2 and Up.
OK, made (yet another) change, this time to /YOUR_ADMIN/includes/classes/observers/class.admin_multiship_observer.php. Find:
and add the highlighted additional parameters:Code:public function update(&$class, $eventID, $p1a) { global $db; $this->eventID = $eventID;
@dbltoe, I've applied this correction to your test site.Code:public function update(&$class, $eventID, $p1a, &$p2, &$p3) { global $db; $this->eventID = $eventID;