View Issue Details

IDProjectCategoryView StatusLast Update
0002663OXID eShop (all versions)3.1. Design, GUI, UXpublic2011-09-06 08:29
Reportermkr Assigned To 
PrioritynormalSeveritymajorReproducibilityalways
Status resolvedResolutionfixed 
Product Version4.4.6 revision 32697 
Fixed in Version4.5.3 revision 39087 
Summary0002663: Wrong PageNr amount on showing navigationbar after Tag-Cloud link
DescriptionAfter following the link 'werbe-display' on the Tag-Cloud, a list with a navigationbar is generated. The amount of page numbers are wrong, because 8 pages are expected but 26 are shown. If you click on the 9th page, a 404 error appears.
Additional InformationI think the problem comes with bug 0002154. The oxseo table is filled out with wrong amount of page nr rows. In the front end the search is repaired.

Deleting these rows or/and updating DB views does not fix the problem.

The problem was also confirmed by S. Stark and more information is available under the Ticket-Nr. 1222619
TagsNo tags attached.
Theme
BrowserAll
PHP Versionany
Database Versionany

Activities

mkr

2011-03-31 14:52

reporter   ~0004284

Error also avaiable on Version 4.4.8.

This was tested with version EE 4.4.8!!!

mkr

2011-04-26 13:37

reporter   ~0004400

Follwoing source are effected:

oxSeoEncoderTag::_getDynamicTagUri
oxArticlelist::loadTagArticles
oxArticlelist::getTagArticleIds
oxUtilsCount::getTagArticleCount

Different SQL statements are used to get the articles/build tag list.

My solution:
Bugfix SQL Statements to:
... match(oxartextends.oxtags{$sLangExt})
               against ( ".oxDb::getDb()->quote( "\"".$sTag."\"" )." IN BOOLEAN MODE ) ";

Remove following PHP-Code:
$oTagHandler = oxNew( 'oxtagcloud' );
$sTag = $oTagHandler->prepareTags( $sTag );

The function prepareTags changes the Tag-Name e.g. from 'werbe-display' to 'werbe display'. That does not match was is expected.

The SQL statement match function should be double qouted.
E.g. "'werbe-display'" will match the whole phrases, 'werbe-display' will match only 'werbe' and exclude 'display'. '-' is an operator in that case. See MySQL Docu 'Boolean Full-Text Searches' fore more information.

My question is now, what negative effects these changes have?

birute_meilutyte

2011-05-04 10:19

reporter   ~0004450

Last edited: 2011-05-04 10:19

steps for easy reproducing (even without using '-' in the tags):
1) add tag 'bar set' to 7 different products
2) add tag 'bar' to 3 different products
3) add tag 'set' to 1 different product
4) in frontend chose tag 'bar set'. all results fits in 1 page (somehow it finds only 9 products), but link for second page is also generated and it gives 404 error page.