diff --git a/index.html b/index.html index b9fd245..2c48b0c 100644 --- a/index.html +++ b/index.html @@ -716,10 +716,17 @@ function todayKey() { function esc(str) { return (str||'').replace(/&/g,'&').replace(//g,'>'); } +function isEmoji(str) { + if (!str) return false; + const cp = str.codePointAt(0); + return (cp >= 0x1F300 && cp <= 0x1FAFF) || (cp >= 0x2600 && cp <= 0x27BF) || (cp >= 0xFE00 && cp <= 0xFE0F); +} + function avatarHtml(profile, size=40, nickname='') { const displayName = profile?.displayName || 'No Display Name'; const initial = (nickname || displayName)[0].toUpperCase(); const url = profile?.avatarUrl || ''; + if (url && isEmoji(url)) return `
${url}
`; if (url) return `
${initial}
`; return `
${initial}
`; } @@ -881,7 +888,8 @@ function refreshProfileUI() { } function setAvatarEl(wrapEl, initialId, initial, url, size) { - if (url) wrapEl.innerHTML = `${initial}`; + if (url && isEmoji(url)) wrapEl.innerHTML = `${url}`; + else if (url) wrapEl.innerHTML = `${initial}`; else wrapEl.innerHTML = `${initial}`; }