Widget:SearchBox: Unterschied zwischen den Versionen
Aus MediaWiki
Alex (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Alex (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
| Zeile 160: | Zeile 160: | ||
var html = '<div class="search-result-count">' + data.results.length + ' Ergebnis' + (data.results.length !== 1 ? 'se' : '') + '</div>'; | var html = '<div class="search-result-count">' + data.results.length + ' Ergebnis' + (data.results.length !== 1 ? 'se' : '') + '</div>'; | ||
data.results.forEach(function(r) { | data.results.forEach(function(r) { | ||
var pct = Math.round(r.similarity_score * 100); | if (typeof r === 'string') { | ||
html += '<div class="search-result-card">' | |||
+ '<div class="search-result-snippet">' + escapeHtml(r) + '</div>' | |||
+ '</div>'; | |||
} else { | |||
var pct = Math.round((r.similarity_score || 0) * 100); | |||
var wikiUrl = '/wiki/' + encodeURIComponent((r.page_title || '').replace(/ /g, '_')); | |||
html += '<div class="search-result-card">' | |||
+ '<h4><a href="' + wikiUrl + '">' + escapeHtml(r.page_title || 'Ohne Titel') + '</a></h4>' | |||
+ '<div class="search-result-snippet">' + escapeHtml(truncate(r.content_text || '', 250)) + '</div>' | |||
+ '<div class="search-result-meta">' | |||
+ '<span>Relevanz: <span class="search-score-bar"><span class="search-score-fill" style="width:' + pct + '%"></span></span> ' + pct + '%</span>' | |||
+ (r.source ? '<span>Quelle: ' + escapeHtml(r.source) + '</span>' : '') | |||
+ '</div></div>'; | |||
} | |||
}); | }); | ||
results.innerHTML = html; | results.innerHTML = html; | ||