Skip to content

Add Item and then remove before update is pressed causes error. #334

@brittainmark

Description

@brittainmark

If you add an item to the order then, having clicked add, you edit the added product and set the total to 0 (zero) an error log below is produced.
If you click Update then the item can be removed without error, as long as you have not set the quantity to zero.

`
[15-Feb-2026 16:15:50 Europe/London] PHP Fatal error: Uncaught TypeError: Zencart\Plugins\Admin\EditOrders\EoCart::productIsVirtual(): Argument #2 ($attributes) must be of type array, string given, called in /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/admin/includes/classes/EoCart.php on line 159 and defined in /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/admin/includes/classes/EoCart.php:251
Stack trace:
#0 /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/admin/includes/classes/EoCart.php(159): Zencart\Plugins\Admin\EditOrders\EoCart->productIsVirtual(Array, '')
#1 /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/admin/includes/classes/EoOrderChanges.php(839): Zencart\Plugins\Admin\EditOrders\EoCart->removeProduct('39412', Array)
#2 /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/admin/includes/classes/EoOrderChanges.php(723): Zencart\Plugins\Admin\EditOrders\EoOrderChanges->recordProductChanges(1, 17, '39412', true)
#3 /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/catalog/includes/classes/ajax/zcAjaxEditOrdersAdmin.php(682): Zencart\Plugins\Admin\EditOrders\EoOrderChanges->updateProductInOrder('39412', Array)
#4 /home/gointl/playground.gointernational.co.uk/ajax.php(77): zcAjaxEditOrdersAdmin->updateProduct()
#5 /home/gointl/playground.gointernational.co.uk/***/ajax.php(17): require('/home/gointl/pl...')
#6 {main}
thrown in /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/admin/includes/classes/EoCart.php on line 251

[15-Feb-2026 16:15:50 Europe/London] Request URI: //ajax.php?act=ajaxEditOrdersAdmin&method=updateProduct, IP address: 46.208.190.141
--> PHP Fatal error: Uncaught TypeError: Zencart\Plugins\Admin\EditOrders\EoCart::productIsVirtual(): Argument #2 ($attributes) must be of type array, string given, called in /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/admin/includes/classes/EoCart.php on line 159 and defined in /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/admin/includes/classes/EoCart.php:251
Stack trace:
#0 /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/admin/includes/classes/EoCart.php(159): Zencart\Plugins\Admin\EditOrders\EoCart->productIsVirtual(Array, '')
#1 /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/admin/includes/classes/EoOrderChanges.php(839): Zencart\Plugins\Admin\EditOrders\EoCart->removeProduct('39412', Array)
#2 /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/admin/includes/classes/EoOrderChanges.php(723): Zencart\Plugins\Admin\EditOrders\EoOrderChanges->recordProductChanges(1, 17, '39412', true)
#3 /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/catalog/includes/classes/ajax/zcAjaxEditOrdersAdmin.php(682): Zencart\Plugins\Admin\EditOrders\EoOrderChanges->updateProductInOrder('39412', Array)
#4 /home/gointl/playground.gointernational.co.uk/ajax.php(77): zcAjaxEditOrdersAdmin->updateProduct()
#5 /home/gointl/playground.gointernational.co.uk/
/ajax.php(17): require('/home/gointl/pl...')
#6 {main}
thrown in /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/admin/includes/classes/EoCart.php on line 251.

[15-Feb-2026 16:15:50 Europe/London] Request URI: //ajax.php?act=ajaxEditOrdersAdmin&method=updateProduct, IP address: 46.208.190.141
--> PHP Fatal error: Uncaught TypeError: Zencart\Plugins\Admin\EditOrders\EoCart::productIsVirtual(): Argument #2 ($attributes) must be of type array, string given, called in /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/admin/includes/classes/EoCart.php on line 159 and defined in /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/admin/includes/classes/EoCart.php:251
Stack trace:
#0 /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/admin/includes/classes/EoCart.php(159): Zencart\Plugins\Admin\EditOrders\EoCart->productIsVirtual(Array, '')
#1 /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/admin/includes/classes/EoOrderChanges.php(839): Zencart\Plugins\Admin\EditOrders\EoCart->removeProduct('39412', Array)
#2 /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/admin/includes/classes/EoOrderChanges.php(723): Zencart\Plugins\Admin\EditOrders\EoOrderChanges->recordProductChanges(1, 17, '39412', true)
#3 /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/catalog/includes/classes/ajax/zcAjaxEditOrdersAdmin.php(682): Zencart\Plugins\Admin\EditOrders\EoOrderChanges->updateProductInOrder('39412', Array)
#4 /home/gointl/playground.gointernational.co.uk/ajax.php(77): zcAjaxEditOrdersAdmin->updateProduct()
#5 /home/gointl/playground.gointernational.co.uk/
/ajax.php(17): require('/home/gointl/pl...')
#6 {main}
thrown in /home/gointl/playground.gointernational.co.uk/zc_plugins/EditOrders/v5.0.2/admin/includes/classes/EoCart.php on line 251.
`

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions