favicons
This commit is contained in:
@@ -239,8 +239,9 @@
|
||||
function trackerFavicon(tracker){
|
||||
const domain=typeof tracker==='string'?tracker:(tracker?.domain||'');
|
||||
if(!trackerFaviconsEnabled || !domain) return '<i class="fa-solid fa-bullseye"></i>';
|
||||
// Note: Cached favicons are served from the static/tracker_favicons symlink; the API path is only a one-time cache warmer fallback.
|
||||
const src=(typeof tracker==='object' && tracker?.favicon_url) ? tracker.favicon_url : `/api/trackers/favicon/${encodeURIComponent(domain)}`;
|
||||
const safeName=String(domain).toLowerCase().replace(/[^a-z0-9_.-]+/g,'_').replace(/^[._]+|[._]+$/g,'')||'tracker';
|
||||
// Note: Tracker favicon links are direct static URLs matching the tracker_favicons symlink.
|
||||
const src=(typeof tracker==='object' && tracker?.favicon_url) ? tracker.favicon_url : `/static/tracker_favicons/${encodeURIComponent(safeName)}.ico`;
|
||||
return `<img class="tracker-favicon" src="${esc(src)}" alt="" loading="lazy" onerror="this.classList.add('d-none')"><i class="fa-solid fa-bullseye tracker-fallback-icon"></i>`;
|
||||
}
|
||||
function trackerFilterPlaceholder(){
|
||||
|
||||
Reference in New Issue
Block a user