From a0f0a6cf07843a78e035f25f87e599eb14f71d5a Mon Sep 17 00:00:00 2001 From: victorAnumudu Date: Sat, 30 Nov 2024 21:30:03 +0100 Subject: [PATCH] refer links added --- src/Routers.jsx | 6 +- src/components/AuthPages/SignUp/index2.jsx | 10 +-- src/lib/apiConst.js | 1 + src/services/UsersService.js | 8 +++ src/views/InviteRefer.jsx | 78 ++++++++++++++++++++++ src/views/PromoRefer.jsx | 78 ++++++++++++++++++++++ src/views/SignupPageTwo.jsx | 72 +------------------- 7 files changed, 178 insertions(+), 75 deletions(-) create mode 100644 src/views/InviteRefer.jsx create mode 100644 src/views/PromoRefer.jsx diff --git a/src/Routers.jsx b/src/Routers.jsx index d196183..57577ee 100644 --- a/src/Routers.jsx +++ b/src/Routers.jsx @@ -70,6 +70,9 @@ const FamGamesPage = lazy(()=> import("./views/FamGamesPage")); const FamilyRoutesPage = lazy(()=> import("./views/FamilyRoutesPage")); const PromoPage = lazy(()=> import("./views/PromoPage")); +const PromoRefer = lazy(() => import('./views/PromoRefer')) +const InviteRefer = lazy(() => import('./views/InviteRefer')) + export default function Routers() { return ( @@ -94,8 +97,9 @@ export default function Routers() { } /> } /> } /> - } /> } /> + } /> + } /> ) : ( <> diff --git a/src/components/AuthPages/SignUp/index2.jsx b/src/components/AuthPages/SignUp/index2.jsx index a15a891..952d590 100644 --- a/src/components/AuthPages/SignUp/index2.jsx +++ b/src/components/AuthPages/SignUp/index2.jsx @@ -28,8 +28,8 @@ export default function SignUp({details}) { const [formData, setFormData] = useState({ country: country ? country : "", - first_name: details ? details.first_name : "", - last_name: details ? details.last_name : "", + first_name: details ? details.firstname : "", + last_name: details ? details.lastname : "", email: details ? details.email : "", password: "", }); @@ -202,7 +202,7 @@ export default function SignUp({details}) { type="text" value={formData.first_name} inputHandler={handleInputChange} - disable={details.first_name} + disable={details ? true : false} />
@@ -214,7 +214,7 @@ export default function SignUp({details}) { type="text" value={formData.last_name} inputHandler={handleInputChange} - disable={details.last_name} + disable={details ? true : false} />
@@ -227,7 +227,7 @@ export default function SignUp({details}) { type="email" value={formData.email} inputHandler={handleInputChange} - disable={details.email} + disable={details ? true : false} />
diff --git a/src/lib/apiConst.js b/src/lib/apiConst.js index 5653e01..b7178cf 100644 --- a/src/lib/apiConst.js +++ b/src/lib/apiConst.js @@ -59,6 +59,7 @@ export const apiConst = { WRENCHBOARD_RESET_PASSWORD: 11013 , WRENCHBOARD_ACCOUNT_JOBLIST:11014 , WRENCHBOARD_VERIFY_PENDING_LINK: 11015, + WRENCHBOARD_LOAD_REFERLINK: 11072, WRENCHBOARD_ACCOUNT_RESETPASS: 11016, WRENCHBOARD_ACCOUNT_SETPASSWD: 11017, WRENCHBOARD_DELETE_PENDING_LINK: 11018, diff --git a/src/services/UsersService.js b/src/services/UsersService.js index 0cdf4ca..2d1a868 100644 --- a/src/services/UsersService.js +++ b/src/services/UsersService.js @@ -1032,6 +1032,14 @@ class usersService { return this.postAuxEnd("/verifysignuplink", reqData); } + loadRefer(reqData) { // GETS THE INFORMATION OF A USER REFERRED VIA PROMO + const postData = { + action: apiConst.WRENCHBOARD_LOAD_REFERLINK, + ...reqData + }; + return this.postAuxEnd("/loadrefer", postData); + } + // END POINT FOR OFFER RESPONSE (i.e TO ACCEPT, REJECT, CANCEL, ETC OFFER) offersResponse(reqData) { var postData = { diff --git a/src/views/InviteRefer.jsx b/src/views/InviteRefer.jsx new file mode 100644 index 0000000..2d2acc7 --- /dev/null +++ b/src/views/InviteRefer.jsx @@ -0,0 +1,78 @@ +import React, {useState, useEffect} from "react"; +import { useLocation } from "react-router-dom"; +import usersService from '../services/UsersService' + +import SignUp from "../components/AuthPages/SignUp/index2"; +import LoadingSpinner from '../components/Spinners/LoadingSpinner' +import AuthLayout from '../components/AuthPages/AuthLayout2' + +function InviteRefer() { + const api = new usersService() + + const location = useLocation(); + + const queryParams = new URLSearchParams(location?.search); + const refer_link = queryParams.get("refer_link")?.toUpperCase(); + + const [reload, setReload] = useState(false) + + let [details, setDetails] = useState({loading:true, error:false, data:{}}) + + useEffect(()=>{ + setDetails({loading:true, error:false, data:{}}) + if(refer_link){ + const reqData = { + refer_link: refer_link, + path: '' + } + api.loadRefer(reqData).then(res => { + if(res?.data?.internal_return < 0){ + return setDetails({loading:false, error:true, data:{}}) + } + setDetails({loading:false, error:false, data:res.data}) + }).catch(err => { + setDetails({loading:false, error:true, data:{}}) + }) + }else{ + setDetails({loading:false, error:false, data:{}}) + } + },[reload]) + return ( + <> + {details.loading ? + + : details.error ? + + setReload(prev => !prev)} /> + + : + + } + + ); +} + +export default InviteRefer; + + +const ErrorComponent = ({ onClick }) => ( +
+
+

+ This error occurs because you have already verified this link or the + link has expired. Try login or reset password. If none worked, try to + create the account from the start. +

+
+ +
+ +
+
+); diff --git a/src/views/PromoRefer.jsx b/src/views/PromoRefer.jsx new file mode 100644 index 0000000..a24fbd7 --- /dev/null +++ b/src/views/PromoRefer.jsx @@ -0,0 +1,78 @@ +import React, {useState, useEffect} from "react"; +import { useLocation } from "react-router-dom"; +import usersService from '../services/UsersService' + +import SignUp from "../components/AuthPages/SignUp/index2"; +import LoadingSpinner from '../components/Spinners/LoadingSpinner' +import AuthLayout from '../components/AuthPages/AuthLayout2' + +function PromoRefer() { + const api = new usersService() + + const location = useLocation(); + + const queryParams = new URLSearchParams(location?.search); + const refer_link = queryParams.get("refer_link")?.toUpperCase(); + + const [reload, setReload] = useState(false) + + let [details, setDetails] = useState({loading:true, error:false, data:{}}) + + useEffect(()=>{ + setDetails({loading:true, error:false, data:{}}) + if(refer_link){ + const reqData = { + refer_link: refer_link, + path: 'promoref' + } + api.loadRefer(reqData).then(res => { + if(res?.data?.internal_return < 0){ + return setDetails({loading:false, error:true, data:{}}) + } + setDetails({loading:false, error:false, data:res.data}) + }).catch(err => { + setDetails({loading:false, error:true, data:{}}) + }) + }else{ + setDetails({loading:false, error:false, data:{}}) + } + },[reload]) + return ( + <> + {details.loading ? + + : details.error ? + + setReload(prev => !prev)} /> + + : + + } + + ); +} + +export default PromoRefer; + + +const ErrorComponent = ({ onClick }) => ( +
+
+

+ This error occurs because you have already verified this link or the + link has expired. Try login or reset password. If none worked, try to + create the account from the start. +

+
+ +
+ +
+
+); diff --git a/src/views/SignupPageTwo.jsx b/src/views/SignupPageTwo.jsx index 1103da7..f022961 100644 --- a/src/views/SignupPageTwo.jsx +++ b/src/views/SignupPageTwo.jsx @@ -1,79 +1,13 @@ -import React, {useState, useEffect} from "react"; -import { useLocation } from "react-router-dom"; -import usersService from '../services/UsersService' +import React from "react"; import SignUp from "../components/AuthPages/SignUp/index2"; -import LoadingSpinner from '../components/Spinners/LoadingSpinner' -import AuthLayout from '../components/AuthPages/AuthLayout2' function SignupPageTwo() { - const api = new usersService() - - const location = useLocation(); - - const queryParams = new URLSearchParams(location?.search); - const refer_link = queryParams.get("refer_link")?.toUpperCase(); - - const [reload, setReload] = useState(false) - - let [details, setDetails] = useState({loading:true, error:false, data:{}}) - - useEffect(()=>{ - setDetails({loading:true, error:false, data:{}}) - if(refer_link){ - // const timer = setTimeout(()=>{ - // setDetails({loading:false, data:{ - // first_name: 'Emeka', - // last_name: 'John', - // email: 'example@example.com' - // }}) - // },[1000]) - api.verifyEmail(refer_link).then(res => { - setDetails({loading:false, error:false, data:{}}) - console.log('RES', rres) - }).catch(err => { - setDetails({loading:false, error:true, data:{}}) - }) - }else{ - setDetails({loading:false, error:false, data:{}}) - } - },[reload]) return ( <> - {details.loading ? - - : details.error ? - - setReload(prev => !prev)} /> - - : - - } + ); } -export default SignupPageTwo; - - -const ErrorComponent = ({ onClick }) => ( -
-
-

- This error occurs because you have already verified this link or the - link has expired. Try login or reset password. If none worked, try to - create the account from the start. -

-
- -
- -
-
-); +export default SignupPageTwo; \ No newline at end of file -- 2.34.1