|
a/src/query/reslistpager.cpp |
|
b/src/query/reslistpager.cpp |
|
... |
|
... |
335 |
<< m_docSource->title()
|
335 |
<< m_docSource->title()
|
336 |
<< "</b></font> ";
|
336 |
<< "</b></font> ";
|
337 |
|
337 |
|
338 |
if (pageEmpty()) {
|
338 |
if (pageEmpty()) {
|
339 |
chunk << trans("<p><b>No results found</b><br>");
|
339 |
chunk << trans("<p><b>No results found</b><br>");
|
|
|
340 |
string reason = m_docSource->getReason();
|
|
|
341 |
if (!reason.empty()) {
|
|
|
342 |
chunk << "<blockquote>" << escapeHtml(reason) <<
|
|
|
343 |
"</blockquote></p>";
|
|
|
344 |
} else {
|
340 |
HighlightData hldata;
|
345 |
HighlightData hldata;
|
341 |
m_docSource->getTerms(hldata);
|
346 |
m_docSource->getTerms(hldata);
|
342 |
vector<string> uterms(hldata.uterms.begin(), hldata.uterms.end());
|
347 |
vector<string> uterms(hldata.uterms.begin(), hldata.uterms.end());
|
343 |
if (!uterms.empty()) {
|
348 |
if (!uterms.empty()) {
|
344 |
map<string, vector<string> > spellings;
|
349 |
map<string, vector<string> > spellings;
|
345 |
suggest(uterms, spellings);
|
350 |
suggest(uterms, spellings);
|
346 |
if (!spellings.empty()) {
|
351 |
if (!spellings.empty()) {
|
347 |
if (o_index_stripchars) {
|
352 |
if (o_index_stripchars) {
|
348 |
chunk <<
|
353 |
chunk <<
|
349 |
trans("<p><i>Alternate spellings (accents suppressed): </i>")
|
354 |
trans("<p><i>Alternate spellings (accents suppressed): </i>")
|
350 |
<< "<br /><blockquote>";
|
355 |
<< "<br /><blockquote>";
|
351 |
} else {
|
356 |
} else {
|
352 |
chunk <<
|
357 |
chunk <<
|
353 |
trans("<p><i>Alternate spellings: </i>")
|
358 |
trans("<p><i>Alternate spellings: </i>")
|
354 |
<< "<br /><blockquote>";
|
359 |
<< "<br /><blockquote>";
|
355 |
|
360 |
|
|
|
361 |
}
|
|
|
362 |
|
|
|
363 |
for (map<string, vector<string> >::const_iterator it0 =
|
|
|
364 |
spellings.begin(); it0 != spellings.end(); it0++) {
|
|
|
365 |
chunk << "<b>" << it0->first << "</b> : ";
|
|
|
366 |
for (vector<string>::const_iterator it =
|
|
|
367 |
it0->second.begin();
|
|
|
368 |
it != it0->second.end(); it++) {
|
|
|
369 |
chunk << *it << " ";
|
|
|
370 |
}
|
|
|
371 |
chunk << "<br />";
|
|
|
372 |
}
|
|
|
373 |
chunk << "</blockquote></p>";
|
356 |
}
|
374 |
}
|
357 |
|
|
|
358 |
for (map<string, vector<string> >::const_iterator it0 =
|
|
|
359 |
spellings.begin(); it0 != spellings.end(); it0++) {
|
|
|
360 |
chunk << "<b>" << it0->first << "</b> : ";
|
|
|
361 |
for (vector<string>::const_iterator it =
|
|
|
362 |
it0->second.begin();
|
|
|
363 |
it != it0->second.end(); it++) {
|
|
|
364 |
chunk << *it << " ";
|
|
|
365 |
}
|
375 |
}
|
366 |
chunk << "<br />";
|
|
|
367 |
}
|
376 |
}
|
368 |
chunk << "</blockquote></p>";
|
|
|
369 |
}
|
|
|
370 |
}
|
|
|
371 |
} else {
|
377 |
} else {
|
372 |
unsigned int resCnt = m_docSource->getResCnt();
|
378 |
unsigned int resCnt = m_docSource->getResCnt();
|
373 |
if (m_winfirst + m_respage.size() < resCnt) {
|
379 |
if (m_winfirst + m_respage.size() < resCnt) {
|
374 |
chunk << trans("Documents") << " <b>" << m_winfirst + 1
|
380 |
chunk << trans("Documents") << " <b>" << m_winfirst + 1
|
375 |
<< "-" << m_winfirst + m_respage.size() << "</b> "
|
381 |
<< "-" << m_winfirst + m_respage.size() << "</b> "
|