Ticket #5204 (closed Bug: fixed)
plus sign nuisance in live search
| Reported by: | miohtama | Owned by: | ree |
|---|---|---|---|
| Priority: | minor | Milestone: | 2.1.3 |
| Component: | Infrastructure | Keywords: | newbie |
| Cc: |
Description
IE 6.0 + Windows XP + Plone 2.1.2
Type "C++" in the live search field. You'll get a status bar message "errors on the page". Probably Javascript goes haywire. Search seems to work, though.
Change History
comment:2 Changed 6 years ago by hannosch
- Priority changed from trivial to major
- Milestone changed from 2.5.x to 2.1.x
comment:4 Changed 6 years ago by hannosch
- Priority changed from major to minor
Yep, verified. Happens in IE if there's a ++ anywhere in the search string. Javascript error message tells me something like 'resource could not be downloaded'.
comment:6 Changed 6 years ago by ree
- Status changed from new to closed
- Resolution set to fixed
(In [9784]) fixeS #5204: livesearch works with ++ and otherwise fixed too
Few issues fixed, some is extra to the original report:
- The javascript properly escapes + when making the XMLHttpRequest
- named entities are replaced by numbered ones in the response
(this blathers error in some browsers since the response is xml not html)
- the "more items" query in the response is properly escaped too
- strip all meta characters from the query (+*-?)
Otherwise C++ does not really look for C++ but for C. The same happens with other characters like *, -, ? too. Problem is the catalog splits on words and all non-word chars are handled equally like a space. We can do more once the catalog handles these in another way.
comment:7 Changed 6 years ago by ree
(In [9785]) fixeS #5204: livesearch works with ++ and otherwise fixed too
Few issues fixed, some is extra to the original report:
- The javascript properly escapes + when making the XMLHttpRequest
- named entities are replaced by numbered ones in the response
(this blathers error in some browsers since the response is xml not html)
- the "more items" query in the response is properly escaped too
- strip all meta characters from the query (+*-?)
Otherwise C++ does not really look for C++ but for C. The same happens with other characters like *, -, ? too. Problem is the catalog splits on words and all non-word chars are handled equally like a space. We can do more once the catalog handles these in another way.
