parent
7335295dc0
commit
4dc1683d3e
@ -0,0 +1,45 @@ |
||||
{{ define "body" }} |
||||
|
||||
<script async type="module" src="{{ StaticURL "api.js" }}"></script> |
||||
|
||||
<style> |
||||
#result.success { color: green; } |
||||
#result.fail { color: red; } |
||||
</style> |
||||
|
||||
<span id="result"></span> |
||||
|
||||
<script> |
||||
|
||||
(async () => { |
||||
|
||||
const resultSpan = document.getElementById("result"); |
||||
|
||||
try { |
||||
|
||||
const urlParams = new URLSearchParams(window.location.search); |
||||
const subToken = urlParams.get('subToken'); |
||||
|
||||
if (!subToken) throw "No subscription token provided"; |
||||
|
||||
const api = await import("{{ StaticURL "api.js" }}"); |
||||
|
||||
await api.call('/api/mailinglist/finalize', { |
||||
body: { subToken }, |
||||
}); |
||||
|
||||
resultSpan.className = "success"; |
||||
resultSpan.innerHTML = "Your email subscription has been finalized! Please go on about your day."; |
||||
|
||||
} catch (e) { |
||||
resultSpan.className = "fail"; |
||||
resultSpan.innerHTML = e; |
||||
} |
||||
|
||||
})(); |
||||
|
||||
</script> |
||||
|
||||
{{ end }} |
||||
|
||||
{{ template "base.html" . }} |
@ -0,0 +1,44 @@ |
||||
{{ define "body" }} |
||||
|
||||
<script async type="module" src="{{ StaticURL "api.js" }}"></script> |
||||
|
||||
<style> |
||||
#result.success { color: green; } |
||||
#result.fail { color: red; } |
||||
</style> |
||||
|
||||
<span id="result"></span> |
||||
|
||||
<script> |
||||
|
||||
(async () => { |
||||
|
||||
const resultSpan = document.getElementById("result"); |
||||
|
||||
try { |
||||
const urlParams = new URLSearchParams(window.location.search); |
||||
const unsubToken = urlParams.get('unsubToken'); |
||||
|
||||
if (!unsubToken) throw "No unsubscribe token provided"; |
||||
|
||||
const api = await import("{{ StaticURL "api.js" }}"); |
||||
|
||||
await api.call('/api/mailinglist/unsubscribe', { |
||||
body: { unsubToken }, |
||||
}); |
||||
|
||||
resultSpan.className = "success"; |
||||
resultSpan.innerHTML = "You have been unsubscribed! Please go on about your day."; |
||||
|
||||
} catch (e) { |
||||
resultSpan.className = "fail"; |
||||
resultSpan.innerHTML = e; |
||||
} |
||||
|
||||
})(); |
||||
|
||||
</script> |
||||
|
||||
{{ end }} |
||||
|
||||
{{ template "base.html" . }} |
Loading…
Reference in new issue