From f99e0aba70efad0deb907d8e27f09fc9f527c8a4 Mon Sep 17 00:00:00 2001 From: Rafi Zadanly Date: Fri, 17 Feb 2023 17:07:50 +0700 Subject: Refactor --- src/pages/activate.js | 111 -------------------------------------------------- 1 file changed, 111 deletions(-) delete mode 100644 src/pages/activate.js (limited to 'src/pages/activate.js') diff --git a/src/pages/activate.js b/src/pages/activate.js deleted file mode 100644 index d9b41bf4..00000000 --- a/src/pages/activate.js +++ /dev/null @@ -1,111 +0,0 @@ -import axios from "axios"; -import Head from "next/head"; -import Image from "next/image"; -import Link from "@/components/elements/Link"; -import { useRouter } from "next/router"; -import { useEffect, useState } from "react"; -import Alert from "@/components/elements/Alert"; -import Layout from "@/components/layouts/Layout"; -import Spinner from "@/components/elements/Spinner"; -import { setAuth } from "@/core/utils/auth"; -import Logo from "@/images/logo.png"; - -export default function Activate() { - const [email, setEmail] = useState(''); - const [isInputFulfilled, setIsInputFulfilled] = useState(false); - const [isLoading, setIsLoading] = useState(false); - const [alert, setAlert] = useState(); - const router = useRouter(); - const { token } = router.query; - - useEffect(() => { - if (router.query.email) setEmail(router.query.email); - }, [router]) - - useEffect(() => { - const activateIfTokenExist = async () => { - if (token) { - let activation = await axios.post(`${process.env.SELF_HOST}/api/activation`, {token}); - if (activation.data.activation) { - setAuth(activation.data.user); - setAlert({ - component: <>Selamat, akun anda berhasil diaktifkan, kembali ke beranda., - type: 'success' - }); - } else { - setAlert({ - component: <>Mohon maaf token sudah tidak aktif, lakukan permintaan aktivasi akun kembali atau masuk jika sudah memiliki akun., - type: 'info' - }); - } - } - } - activateIfTokenExist(); - }, [token]); - - useEffect(() => { - setIsInputFulfilled(email != ''); - }, [email]); - - const activationRequest = async (e) => { - e.preventDefault(); - setIsLoading(true); - let activationRequest = await axios.post(`${process.env.SELF_HOST}/api/activation-request`, {email}); - if (activationRequest.data.activation_request) { - setAlert({ - component: <>Mohon cek email anda untuk aktivasi akun Indoteknik, - type: 'success' - }); - } else { - switch (activationRequest.data.reason) { - case 'NOT_FOUND': - setAlert({ - component: <>Email tersebut belum terdaftar, daftar sekarang., - type: 'info' - }); - break; - case 'ACTIVE': - setAlert({ - component: <>Email tersebut sudah terdaftar dan sudah aktif, masuk sekarang., - type: 'info' - }); - break; - } - } - setIsLoading(false); - } - return ( - <> - - Aktivasi Akun Indoteknik - - - - Logo Indoteknik - -

Aktivasi Akun Indoteknik Anda

-

Link aktivasi akan dikirimkan melalui email

- {alert ? ( - {alert.component} - ) : ''} -
- setEmail(e.target.value)} - autoFocus - /> - -
-
- - ) -} \ No newline at end of file -- cgit v1.2.3