404 VirtueMart controller not found `VirtuemartControllerFeatured`.

Started by WebStuff, October 26, 2022, 20:07:43 PM

Previous topic - Next topic

WebStuff

Joomla! 3.10.11
VirtueMart 4.0.6 10690

If a customer hits the checkout button before choosing payment method they are taken to the select_payment.php page.
The cancel returns them back to the cart but the save option returns this error:
404 VirtueMart controller not found `VirtuemartControllerFeatured`.

I'm racking my brains trying to figure out where it's going wrong.
The debug tells me the message is from ./components/com_virtuemart/virtuemart.php but I can't fathom where it's picking up the "Featured" from as the controller.
I've tried removing any overrides, with default template, and it's still doing it.
The only way I can get it to work is to turn off SEF url's so I assume it's the routing somewhere but I've no idea where to start in debugging/tracing that.

Any help greatly appreciated, even just how to go about debugging the routing in SEF.
Thanks in advance.

Milbo

Should I fix your bug, please support the VirtueMart project and become a member
______________________________________
Extensions approved by the core team: http://extensions.virtuemart.net/

WebStuff

Thanks Milbo.
I think it is my third party SEF plugin that is causing the issue (JoomSEF). If I disable that and use the standard SEF only then the page works.
Unfortunately I have 1000's of SEF'd URL stored and the standard SEF also breaks my custom page resources.

I think I need to look into how the router works and do some research into SEF relative paths so I can adjust paths to files and images on my custom pages and then get rid of the JoomSEF component and just use the standard SEF.

I'll install the zip on a test system and see if it solves the problem then report back.

EDIT:
Zip file made not difference but thanks Milbo, it was worth a try.
It is definitely routing/SEF related as my test site which isn't in a sub-folder, it is in it's own test domain, works fine.
My main shop is in a sub-folder and it fails when JoomSEF is enabled but works when only normal SEF is enabled.
I suspect something is being "altered" when the form is created either a javascript/jQuery URL or something in the form submission/POST data.
It happens the same for select_shipment.php and select_payment.php when they are called separately.
I shall have to debug some more and I'll try the JoomSEF forum, though I don't hold out much hope. :)

WebStuff

This seems to be the offending URL that is being sent when the select_shipment.php or select_payment.php "Save" button is clicked:

index.php?option=com_content&controller=cart&keyword=&task=updatecart&view=featured&Itemid=101

I'm wondering which Javascript file/function is setting this view=featured on the form as part of the submit as that seems to be the problem.
I'm also not sure what the view should be as I could probably do a redirect if I knew.

Again any help greatly appreciated. It seems quite a few customers go through this process and abandon the cart losing sales, at least a few are ringing up to try to complete there order. :)