aboutsummaryrefslogtreecommitdiffstats
path: root/src/routes/(app)/support
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2024-09-10 20:39:47 -0700
committerAdam Soltys <[email protected]>2024-09-17 09:18:36 -0700
commit1f63848ca9fb01336f04b41434de1cc06a5b3d93 (patch)
tree2affa3041863be365f33d99e1f32bda60cf93a32 /src/routes/(app)/support
parent6e48c584605bec5623c12c470d04d07303983801 (diff)
downloadcoinos-ui-1f63848ca9fb01336f04b41434de1cc06a5b3d93.tar.gz
coinos-ui-1f63848ca9fb01336f04b41434de1cc06a5b3d93.zip
move routes
Diffstat (limited to 'src/routes/(app)/support')
-rw-r--r--src/routes/(app)/support/+page.svelte139
-rw-r--r--src/routes/(app)/support/+server.ts9
2 files changed, 0 insertions, 148 deletions
diff --git a/src/routes/(app)/support/+page.svelte b/src/routes/(app)/support/+page.svelte
deleted file mode 100644
index ad31ad1a..00000000
--- a/src/routes/(app)/support/+page.svelte
+++ /dev/null
@@ -1,139 +0,0 @@
-<script>
- import { onDestroy } from "svelte";
- import { fail, success, post } from "$lib/utils";
- import { scale } from "svelte/transition";
- import AppHeader from "$comp/AppHeader.svelte";
- import Icon from "$comp/Icon.svelte";
- import { t } from "$lib/translations";
-
- export let data;
-
- let { user } = data;
- $: if (user) {
- data.subject = { ...user };
- }
-
- let email;
- let message;
- let sent;
- let recaptchaSiteKey = "6LfCd8YkAAAAANmVJgzN3SQY3n3fv1RhiS5PgMYM";
-
- let submit = (e) => {
- e.preventDefault();
- grecaptcha.ready(() => {
- grecaptcha.execute(recaptchaSiteKey, { action: "submit" }).then((token) =>
- post("/support", { username: user?.username, email, message, token })
- .then(() => (sent = true))
- .catch(() => fail("problem submitting"))
- );
- });
- };
-
- onDestroy(() => {
- const nodeBadge = document.querySelector(".grecaptcha-badge");
- if (nodeBadge) {
- document.body.removeChild(nodeBadge.parentNode);
- }
-
- const scriptSelector =
- "script[src='https://www.google.com/recaptcha/api.js?render=" +
- recaptchaSiteKey +
- "']";
- const script = document.querySelector(scriptSelector);
- if (script) {
- script.remove();
- }
- });
-</script>
-
-<svelte:head
- ><script
- src="https://www.google.com/recaptcha/api.js?render=6LfCd8YkAAAAANmVJgzN3SQY3n3fv1RhiS5PgMYM"
- ></script></svelte:head
->
-
-{#if user}
- <AppHeader {data} />
-{/if}
-
-<div class="container px-4 max-w-lg mx-auto mt-20 space-y-8">
- {#if sent}
- <h1 class="text-center text-3xl md:text-4xl font-semibold">Thank you!</h1>
- <div class="text-center text-lg text-secondary">
- Someone will be in touch shortly.
- </div>
-
- <div>
- <a href={user ? `/${user.username}` : "/"}>
- <button
- class="rounded-full border py-2 px-5 font-bold hover:opacity-80 w-full bg-black text-white"
- >Ok</button
- >
- </a>
- </div>
- {:else}
- <h1 class="text-center text-3xl md:text-4xl font-semibold mb-8">
- {$t("user.support.header")}
- </h1>
-
- <p class="text-secondary text-lg">
- Fill out this form or email us directly at <a
- class="underline"
- > and we'll do our best to get back to you in a timely manner.
- </p>
-
- <form on:submit={submit}>
- <div class="mb-4">
- <label for="account" class="font-semibold"
- >{$t("user.support.accountName")}</label
- >
- <input
- class="bg-primary"
- type="text"
- name="account"
- required
- value={user?.username || ""}
- />
- </div>
-
- <div class="mb-4">
- <label for="email" class="font-semibold"
- >{$t("user.support.email")}</label
- >
- <input
- class="bg-primary"
- type="email"
- name="email"
- bind:value={email}
- required
- />
- </div>
-
- <div class="mb-4">
- <label for="message" class="font-semibold"
- >{$t("user.support.message")}</label
- >
- <textarea
- rows={5}
- class="bg-primary"
- type="text"
- name="message"
- bind:value={message}
- required
- />
- </div>
-
- <button
- type="submit"
- disabled={!email || !message}
- class="g-recaptcha {!email || !message
- ? 'opacity-50'
- : 'opacity-100'} bg-black text-white font-bold rounded-xl py-3 w-full mx-auto {email &&
- message
- ? 'hover:opacity-80'
- : ''}">{$t("user.support.send")}</button
- >
- </form>
- {/if}
-</div>
diff --git a/src/routes/(app)/support/+server.ts b/src/routes/(app)/support/+server.ts
deleted file mode 100644
index e9a16cfc..00000000
--- a/src/routes/(app)/support/+server.ts
+++ /dev/null
@@ -1,9 +0,0 @@
-import { json } from "@sveltejs/kit";
-import { auth, post } from "$lib/utils";
-
-export const prerender = false;
-
-export async function POST({ cookies, request }) {
- let result = await post("/email", await request.json(), auth(cookies));
- return json(result);
-}