Skip to content
This repository was archived by the owner on Aug 12, 2025. It is now read-only.
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions template.js
Original file line number Diff line number Diff line change
Expand Up @@ -107,32 +107,46 @@
user = element.querySelector('b').innerText;
element.classList.add('proven');
const proofs = await getUser(user) || []
let shownWebsite = [];
for (const {proof_type, nametag, service_url} of proofs) {
if (proof_type === 'twitter' || (proof_type !== 'keybase' && keybaseBadgeOnly))
continue;
if ((proof_type === "dns") || (proof_type === "generic_web_site")) {
if (shownWebsite.includes(nametag))
continue;
}
element.innerHTML += oneLineTrim`
<br/>
<a href="${service_url}" class="ProfileHeaderCard-screennameLink u-linkComplex js-nav" rel="noreferrer noopener">
<b><span style="${getStyle()}">${icons[proof_type]}</span> ${nametag}</b>
</a>
`;
if ((proof_type === "dns") || (proof_type === "generic_web_site"))
shownWebsite.push(nametag);
}
}
const mobileElement = document.querySelector('._2CFyTHU5:not(.proven)');
if (mobileElement) {
user = mobileElement.querySelector('.Z5IeoGpY').innerText.replace('@', '');
mobileElement.classList.add('proven');
const proofs = await getUser(user) || []
let shownWebsite = [];
for (const {proof_type, nametag, service_url} of proofs) {
if (proof_type === 'twitter' || (proof_type !== 'keybase' && keybaseBadgeOnly))
continue;
if ((proof_type === "dns") || (proof_type === "generic_web_site")) {
if (shownWebsite.includes(nametag))
continue;
}
mobileElement.innerHTML += oneLineTrim`
<br/>
<span class="rn-13yce4e rn-fnigne rn-ndvcnb rn-gxnn5r rn-deolkf rn-6gldlz rn-1471scf rn-1lw9tu2 rn-ogifhg rn-7cikom rn-1it3c9n rn-ad9z0x rn-1mnahxq rn-61z16t rn-p1pxzi rn-11wrixw rn-wk8lta rn-9aemit rn-1mdbw0j rn-gy4na3 rn-bauka4 rn-irrty rn-qvutc0">
<a style="color:rgb(101,119,134);text-decoration:none;" href="${service_url}" style="" class="" rel="noreferrer noopener">
<span style="${getStyle()}">${icons[proof_type]}</span> ${nametag}
</a>
</span>`;
if ((proof_type === "dns") || (proof_type === "generic_web_site"))
shownWebsite.push(nametag);
}
}
}
Expand Down Expand Up @@ -161,13 +175,20 @@
target = element.parentElement.previousSibling;
}
const proofs = await getUser(user) || []
let shownWebsite = [];
for (const {proof_type, nametag, service_url} of proofs) {
if (proof_type === 'twitter' || (proof_type !== 'keybase' && keybaseBadgeOnly))
continue;
if ((proof_type === "dns") || (proof_type === "generic_web_site")) {
if (shownWebsite.includes(nametag))
continue;
}
target.innerHTML += oneLineTrim`&nbsp;
<a href="${service_url}" title="${nametag}" rel="noreferrer noopener">
<span style="${getStyle()}">${icons[proof_type]}</span>
</a>`;
if ((proof_type === "dns") || (proof_type === "generic_web_site"))
shownWebsite.push(nametag);
}
}

Expand All @@ -187,10 +208,17 @@
element.classList.add('proven');
const user = element.innerText;
const proofs = await getUser(user, 'hackernews');
let shownWebsite = [];
for (const {proof_type, nametag, service_url} of proofs.slice().reverse()) {
if (proof_type === 'hackernews' || (proof_type !== 'keybase' && keybaseBadgeOnly)) continue;
if ((proof_type === "dns") || (proof_type === "generic_web_site")) {
if (shownWebsite.includes(nametag))
continue;
}
element.insertAdjacentHTML('afterend', `
<a href="${service_url}" rel="noreferrer noopener"><span style="${getStyle()}">${icons[proof_type]}</span></a>`);
if ((proof_type === "dns") || (proof_type === "generic_web_site"))
shownWebsite.push(nametag);
}
}
}
Expand Down