Here is an outline of our Joomla! / VM setup, issue, and what our findings are:
Database Version: 5.0.92-log
Database Collation: utf8_general_ci
PHP Version: 5.2.14
Web Server: Apache
Web Server to PHP interface: cgi-fcgi
Joomla! Version: Joomla! 1.5.23 Stable [ senu takaa ama baji ] 04-March-2011 18:00 GMT
User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:11.0) Gecko/20100101 Firefox/11.0
Virtuemart Version: 1.1.9 Stable
When using the extended search plugin for Virtuemart, and a search is done for a product in the VM store, the correct product name (and correct link to product) is listed, but the parent category in the path listed for the retrieved items is incorrect (the subcategory is correct). Please see screenshot diagram of search results attached.
The code first looks up the jos_menu table and retrieves all records where the link includes "com_virtuemart", published = 1 and access = 0, and it uses the first record that is returned for the menu name. It then executes a complex query on several tables(jos_vm_product, and jos_vm_category to name two). This complex query builds the "selection" field as a concatenation of the menu name and the category name from jos_vm_category. The menu table has a params field that contains a list of the menu parameters, including "category_id". This category_id is found in the jos_vm_category table. The params field is a text field, and includes several other parameters, making it very difficult (if not impossible) to add to the query as a link field, so that it can be used to build the section field. I can see no other way to accomplish this. It has to be done in the query.
Is there a solution to this that we are overlooking? Is the database in J! 2.5 any different?
[attachment cleanup by admin]