From f01f28a7eac76c6da5bf857bfc80fd347586ce7f Mon Sep 17 00:00:00 2001 From: "HATEC\\SPVDEV001" Date: Wed, 16 Aug 2023 09:39:47 +0700 Subject: register google --- .../components/elements/Navbar/NavbarDesktop.jsx | 6 ++-- src/core/components/layouts/BasicLayout.jsx | 6 ++-- src/lib/auth/components/LoginDesktop.jsx | 11 +++--- src/lib/auth/components/LoginMobile.jsx | 17 +++++++--- src/lib/auth/components/RegisterDesktop.jsx | 39 ++++++++++++++++++++++ src/lib/auth/components/RegisterMobile.jsx | 39 ++++++++++++++++++++++ src/pages/_app.jsx | 10 +++--- src/pages/my/menu.jsx | 9 ++--- 8 files changed, 112 insertions(+), 25 deletions(-) diff --git a/src/core/components/elements/Navbar/NavbarDesktop.jsx b/src/core/components/elements/Navbar/NavbarDesktop.jsx index 06c15b73..17aedeb6 100644 --- a/src/core/components/elements/Navbar/NavbarDesktop.jsx +++ b/src/core/components/elements/Navbar/NavbarDesktop.jsx @@ -179,7 +179,7 @@ const NavbarDesktop = () => {
- {!authenticated && ( + {!auth && ( <> { )} - {authenticated && ( + {auth && ( <>
- Halo, {authenticated?.name} + Halo, {auth?.name}
diff --git a/src/core/components/layouts/BasicLayout.jsx b/src/core/components/layouts/BasicLayout.jsx index e5c6908a..0fea1a3b 100644 --- a/src/core/components/layouts/BasicLayout.jsx +++ b/src/core/components/layouts/BasicLayout.jsx @@ -27,9 +27,9 @@ const BasicLayout = ({ children }) => { } useEffect(() => { - // if (!auth && session) { - // setting() - // } + if (!auth && session) { + setting() + } console.log('ini auth', auth) console.log('ini session', session) const getIP = async () => { diff --git a/src/lib/auth/components/LoginDesktop.jsx b/src/lib/auth/components/LoginDesktop.jsx index 06c90d45..3a7477b9 100644 --- a/src/lib/auth/components/LoginDesktop.jsx +++ b/src/lib/auth/components/LoginDesktop.jsx @@ -7,9 +7,8 @@ import { useSession, signIn, SignOut } from 'next-auth/react' import Image from 'next/image' import { useRouter } from 'next/router' import { useContext, useEffect, useState } from 'react' -import Spinner from '@/core/components/elements/Spinner/Spinner' -import { AuthContext } from '@/pages/_app' import { getAuth, setAuth } from '@/core/utils/auth' +import { setCookie } from 'cookies-next' const LoginDesktop = () => { const { handleSubmit, handleChangeInput, isLoading, isValid, alert, emailRef, passwordRef } = @@ -19,7 +18,6 @@ const LoginDesktop = () => { const [query, setQuery] = useState(router?.query?.next || '/') const { data: session } = useSession() const auth = getAuth() - const { setAuthenticated } = useContext(AuthContext) const handleGoogle = async () => { const url = query != '/' ? '/login?next=' + query : '/login' @@ -27,10 +25,11 @@ const LoginDesktop = () => { } useEffect(() => { - if (session || auth) { - setAuthenticated(session ? session.odooUser : auth) + if(session){ + setCookie('auth', JSON.stringify(session?.odooUser)) + router.push(query) } - }, [session]) + },[session]) return ( diff --git a/src/lib/auth/components/LoginMobile.jsx b/src/lib/auth/components/LoginMobile.jsx index c5177625..68ceb769 100644 --- a/src/lib/auth/components/LoginMobile.jsx +++ b/src/lib/auth/components/LoginMobile.jsx @@ -7,7 +7,8 @@ import useLogin from '../hooks/useLogin' import { useSession, signIn, SignOut } from 'next-auth/react' import { useRouter } from 'next/router' -import { useState } from 'react' +import { useEffect, useState } from 'react' +import { setCookie } from 'cookies-next' const LoginMobile = () => { const { handleSubmit, handleChangeInput, isLoading, isValid, alert, emailRef, passwordRef } = @@ -17,9 +18,17 @@ const LoginMobile = () => { const [query, setQuery] = useState(router?.query?.next || '/') const { data: session } = useSession() - if (session) { - router.push(query) + const handleGoogle = async () => { + const url = query != '/' ? '/login?next=' + query : '/login' + await signIn('google', { callbackUrl: url }) + setCookie('auth', JSON.stringify(session?.odooUser)) } + useEffect(() => { + if (session) { + setCookie('auth', JSON.stringify(session?.odooUser)) + router.push(query) + } + }, [session]) return ( @@ -77,7 +86,7 @@ const LoginMobile = () => {
+
+
+

ATAU

+
+
+ +
Sudah punya akun Indoteknik?{' '} diff --git a/src/lib/auth/components/RegisterMobile.jsx b/src/lib/auth/components/RegisterMobile.jsx index da6efaf5..c21c9325 100644 --- a/src/lib/auth/components/RegisterMobile.jsx +++ b/src/lib/auth/components/RegisterMobile.jsx @@ -7,6 +7,10 @@ import MobileView from '@/core/components/views/MobileView' import BottomPopup from '@/core/components/elements/Popup/BottomPopup' import PageContent from '@/lib/content/components/PageContent' import ReCAPTCHA from 'react-google-recaptcha' +import { signIn, useSession } from 'next-auth/react' +import { useRouter } from 'next/router' +import { setCookie } from 'cookies-next' +import { useEffect } from 'react' const RegisterMobile = () => { const { @@ -24,6 +28,20 @@ const RegisterMobile = () => { setTnd } = useRegister() + const { data: session } = useSession() + const router = useRouter() + + const handleGoogle = async () => { + await signIn('google', { callbackUrl: '/register' }) + } + + useEffect(() => { + if(session){ + setCookie('auth', JSON.stringify(session?.odooUser)) + router.push('/') + } + },[session]) + return (
@@ -122,6 +140,27 @@ const RegisterMobile = () => {
+
+
+

ATAU

+
+
+ + +
Sudah punya akun Indoteknik?{' '} diff --git a/src/pages/_app.jsx b/src/pages/_app.jsx index 9f30752a..86cbe963 100644 --- a/src/pages/_app.jsx +++ b/src/pages/_app.jsx @@ -25,9 +25,9 @@ function MyApp({ Component, pageProps: { session, ...pageProps } }) { const [authenticated, setAuthenticated] = useState(null) const auth = getAuth() - useEffect(() => { - setAuthenticated(auth) - }, [auth]) + // useEffect(() => { + // setAuthenticated(auth) + // }, [auth]) useEffect(() => { const handleRouteChangeStart = () => setAnimateLoader(true) @@ -60,7 +60,7 @@ function MyApp({ Component, pageProps: { session, ...pageProps } }) { }, [isMobile]) return ( - + // {animateLoader && ( @@ -96,7 +96,7 @@ function MyApp({ Component, pageProps: { session, ...pageProps } }) { - + // ) } diff --git a/src/pages/my/menu.jsx b/src/pages/my/menu.jsx index bd20e2eb..fb8e6b03 100644 --- a/src/pages/my/menu.jsx +++ b/src/pages/my/menu.jsx @@ -11,11 +11,12 @@ import { useRouter } from 'next/router' export default function Menu() { const auth = useAuth() const router = useRouter() - const {data : session} = useSession() + const { data: session } = useSession() const logout = () => { - deleteAuth() - router.push('/login') + deleteAuth().then(() => { + router.push('/login') + }) } return ( @@ -64,7 +65,7 @@ export default function Menu() { Daftar Alamat
-
(logout, signOut)} className='p-4 mt-2'> +
logout()} className='p-4 mt-2'>
-- cgit v1.2.3