Monday, 22 September 2014 02:14
beggarly

Virtuemart fixes in the pipeline?

Report Xmap bugs on this forum.

Virtuemart fixes in the pipeline?

Postby doorknob » Wed Nov 05, 2008 4:44 pm

Are there any plans to fix the two problems that I am having with Xmap that were reported in other posts?

1 The first is not VM specific but affects VM. When a menu url already contains a specific value for Itemid, Xmap overrides it. This is a bug that could affect any component because it could change the parameter values for the menu item.

2 Any menu item that links to a VM page has the category/product structure linked to it in the map, even if the page is not related to products (e.g. account details). That means that all non-product VM menu links must be hidden from Xmap - an unfortunate limitation.

I hope these issues can be resolved soon.
Regards
Phil
doorknob
Junior Boarder
Junior Boarder
 
Posts: 27
Joined: Thu Aug 07, 2008 9:30 pm

Re: Virtuemart fixes in the pipeline?

Postby guilleva » Wed Nov 19, 2008 7:11 pm

Hi, when was the last time you donwloaded and installed the VM plugin for XMap. Could you please try the latest version and tell me if your problems are still present with that version?
User avatar
guilleva
Administrator
Administrator
 
Posts: 1527
Joined: Wed Sep 12, 2007 3:10 am
Location: San José, Costa Rica

Re: Virtuemart fixes in the pipeline?

Postby doorknob » Thu Nov 20, 2008 11:28 pm

I was using what I thought was the latest version (1.1.1 created on 26/8/08) and just to be sure, I re-downloaded it today and re-tested. The problem still exists. Any menu item that references com_virtuemart has the full category/product structure attached in the site map. I believe that the logic should be as follows:
if the url contains:
option=com_virtuemart
page=shop.browse
category_id= integer value > 0
then the logic should be as at present
For any other value of page or if category_id is blank or zero or contains non-numeric characters, no categories or products should be added.

The other problem is that xmap changes the value of Itemid, even if it is contained in the url string. This should be regarded as a bug because although it is normally an essential addition to the url to ensure correct functioning of the parameters, if the string already contains a value for Itemid, that value should be retained for the very same reason. In that situation, using the Itemid of the menu item being processed makes the functionality of the new link different to the original instead of ensuring that it is not changed.

Regards
Phil
doorknob
Junior Boarder
Junior Boarder
 
Posts: 27
Joined: Thu Aug 07, 2008 9:30 pm

Re: Virtuemart fixes in the pipeline?

Postby guilleva » Fri Nov 21, 2008 2:26 am

Hi, thanks for your help and feedback. I made some adjustments to the pluging. Please try this version and let me know if those problems were fixed!
Attachments
com_virtuemart.zip
(3.02 KiB) Downloaded 566 times
User avatar
guilleva
Administrator
Administrator
 
Posts: 1527
Joined: Wed Sep 12, 2007 3:10 am
Location: San José, Costa Rica

Re: Virtuemart fixes in the pipeline?

Postby doorknob » Fri Nov 21, 2008 5:05 pm

Hi Guilleva,
Thanks for your prompt response with the software update. There is an improvement in a couple of areas but still some remaining issues.

I've carried out a detailed study of the output from the 8/26 version and then compared the output from the 11/21 version. I'll paste the notes I made re the issues from the 8/26 version and then describe the differences with the new version

Menu Item: VM Home
menu url: option=com_virtuemart
xmap url: option=com_virtuemart & Itemid=2 (this is the correct Itemid value for this menu item)
I believe that including the product structure at this point is an error.
xMap did include the full VM category/product structure with valid urls. (The Itemid value from this menu item happens to be the correct value because vm expects the value of Itemid to be

that from the menu item for the vm home page (not the Joomla home page). [VM has a function for returning this value]

Menu Item: VM Product Category
menu url: page=shop.browse & category_id=n & option=com_virtuemart & Itemid=2 (this is the Itemid value for the VM home page)
xmap url: page=shop.browse & category_id=n & option=com_virtuemart & Itemid=39 (this is the Itemid value for the menu item and is invalid here)
No sub-category items were included (as expected)
All products linked to this category were included (as expected)
All urls included the wrong value for Itemid

Menu Item: VM Account Details
menu url: page=account.billing & option=com_virtuemart & Itemid=2 (this is the Itemid value for the VM home page)
xmap url: page=account.billing & option=com_virtuemart & Itemid=13 (this is the Itemid value for the menu item and is invalid here)
I believe that including the product structure at this point is an error.
Unfortunately, xMap also included the full VM category/product structure. The urls incorporated the Itemid from the parent menu item url (which is correct!) but there was another error in the

generated urls because there were two values for 'page'. One was the correct value generated by xmap, the other was the value taken from the menu item url, which differs.

Menu: Special Product Search
menu url: page=shop.browse & category_id=0 & featured=y & option=com_virtuemart & Itemid=2 & st=5 (this is the Itemid value for the VM home page)
xmap url: page=shop.browse & category_id=0 & featured=y & option=com_virtuemart & Itemid=11 & st=5 (this uses the Itemid value for the menu item and is invalid here)
I believe that including the product structure at this point is an error.
Again, xMap also included the full VM category/product structure. This time there were a range of errors in the urls:
VM categories had duplication of the 'page' and 'category_id' entries but the correct value for Itemid.
VM products had all url items correct except for Itemid.


The 11/21 version of the plugin made the following changes:
1 - The urls for the generated product entries used the correct version of Itemid and are now fully as expected.
2 - The menu entry for the Account Maintenance page has no VM categories or products linked to it.

Now for the bad news:
issues remaining are
1 - The full product structure is still shown under the menu item for the VM home page. I suspect that your test for whether to include the products uses 'option=com_virtuemart' and the test for whether they should be suppressed checks the value of 'page'. For the home page, 'page' does not appear in the url at all. The url could be modifed to add a value for 'page' but I expect that you would want to make the plugin bullet-proof by modifying the test, otherwise this will always resurface as an issue from time to time. P.S. I tested this theory by adding 'page=shop.index' to the url. The product structure was suppressed but, ironically, the url generated on the site map excluded the value for page. P.P.S. The same change to the home page entry also suppressed the product structure using the 8/26 version.
2 - The itemid value for the category menu items (page=shop.browse&category_id>0) is still generated from the menu item rather than copied from the input url.
3 - The product structure is being generated for menu entries that trigger hard coded searches. These entries are not just unwanted but also contain multiple errors. I suspect that your test for triggering the category/product structure is based on 'page=shop.browse' but does not take into account the fact that this might not be a standard product listing. Finding a bullet-proof solution might be tricky. A simple modification that would suit my needs would be a test for the value of category_id. If it is missing or zero, then the menu must be a search and should not have products attached. However, it is perfectly possible to envisage a 'search' url that also includes a valid category_id and so I suggest that the product structure should be suppressed if
- 'page' is missing, empty or <> 'shop.browse'
or - 'category_id' is missing, empty, zero or non-integer
or - any variable is detected in the url except 'option', 'page', 'category_id' or 'Itemid'.

I hope this helps
Phil
doorknob
Junior Boarder
Junior Boarder
 
Posts: 27
Joined: Thu Aug 07, 2008 9:30 pm


Return to Bugs



Who is online

Users browsing this forum: No registered users and 1 guest