diff --git a/frontend/src/routes/+layout.svelte b/frontend/src/routes/+layout.svelte index ab6d371..32c55d3 100644 --- a/frontend/src/routes/+layout.svelte +++ b/frontend/src/routes/+layout.svelte @@ -8,6 +8,7 @@ import { version } from "$app/environment"; import { toastStore } from "$lib/toast"; import Toast from "$lib/components/Toast.svelte"; + import { Icon } from "sveltestrap"; export let data: LayoutData; @@ -48,6 +49,9 @@ >) {/if} · About & contact · + + Donate + · Terms of service · Privacy policy

diff --git a/frontend/src/routes/settings/+page.svelte b/frontend/src/routes/settings/+page.svelte index a112ef4..83fa159 100644 --- a/frontend/src/routes/settings/+page.svelte +++ b/frontend/src/routes/settings/+page.svelte @@ -7,8 +7,18 @@ import FallbackImage from "$lib/components/FallbackImage.svelte"; import { userStore } from "$lib/store"; import { addToast } from "$lib/toast"; - import { Button, Icon, Modal, ModalBody, ModalFooter, ModalHeader, Table } from "sveltestrap"; + import { + Alert, + Button, + Icon, + Modal, + ModalBody, + ModalFooter, + ModalHeader, + Table, + } from "sveltestrap"; import type { PageData } from "./$types"; + import { onMount } from "svelte"; export let data: PageData; @@ -73,8 +83,37 @@ invalidateError = e as APIError; } }; + + const DONATE_ALERT_STORE = "alert-1681976313"; + let donateAlertOpen = false; + const closeDonateAlert = () => { + donateAlertOpen = false; + localStorage.setItem(DONATE_ALERT_STORE, "dismissed"); + }; + + onMount(() => { + if (!localStorage.getItem(DONATE_ALERT_STORE)) { + donateAlertOpen = true; + } + }); + + If you find pronouns.cc useful and have the means, I would really appreciate a donation + to keep the site running, fast, and ad-free! +
+ It's not required and doesn't give you any perks, but running a website is expensive so it would really + help. +
+ + (If you want to hide this alert, press the in the top right to hide + it on this computer or phone) + +
+

Your profile