diff --git a/src/module/auth/login/view/view_login.tsx b/src/module/auth/login/view/view_login.tsx index 2153362..8fba247 100644 --- a/src/module/auth/login/view/view_login.tsx +++ b/src/module/auth/login/view/view_login.tsx @@ -49,23 +49,30 @@ function ViewLogin() { if (cekLogin.success) { const code = Math.floor(Math.random() * 1000) + 1000 setLoading(true) - - const res = await fetch(`https://wa.wibudev.com/code?nom=${cekLogin.phone}&text=*DARMASABA*%0A%0A -JANGAN BERIKAN KODE RAHASIA ini kepada siapa pun TERMASUK PIHAK DARMASABA. Masukkan otentikasi: *${encodeURIComponent(code)}*`).then( - async (res) => { - if (res.status == 200) { - setValPhone(cekLogin.phone) - setOTP(code) - setUser(cekLogin.id) - setVerif(true) - setLoading(false) - toast.success('Kode verifikasi telah dikirim') - } else { - toast.error('Internal Server Error') - setLoading(false) + try { + const res = await fetch(`https://wa.wibudev.com/code?nom=${cekLogin.phone}&text=*DARMASABA*%0A%0A + JANGAN BERIKAN KODE RAHASIA ini kepada siapa pun TERMASUK PIHAK DARMASABA. Masukkan otentikasi: *${encodeURIComponent(code)}*`).then( + async (res) => { + if (res.status == 200) { + setValPhone(cekLogin.phone) + setOTP(code) + setUser(cekLogin.id) + setVerif(true) + setLoading(false) + toast.success('Kode verifikasi telah dikirim') + } else { + console.error(res.status) + toast.error('Internal Server Error') + setLoading(false) + } } - } - ) + ) + } catch (error) { + console.error(error) + toast.error('Internal Server Error') + }finally{ + setLoading(false) + } } else { return toast.error(cekLogin.message) } diff --git a/src/module/auth/varification/view/view_verification.tsx b/src/module/auth/varification/view/view_verification.tsx index 374c099..d345b4c 100644 --- a/src/module/auth/varification/view/view_verification.tsx +++ b/src/module/auth/varification/view/view_verification.tsx @@ -14,26 +14,30 @@ export default function ViewVerification({ phone, otp, user }: IVerification) { const [isLoading, setLoading] = useState(false) async function onResend() { - const code = Math.floor(Math.random() * 1000) + 1000 - - const res = await fetch(`https://wa.wibudev.com/code?nom=${phone}&text=*DARMASABA*%0A%0A -JANGAN BERIKAN KODE RAHASIA ini kepada siapa pun TERMASUK PIHAK DARMASABA. Masukkan otentikasi: *${encodeURIComponent(code)}*`) - .then( - async (res) => { - if (res.status == 200) { - toast.success('Kode verifikasi telah dikirim') - setOTP(code) - } else { - toast.error('Internal Server Error') + try { + const code = Math.floor(Math.random() * 1000) + 1000 + const res = await fetch(`https://wa.wibudev.com/code?nom=${phone}&text=*DARMASABA*%0A%0A + JANGAN BERIKAN KODE RAHASIA ini kepada siapa pun TERMASUK PIHAK DARMASABA. Masukkan otentikasi: *${encodeURIComponent(code)}*`) + .then( + async (res) => { + if (res.status == 200) { + toast.success('Kode verifikasi telah dikirim') + setOTP(code) + } else { + toast.error('Internal Server Error') + } } - } - ); + ); + } catch (error) { + console.error(error) + toast.error('Internal Server Error') + } } async function getVerification() { setLoading(true) if (isOTP == inputOTP) { - const setCookies = await funSetCookies({ user: user }) + const setCookies: any = await funSetCookies({ user: user }) if (setCookies.success) { toast.success(setCookies.message) diff --git a/src/module/discussion/ui/form_create_discussion.tsx b/src/module/discussion/ui/form_create_discussion.tsx index 1aa8245..e53f844 100644 --- a/src/module/discussion/ui/form_create_discussion.tsx +++ b/src/module/discussion/ui/form_create_discussion.tsx @@ -13,6 +13,7 @@ import { funCreateDiscussion } from "../lib/api_discussion"; export default function FormCreateDiscussion({ id }: { id: string }) { const [isValModal, setValModal] = useState(false) + const [loadingModal, setLoadingModal] = useState(false) const router = useRouter() const [isImg, setImg] = useState("") const param = useParams<{ id: string, detail: string }>() @@ -50,26 +51,25 @@ export default function FormCreateDiscussion({ id }: { id: string }) { async function createDiscussion(val: boolean) { try { - if (val) { - const response = await funCreateDiscussion({ - desc: isData.desc, - idDivision: id - }) + setLoadingModal(true) + const response = await funCreateDiscussion({ + desc: isData.desc, + idDivision: id + }) - if (response.success) { - setDataRealtime(response.notif) - toast.success(response.message) - router.push(`/division/${param.id}/discussion/`) - setValModal(false) - } else { - toast.error(response.message) - } + if (response.success) { + setDataRealtime(response.notif) + toast.success(response.message) + router.push(`/division/${param.id}/discussion/`) + } else { + toast.error(response.message) } } catch (error) { console.error(error); toast.error("Gagal menambahkan diskusi, coba lagi nanti"); } finally { setValModal(false) + setLoadingModal(false) } } @@ -94,12 +94,12 @@ export default function FormCreateDiscussion({ id }: { id: string }) { }} value={isData.desc} onChange={(e) => setData({ ...isData, desc: e.target.value })} - onBlur={() => setTouched({ ...touched, desc: true })} - error={ - touched.desc && ( - isData.desc == "" ? "Form Tidak Boleh Kosong" : null - ) - } + // onBlur={() => setTouched({ ...touched, desc: true })} + // error={ + // touched.desc && ( + // isData.desc == "" ? "Form Tidak Boleh Kosong" : null + // ) + // } /> @@ -130,9 +130,11 @@ export default function FormCreateDiscussion({ id }: { id: string }) { - setValModal(false)} + setValModal(false)} description="Apakah Anda yakin ingin menambah data?" - onYes={(val) => { createDiscussion(val) }} /> + onYes={(val) => { + createDiscussion(val) + }} /> ) } \ No newline at end of file diff --git a/src/module/discussion/ui/form_edit_discussion.tsx b/src/module/discussion/ui/form_edit_discussion.tsx index e40967f..66cf5d7 100644 --- a/src/module/discussion/ui/form_edit_discussion.tsx +++ b/src/module/discussion/ui/form_edit_discussion.tsx @@ -12,6 +12,7 @@ import { useHookstate } from "@hookstate/core" export default function FormEditDiscussion() { const [isValModal, setValModal] = useState(false) + const [loadingModal, setLoadingModal] = useState(false) const router = useRouter() const param = useParams<{ id: string, detail: string }>() const [isDataOne, setDataOne] = useState("") @@ -35,43 +36,43 @@ export default function FormEditDiscussion() { } } - async function fetchEditDiscussion(val: boolean) { + async function fetchEditDiscussion() { try { - if (val) { - const response = await funEditDiscussion(param.detail, { - desc: isDataOne - }) - if (response.success) { - toast.success(response.message) - setValModal(false) - router.push(`/division/${param.id}/discussion/${param.detail}`) - } else { - toast.error(response.message) - } + setLoadingModal(true) + const response = await funEditDiscussion(param.detail, { + desc: isDataOne + }) + if (response.success) { + toast.success(response.message) + setValModal(false) + router.push(`/division/${param.id}/discussion/${param.detail}`) + } else { + toast.error(response.message) } - setValModal(false) + } catch (error) { console.error(error); setValModal(false) toast.error("Gagal menambahkan diskusi, coba lagi nanti"); } finally { setValModal(false) + setLoadingModal(false) } } async function getData() { try { - setLoading(true) - const res = await funGetProfileByCookies() - setIMG(`https://wibu-storage.wibudev.com/api/files/${res.data.img}`) - setLoading(false) + setLoading(true) + const res = await funGetProfileByCookies() + setIMG(`https://wibu-storage.wibudev.com/api/files/${res.data.img}`) + setLoading(false) } catch (error) { - console.error(error); + console.error(error); } finally { - setLoading(false) + setLoading(false) } - } - + } + useShallowEffect(() => { fetchGetOneDiscussion() getData() @@ -84,43 +85,43 @@ export default function FormEditDiscussion() { - {loading ? - - : - - } + {loading ? + + : + + } {loading ? - Array(10) - .fill(null) - .map((_, i) => ( - - - - )) - : - -