VM 3.0.10 vmview helper doesn't route category_link and continue_link

Started by razor7, October 27, 2015, 13:46:02 PM

Previous topic - Next topic

razor7

Hi, I have found an issue in file vmview.php in helpers frontend folder

the code of funcion prepareContinueLink doesn't route category_link and continue_link members

To fix it, the code around line 132, must be changed from this
$this->continue_link = JURI::root() .'/index.php?option=com_virtuemart&view=category' . $categoryStr.$lang.$ItemidStr;
$this->continue_link_html = '<a class="continue_link" href="' . $this->continue_link . '">' . vmText::_ ('COM_VIRTUEMART_CONTINUE_SHOPPING') . '</a>';

$this->cart_link = JURI::root().'index.php?option=com_virtuemart&view=cart'.$lang;


to this
$this->continue_link = JRoute::_('index.php?option=com_virtuemart&view=category' . $categoryStr.$lang.$ItemidStr, FALSE);
$this->continue_link_html = '<a class="continue_link" href="' . $this->continue_link . '">' . vmText::_ ('COM_VIRTUEMART_CONTINUE_SHOPPING') . '</a>';

$this->cart_link = JRoute::_('index.php?option=com_virtuemart&view=cart'.$lang, FALSE);

MGS Creativa - VirtueMart Payment Plugin Experts
http://www.mgscreativa.com

Take a look at our downloads section for VirtueMart payment plugins and mouch more!
http://www.mgscreativa.com/en/online-store

GJC Web Design

afaik this is intentional as was causing routing problems in J3.4.x

there are other posts about this
GJC Web Design
VirtueMart and Joomla Developers - php developers https://www.gjcwebdesign.com
VM4 AusPost Shipping Plugin - e-go Shipping Plugin - VM4 Postcode Shipping Plugin - Radius Shipping Plugin - VM4 NZ Post Shipping Plugin - AusPost Estimator
Samport Payment Plugin - EcomMerchant Payment Plugin - ccBill payment Plugin
VM2 Product Lock Extension - VM2 Preconfig Adresses Extension - TaxCloud USA Taxes Plugin - Virtuemart  Product Review Component
https://extensions.joomla.org/profile/profile/details/67210
Contact for any VirtueMart or Joomla development & customisation

Studio 42

I searched why some new vm 3.10 and 3.11 user have problem.
I think, the razor7 solution should Work else i think it's a bug in VM not Joomla.
Why sould this not work but all other views is routed correctly, i definitely cannot mean that is a Joomla 3.4.x bug because this work perfect in Joomla 3.4.5 and Virtuemart 3.9.6
Perhaps a parameter is missing in the link(langage, menu itemId for eg.) in some case

inode64


Studio 42


Milbo

All of your ignore the root of the problem. Come on guys, do you really think, it is a fix, to revert my fix?

inode64, what you did is not a fix, you just set it to the version it was.

So, since none of you understands the reason for this decision, none of you can write a fix. If you want to write a fix, you must FIRST understand why I remove the JRoute, just adding again JRoute is not a fix.

Please learn "english". I explain you know how to use words, it is silly, but you prove that you do not understand the used words.

There is a "bug". I (Max Milbers) create a fix, someone does not understand the fix and creates a fix, which just creates a version, which is the same as the version, which got fixed.

So what you do is not a fix, it is a "revert". You reverted my fix, because you do not understand it. It is absolutly reasonable that I reject this so called fix, how much can I trust people who do not even understand the word "fix".

All of this thoughts are always true, it has nothing todo with the actual problem. It is something which should be teached by your parents and we call it respect! Respect means that you do not just revert what someone else did, it means to understand the reason before you do any action. Btw, one of the reasons, which kicked "known" community members out of the team. They did not understand that just reverting the fix of another is an insult among developers. Sorry to say that.


So and now back to the actual problem.
First do we need SEF for the category_link and continue_link?
Answer: No, we dont need it. There is absolutly NO technical or SEM reason for it.

Second: "Why does it sometimes work, why sometimes not?"
Answer: The reason is always the itemid. When you create an itemid for the cart and any language, you can use JRoute. But when you just use the cart module, without any itemid, you cannot enter the cart.

So, my fix made it more robust and easier to configure, all what I loose is a sefed URL which do not need to be sefed, because the cart should anyway not indexed. The categories of the continue link have anyway canonicals.



And why I write all this selfexplanary shit? Because I am really sick of people who do not even understand the root problem, but think they can fix it.

And again, I feel silly to write it down, it should be "selfexplanary". Here take this as rule, this rule is always valid, in any culture, among any age

"Just reverting the work of another without proper arguments is an insult"

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

Studio 42

Milbo,
My customer and many other Virtuemart user want the old routed links. The problem seems only when you don't set correctly Joomla.
The problem is same with any component, if you don't set correctly the menu associations, links to articles ...
It's not a problem of Virtuemart, but of users, i know that removing SEF is simpler as explaining user they have to set the menu when they use the router. But read Kunena, k2 or any know component forums, they have all the same problem when the user don't spend some time to add the right menus.
At the place of removing it,  add a Doc or give reference How to set correctly Menu for Virtuemart, it's a better approach as removing an existing feature.
Thanks,
Patrick