Skip to content

Commit c4d28b9

Browse files
committed
Support absolute sponsor image URLs
1 parent fdd3d95 commit c4d28b9

1 file changed

Lines changed: 23 additions & 1 deletion

File tree

theme/sponsor.js

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,8 +107,30 @@
107107
return ""
108108
}
109109

110+
function resolveSponsorImageUrl(imageUrl) {
111+
var value = String(imageUrl || "").trim()
112+
113+
if (!value) {
114+
return ""
115+
}
116+
117+
if (/^https:\/\//i.test(value)) {
118+
return value
119+
}
120+
121+
if (/^\/\//.test(value)) {
122+
return "https:" + value
123+
}
124+
125+
if (value.charAt(0) === "/") {
126+
return new URL(value, window.location.origin).href
127+
}
128+
129+
return new URL(value, document.baseURI || window.location.href).href
130+
}
131+
110132
function setLegacySponsorContent(sponsor, container, nodes) {
111-
nodes.img.src = sponsor.image_url
133+
nodes.img.src = resolveSponsorImageUrl(sponsor.image_url)
112134
nodes.img.alt = sponsor.name
113135
nodes.title.textContent = sponsor.name
114136
nodes.description.innerHTML = sponsor.description

0 commit comments

Comments
 (0)