Compare commits
20 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| d4c6c41cbf | |||
| e112c7776b | |||
| 7f69233054 | |||
| 74c6f6526a | |||
| f3c07ff3b0 | |||
| d3c9231227 | |||
| 13bf86f370 | |||
| c62c7ffbba | |||
| 2d565c5572 | |||
| e026122dea | |||
| 87d1bbafef | |||
| 5345ec08e2 | |||
| 3b877aafd0 | |||
| 99464e5e57 | |||
| e651c0ae5f | |||
| fe270b7431 | |||
| 931a67bf36 | |||
| 97b2d08413 | |||
| 376a72bd55 | |||
| d692c63cfd |
@@ -37,6 +37,8 @@ import StartJob from "./components/MyJobs/StartJob";
|
|||||||
import AddJobPage from "./views/AddJobPage";
|
import AddJobPage from "./views/AddJobPage";
|
||||||
import MyPendingJobsPage from "./views/MyPendingJobsPage";
|
import MyPendingJobsPage from "./views/MyPendingJobsPage";
|
||||||
import ManageActiveJobs from "./views/ManageActiveJobs";
|
import ManageActiveJobs from "./views/ManageActiveJobs";
|
||||||
|
import FamilyManagePage from "./views/FamilyManagePage";
|
||||||
|
import MyCouponPage from "./views/MyCouponPage";
|
||||||
|
|
||||||
export default function Routers() {
|
export default function Routers() {
|
||||||
return (
|
return (
|
||||||
@@ -73,6 +75,7 @@ export default function Routers() {
|
|||||||
<Route exact path="/calendar" element={<CalendarPage />} />
|
<Route exact path="/calendar" element={<CalendarPage />} />
|
||||||
<Route exact path="/resources" element={<ResourcePage />} />
|
<Route exact path="/resources" element={<ResourcePage />} />
|
||||||
<Route exact path="/my-wallet/*" element={<MyWalletPage />} />
|
<Route exact path="/my-wallet/*" element={<MyWalletPage />} />
|
||||||
|
<Route exact path="/my-coupon" element={<MyCouponPage />} />
|
||||||
<Route exact path="/notification" element={<Notification />} />
|
<Route exact path="/notification" element={<Notification />} />
|
||||||
<Route exact path="/market-place" element={<MarketPlacePage />} />
|
<Route exact path="/market-place" element={<MarketPlacePage />} />
|
||||||
<Route exact path="/market" element={<MarketPlacePage />} />
|
<Route exact path="/market" element={<MarketPlacePage />} />
|
||||||
@@ -83,6 +86,7 @@ export default function Routers() {
|
|||||||
<Route exact path="/my-active-jobs" element={<MyActiveJobsPage />} />
|
<Route exact path="/my-active-jobs" element={<MyActiveJobsPage />} />
|
||||||
<Route exact path="/my-pending-jobs" element={<MyPendingJobsPage />} />
|
<Route exact path="/my-pending-jobs" element={<MyPendingJobsPage />} />
|
||||||
<Route exact path="/acc-family" element={<FamilyAccPage />} />
|
<Route exact path="/acc-family" element={<FamilyAccPage />} />
|
||||||
|
<Route exact path="/manage-family" element={<FamilyManagePage />} />
|
||||||
<Route exact path="/start-job" element={<StartJob />} />
|
<Route exact path="/start-job" element={<StartJob />} />
|
||||||
<Route exact path="/manage-active-job" element={<ManageActiveJobs />} />
|
<Route exact path="/manage-active-job" element={<ManageActiveJobs />} />
|
||||||
<Route
|
<Route
|
||||||
|
|||||||
@@ -16,6 +16,8 @@ import { updateUserDetails } from "../../../store/UserDetails";
|
|||||||
export default function Login() {
|
export default function Login() {
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
|
|
||||||
|
let [loginCom, setLoginCom] = useState({ user: true, family: false });
|
||||||
|
|
||||||
const [checked, setValue] = useState(false);
|
const [checked, setValue] = useState(false);
|
||||||
const [loginLoading, setLoginLoading] = useState(false);
|
const [loginLoading, setLoginLoading] = useState(false);
|
||||||
|
|
||||||
@@ -28,6 +30,15 @@ export default function Login() {
|
|||||||
setValue(!checked);
|
setValue(!checked);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//FUNCTION TO DETERMINE/CHANGE LOGIN COMPONENT
|
||||||
|
const handleLoginCom = ({ target: { name } }) => {
|
||||||
|
if (name == "user") {
|
||||||
|
setLoginCom({ [name]: true, family: false });
|
||||||
|
} else {
|
||||||
|
setLoginCom({ [name]: false, family: true });
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
// email
|
// email
|
||||||
const [email, setMail] = useState("");
|
const [email, setMail] = useState("");
|
||||||
const handleEmail = (e) => {
|
const handleEmail = (e) => {
|
||||||
@@ -41,49 +52,64 @@ export default function Login() {
|
|||||||
const navigate = useNavigate();
|
const navigate = useNavigate();
|
||||||
const userApi = new usersService();
|
const userApi = new usersService();
|
||||||
|
|
||||||
const doLogin = async () => {
|
// FUNCTION TO HANDLE USER LOGIN
|
||||||
try {
|
const doLogin = ({ target: { name } }) => {
|
||||||
if (email !== "" && password !== "") {
|
setLoginLoading(true);
|
||||||
var postData = {
|
let postData = {}; // Post Data for API
|
||||||
|
if (!email || !password) {
|
||||||
|
setLoginLoading(false);
|
||||||
|
setMsgError("Please fill in the fields");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (name == "userlogin") {
|
||||||
|
// Post Data Info for normal Login
|
||||||
|
postData = {
|
||||||
username: email,
|
username: email,
|
||||||
password: password,
|
password: password,
|
||||||
sessionid: "STARTING",
|
sessionid: "STARTING",
|
||||||
};
|
};
|
||||||
const loginResult = await userApi.logInUser(postData); // just for a test
|
} else {
|
||||||
//debugger;
|
postData = {
|
||||||
// if (email === "support@mermsemr.com") {
|
// Post Data Info for family Login
|
||||||
if (
|
username: email,
|
||||||
loginResult.data.status > 0 &&
|
pin: password,
|
||||||
loginResult.data.internal_return == 100 &&
|
sessionid: "20067A92714",
|
||||||
loginResult.data.session != ""
|
login_mode: 1105,
|
||||||
) {
|
action: 11025,
|
||||||
// just for a start
|
};
|
||||||
localStorage.setItem("member_id", `${loginResult.data.member_id}`);
|
}
|
||||||
localStorage.setItem("uid", `${loginResult.data.uid}`);
|
|
||||||
localStorage.setItem("session_token", `${loginResult.data.session}`);
|
userApi
|
||||||
localStorage.setItem("session", `${loginResult.data.session}`);
|
.logInUser(postData)
|
||||||
setLoginLoading(true);
|
.then((res) => {
|
||||||
// userApi.getUserReminders(); //testing
|
if (res.status != 200 || res.data.internal_return < 0) {
|
||||||
dispatch(updateUserDetails(loginResult.data));
|
// setMsgError("Wrong, email/password");
|
||||||
|
setLoginError(true);
|
||||||
|
setLoginLoading(false);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
localStorage.setItem("member_id", `${res.data.member_id}`);
|
||||||
|
localStorage.setItem("uid", `${res.data.uid}`);
|
||||||
|
localStorage.setItem("session_token", `${res.data.session}`);
|
||||||
|
// localStorage.setItem("session", `${res.data.session}`);
|
||||||
|
dispatch(updateUserDetails(res.data));
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
navigate("/", { replace: true });
|
navigate("/", { replace: true });
|
||||||
setLoginLoading(false);
|
setLoginLoading(false);
|
||||||
}, 2000);
|
}, 2000);
|
||||||
} else {
|
})
|
||||||
// toast.error("Invalid Credential");
|
.catch((error) => {
|
||||||
setLoginError(true);
|
setMsgError("Unable to login, try again");
|
||||||
}
|
setLoginLoading(false);
|
||||||
} else {
|
})
|
||||||
setMsgError("Please fill in the fields");
|
.finally(() => {
|
||||||
}
|
|
||||||
} catch (error) {
|
|
||||||
setMsgError("An error occurred");
|
|
||||||
} finally {
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
setLoginError(false);
|
setLoginError(false);
|
||||||
setMsgError(null);
|
setMsgError(null);
|
||||||
|
setLoginLoading(false);
|
||||||
}, Number(process.env.REACT_APP_LOGIN_ERROR_TIMEOUT));
|
}, Number(process.env.REACT_APP_LOGIN_ERROR_TIMEOUT));
|
||||||
}
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
@@ -102,9 +128,9 @@ export default function Login() {
|
|||||||
<div className="content-wrapper login shadow-md w-full lg:max-w-[500px] mx-auto flex justify-center items-center xl:bg-white dark:bg-dark-white 2xl:w-[828px] rounded-[0.475rem] sm:p-7 p-5">
|
<div className="content-wrapper login shadow-md w-full lg:max-w-[500px] mx-auto flex justify-center items-center xl:bg-white dark:bg-dark-white 2xl:w-[828px] rounded-[0.475rem] sm:p-7 p-5">
|
||||||
<div className="w-full">
|
<div className="w-full">
|
||||||
<div className="title-area flex flex-col justify-center items-center relative text-center mb-7">
|
<div className="title-area flex flex-col justify-center items-center relative text-center mb-7">
|
||||||
<h1 className="text-[#181c32] font-semibold dark:text-white mb-3 leading-[27.3px] text-[22.75px]">
|
{/* <h1 className="text-[#181c32] font-semibold dark:text-white mb-3 leading-[27.3px] text-[22.75px]">
|
||||||
Sign In to WrenchBoard
|
Sign In to WrenchBoard
|
||||||
</h1>
|
</h1> */}
|
||||||
<span className="text-gray-400 font-medium text-[16.25px] leading-[24.375px]">
|
<span className="text-gray-400 font-medium text-[16.25px] leading-[24.375px]">
|
||||||
New Here?{" "}
|
New Here?{" "}
|
||||||
<Link
|
<Link
|
||||||
@@ -115,9 +141,39 @@ export default function Login() {
|
|||||||
</Link>
|
</Link>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div className="input-area">
|
|
||||||
|
{/* switch login component */}
|
||||||
|
<div className="flex justify-start items-end">
|
||||||
|
<button
|
||||||
|
name="user"
|
||||||
|
className={`px-2 py-1 w-[100px] text-left h-[40px] text-lg font-bold text-[#4687ba] hover:text-[#009ef7] tracking-wide transition outline-none border-2 border-b-0 border-r-0 border-[#4687ba] ${
|
||||||
|
loginCom.user && "border-r-2 h-[45px]"
|
||||||
|
}`}
|
||||||
|
onClick={handleLoginCom}
|
||||||
|
>
|
||||||
|
Sign in
|
||||||
|
</button>
|
||||||
|
<button
|
||||||
|
name="family"
|
||||||
|
className={`px-2 py-1 w-[100px] text-left h-[40px] text-lg font-bold text-[#4687ba] hover:text-[#009ef7] tracking-wide transition outline-none border-2 border-b-0 border-l-0 border-[#4687ba] ${
|
||||||
|
loginCom.family && "border-l-2 h-[45px]"
|
||||||
|
}`}
|
||||||
|
onClick={handleLoginCom}
|
||||||
|
>
|
||||||
|
Family
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{/* END of switch login component */}
|
||||||
|
|
||||||
|
{/* for login component */}
|
||||||
|
{
|
||||||
|
loginCom.user ? (
|
||||||
|
//user login compoenent
|
||||||
|
<div className="p-2 input-area border-2 border-[#4687ba]">
|
||||||
<div className="input-item mb-5">
|
<div className="input-item mb-5">
|
||||||
<InputCom
|
<InputCom
|
||||||
|
labelClass="tracking-wider"
|
||||||
fieldClass="px-6"
|
fieldClass="px-6"
|
||||||
value={email}
|
value={email}
|
||||||
inputHandler={handleEmail}
|
inputHandler={handleEmail}
|
||||||
@@ -131,6 +187,7 @@ export default function Login() {
|
|||||||
|
|
||||||
<div className="input-item mb-5">
|
<div className="input-item mb-5">
|
||||||
<InputCom
|
<InputCom
|
||||||
|
labelClass="tracking-wider"
|
||||||
fieldClass="px-6"
|
fieldClass="px-6"
|
||||||
value={password}
|
value={password}
|
||||||
inputHandler={handlePassword}
|
inputHandler={handlePassword}
|
||||||
@@ -162,8 +219,10 @@ export default function Login() {
|
|||||||
<div className="signin-area mb-3.5">
|
<div className="signin-area mb-3.5">
|
||||||
<div className="flex justify-center">
|
<div className="flex justify-center">
|
||||||
<button
|
<button
|
||||||
|
name="userlogin"
|
||||||
onClick={doLogin}
|
onClick={doLogin}
|
||||||
type="button"
|
type="button"
|
||||||
|
disabled={loginLoading}
|
||||||
className={`btn-login rounded-[0.475rem] mb-6 text-xl text-white flex justify-center bg-[#4687ba] hover:bg-[#009ef7] transition-all duration-300 items-center text-[15px]`}
|
className={`btn-login rounded-[0.475rem] mb-6 text-xl text-white flex justify-center bg-[#4687ba] hover:bg-[#009ef7] transition-all duration-300 items-center text-[15px]`}
|
||||||
>
|
>
|
||||||
{loginLoading ? (
|
{loginLoading ? (
|
||||||
@@ -174,17 +233,86 @@ export default function Login() {
|
|||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<BrandBtn link="#" imgSrc={googleLogo} brand="Google" />
|
<BrandBtn link="#" imgSrc={googleLogo} brand="Google" />
|
||||||
<BrandBtn link="#" imgSrc={facebookLogo} brand="Facebook" />
|
<BrandBtn
|
||||||
|
link="#"
|
||||||
|
imgSrc={facebookLogo}
|
||||||
|
brand="Facebook"
|
||||||
|
/>
|
||||||
<BrandBtn link="#" imgSrc={appleLogo} brand="Apple" />
|
<BrandBtn link="#" imgSrc={appleLogo} brand="Apple" />
|
||||||
</div>
|
</div>
|
||||||
{/* <div className="signup-area flex justify-center">
|
</div>
|
||||||
<p className="sm:text-lg text-sm text-thin-light-gray font-normal">
|
) : (
|
||||||
Don't have an account ?
|
// END of user login compoenent
|
||||||
<a href="/signup" className="ml-2 text-dark-gray dark:text-white">
|
// family login compoenent
|
||||||
Sign up free
|
<div className="p-2 input-area border-2 border-[#4687ba]">
|
||||||
</a>
|
<div className="input-item mb-5">
|
||||||
</p>
|
<InputCom
|
||||||
</div> */}
|
labelClass="tracking-wider"
|
||||||
|
fieldClass="px-6"
|
||||||
|
value={email}
|
||||||
|
inputHandler={handleEmail}
|
||||||
|
placeholder="support@mermsemr.com"
|
||||||
|
label="Username"
|
||||||
|
name="email"
|
||||||
|
type="email"
|
||||||
|
iconName="message"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="input-item mb-5">
|
||||||
|
<InputCom
|
||||||
|
labelClass="tracking-wider"
|
||||||
|
fieldClass="px-6"
|
||||||
|
value={password}
|
||||||
|
inputHandler={handlePassword}
|
||||||
|
placeholder="● ● ● ● ● ●"
|
||||||
|
label="Pin"
|
||||||
|
name="password"
|
||||||
|
type="password"
|
||||||
|
iconName="password"
|
||||||
|
// forgotPassword
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
{loginError && (
|
||||||
|
<div className="relative p-4 text-[#912741] bg-[#fcd9e2] border-[#fbc6d3] mb-4 rounded-[0.475rem] text-md font-thin leading-[19.5px] text-[13px]">
|
||||||
|
Invalid username or password{" "}
|
||||||
|
{/* <Link to="/#" className="text-[#009ef7]">
|
||||||
|
reset your password
|
||||||
|
</Link>{" "}
|
||||||
|
or{" "}
|
||||||
|
<Link to="/signup" className="text-[#009ef7]">
|
||||||
|
create a new account
|
||||||
|
</Link> */}
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
|
{msgError && (
|
||||||
|
<div className="relative p-4 text-[#912741] bg-[#fcd9e2] border-[#fbc6d3] mb-4 rounded-[0.475rem] text-md font-light leading-[19.5px] text-[13px]">
|
||||||
|
{msgError}
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
|
<div className="signin-area mb-1.5">
|
||||||
|
<div className="flex justify-center">
|
||||||
|
<button
|
||||||
|
name="familylogin"
|
||||||
|
onClick={doLogin}
|
||||||
|
disabled={loginLoading}
|
||||||
|
type="button"
|
||||||
|
className={`btn-login rounded-[0.475rem] text-xl text-white flex justify-center bg-[#4687ba] hover:bg-[#009ef7] transition-all duration-300 items-center text-[15px]`}
|
||||||
|
>
|
||||||
|
{loginLoading ? (
|
||||||
|
<div className="signup btn-loader"></div>
|
||||||
|
) : (
|
||||||
|
<span>Continue</span>
|
||||||
|
)}
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)
|
||||||
|
// END of family login compoenent
|
||||||
|
}
|
||||||
|
{/* END of login component */}
|
||||||
|
|
||||||
<div className="pt-5 text-[#181c32] text-center font-semibold text-[13.975px] leading-[20.9625px]">
|
<div className="pt-5 text-[#181c32] text-center font-semibold text-[13.975px] leading-[20.9625px]">
|
||||||
This site is protected by hCaptcha and the our Privacy Policy
|
This site is protected by hCaptcha and the our Privacy Policy
|
||||||
and Terms of Service apply.
|
and Terms of Service apply.
|
||||||
@@ -192,17 +320,15 @@ export default function Login() {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</AuthLayout>
|
</AuthLayout>
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
const BrandBtn = ({ link, imgSrc, brand }) => {
|
const BrandBtn = ({ link, imgSrc, brand }) => {
|
||||||
|
const doGoogle = async () => {
|
||||||
const doGoogle = async ()=>{
|
alert("start google");
|
||||||
alert('start google');
|
};
|
||||||
}
|
|
||||||
|
|
||||||
// onSuccess: (codeResponse) => setUser(codeResponse),
|
// onSuccess: (codeResponse) => setUser(codeResponse),
|
||||||
|
|
||||||
@@ -211,13 +337,13 @@ const BrandBtn = ({ link, imgSrc, brand }) => {
|
|||||||
// onError: (error) => console.log('Login Failed:', error)
|
// onError: (error) => console.log('Login Failed:', error)
|
||||||
// });
|
// });
|
||||||
|
|
||||||
const doApple = async ()=>{
|
const doApple = async () => {
|
||||||
alert('start apple');
|
alert("start apple");
|
||||||
}
|
};
|
||||||
|
|
||||||
const doFacebook = async ()=>{
|
const doFacebook = async () => {
|
||||||
alert('start facebook');
|
alert("start facebook");
|
||||||
}
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="flex justify-center bottomMargin">
|
<div className="flex justify-center bottomMargin">
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ import { Link } from "react-router-dom";
|
|||||||
import localImgLoad from "../../lib/localImgLoad";
|
import localImgLoad from "../../lib/localImgLoad";
|
||||||
|
|
||||||
export default function HomeBannerOffersCard(props) {
|
export default function HomeBannerOffersCard(props) {
|
||||||
|
console.log("HomeBannerOffersCard->",props.itemData)
|
||||||
return (
|
return (
|
||||||
<Link
|
<Link
|
||||||
to="/my-collection/collection-item"
|
to="/my-collection/collection-item"
|
||||||
@@ -12,13 +13,13 @@ export default function HomeBannerOffersCard(props) {
|
|||||||
<div className="content flex justify-between items-center mb-5">
|
<div className="content flex justify-between items-center mb-5">
|
||||||
<div>
|
<div>
|
||||||
<h1 className="text-xl font-bold text-dark-gray dark:text-white tracking-wide">
|
<h1 className="text-xl font-bold text-dark-gray dark:text-white tracking-wide">
|
||||||
<>Ab hshsh jsjsj hshdhhdjjd</>
|
<>{props.itemData.title}</>
|
||||||
</h1>
|
</h1>
|
||||||
</div>
|
</div>
|
||||||
{/*<SelectBox datas={filterDatas} action={dataSetHandler} />*/}
|
{/*<SelectBox datas={filterDatas} action={dataSetHandler} />*/}
|
||||||
</div>
|
</div>
|
||||||
<div className="h-[233px]">
|
<div className="h-[233px]">
|
||||||
BEST IMAGE IN THE WORLLD
|
{props.itemData.description}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</Link>
|
</Link>
|
||||||
|
|||||||
@@ -0,0 +1,102 @@
|
|||||||
|
import React, { useCallback, useEffect, useMemo, useState } from "react";
|
||||||
|
import InputCom from "../Helpers/Inputs/InputCom";
|
||||||
|
import Layout from "../Partials/Layout";
|
||||||
|
import FamilyTable from "./FamilyTable";
|
||||||
|
import SiteService from "../../services/SiteService";
|
||||||
|
import ModalCom from "../Helpers/ModalCom";
|
||||||
|
import FamilyManageTabs from "./FamilyManageTabs";
|
||||||
|
import { useLocation } from "react-router-dom";
|
||||||
|
|
||||||
|
export default function FamilyManage() {
|
||||||
|
const [selectTab, setValue] = useState("today");
|
||||||
|
const [selectedAge, setSelectedAge] = useState(undefined);
|
||||||
|
const [familyList, setFamilyList] = useState([]);
|
||||||
|
const [loader, setLoader] = useState(false);
|
||||||
|
const [popUp, setPopUp] = useState(false);
|
||||||
|
const [listReload, setListReload] = useState(false);
|
||||||
|
const [msgErr, setMsgErr] = useState("");
|
||||||
|
const [formData, setFormData] = useState({
|
||||||
|
first_name: "",
|
||||||
|
last_name: "",
|
||||||
|
});
|
||||||
|
|
||||||
|
let location = useLocation();
|
||||||
|
let accountDetails = location?.state
|
||||||
|
|
||||||
|
const apiCall = useMemo(() => new SiteService(), []);
|
||||||
|
|
||||||
|
// This is to make sure it's called once and used everywhere
|
||||||
|
let memberId = localStorage.getItem("member_id");
|
||||||
|
let uid = localStorage.getItem("uid");
|
||||||
|
let sessionId = localStorage.getItem("session_token");
|
||||||
|
|
||||||
|
const popUpHandler = () => {
|
||||||
|
setPopUp((prev) => !prev);
|
||||||
|
};
|
||||||
|
|
||||||
|
// tab handler
|
||||||
|
const filterHandler = (value) => {
|
||||||
|
setValue(value);
|
||||||
|
};
|
||||||
|
|
||||||
|
// member listing
|
||||||
|
const memberList = useCallback(async () => {
|
||||||
|
setLoader(true);
|
||||||
|
try {
|
||||||
|
let reqData = {
|
||||||
|
member_id: memberId,
|
||||||
|
uid: uid,
|
||||||
|
session_id: sessionId,
|
||||||
|
limit: 20,
|
||||||
|
offset: 0,
|
||||||
|
action: 22010,
|
||||||
|
};
|
||||||
|
|
||||||
|
let res = await apiCall.familyListings(reqData);
|
||||||
|
const { data } = res;
|
||||||
|
if (data?.internal_return >= 0 && data?.status == "OK") {
|
||||||
|
let { result_list } = data;
|
||||||
|
setFamilyList(result_list);
|
||||||
|
setLoader(false);
|
||||||
|
} else return;
|
||||||
|
} catch (error) {
|
||||||
|
setLoader(false);
|
||||||
|
throw new Error(error);
|
||||||
|
}
|
||||||
|
}, [apiCall, memberId, sessionId, uid]);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
memberList();
|
||||||
|
}, [listReload, memberList]);
|
||||||
|
|
||||||
|
console.log('Ebueb', familyList)
|
||||||
|
|
||||||
|
return (
|
||||||
|
<Layout>
|
||||||
|
{/*<CommonHead />*/}
|
||||||
|
<div className="notification-page w-full mb-10">
|
||||||
|
<div className="notification-wrapper w-full">
|
||||||
|
{/* heading */}
|
||||||
|
<div className="sm:flex justify-between items-center mb-6">
|
||||||
|
<div className="mb-5 sm:mb-0">
|
||||||
|
<h1 className="text-26 font-bold inline-flex gap-3 text-dark-gray dark:text-white items-center">
|
||||||
|
<span
|
||||||
|
className={`${selectTab === "today" ? "block" : "hidden"}`}
|
||||||
|
>
|
||||||
|
Manage Family
|
||||||
|
</span>
|
||||||
|
</h1>
|
||||||
|
</div>
|
||||||
|
<div className="slider-btns flex space-x-4">
|
||||||
|
<div
|
||||||
|
onClick={() => filterHandler("today")}
|
||||||
|
className="relative"
|
||||||
|
></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<FamilyManageTabs accountDetails={accountDetails} loader={loader} />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</Layout>
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -0,0 +1,235 @@
|
|||||||
|
import React, {
|
||||||
|
useCallback,
|
||||||
|
useEffect,
|
||||||
|
useMemo,
|
||||||
|
useRef,
|
||||||
|
useState,
|
||||||
|
} from "react";
|
||||||
|
import LoadingSpinner from "../Spinners/LoadingSpinner";
|
||||||
|
import cover from "../../assets/images/profile-info-cover.png";
|
||||||
|
import profile from "../../assets/images/profile-info-profile.png";
|
||||||
|
import usersService from "../../services/UsersService";
|
||||||
|
|
||||||
|
export default function FamilyManageTabs({
|
||||||
|
className,
|
||||||
|
accountDetails,
|
||||||
|
loader,
|
||||||
|
}) {
|
||||||
|
const [familyDetails, setFamilyDetails] = useState(null);
|
||||||
|
const [errMsg, setErrMsg] = useState("");
|
||||||
|
// List of tabs
|
||||||
|
const tabs = [
|
||||||
|
{
|
||||||
|
id: 1,
|
||||||
|
name: "Tasks",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 2,
|
||||||
|
name: "Account",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 3,
|
||||||
|
name: "Profile",
|
||||||
|
},
|
||||||
|
];
|
||||||
|
const [tab, setTab] = useState(tabs[0].name);
|
||||||
|
const [manageLoader, setManageLoader] = useState(false);
|
||||||
|
const tabHandler = (value) => {
|
||||||
|
setTab(value);
|
||||||
|
};
|
||||||
|
// For profile uploads
|
||||||
|
const [profileImg, setProfileImg] = useState(profile);
|
||||||
|
// profile img
|
||||||
|
const profileImgInput = useRef(null);
|
||||||
|
const browseProfileImg = () => {
|
||||||
|
profileImgInput.current.click();
|
||||||
|
};
|
||||||
|
const profileImgChangHandler = (e) => {
|
||||||
|
if (e.target.value !== "") {
|
||||||
|
const imgReader = new FileReader();
|
||||||
|
imgReader.onload = (event) => {
|
||||||
|
setProfileImg(event.target.result);
|
||||||
|
};
|
||||||
|
imgReader.readAsDataURL(e.target.files[0]);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
// Api call
|
||||||
|
const apiCall = useMemo(() => new usersService(), []);
|
||||||
|
// function for manage family
|
||||||
|
const familyManageHandler = useCallback(async () => {
|
||||||
|
setManageLoader(true);
|
||||||
|
try {
|
||||||
|
let { family_uid } = accountDetails;
|
||||||
|
let reqData = { family_uid };
|
||||||
|
let res = await apiCall.ManageFamily(reqData);
|
||||||
|
let { data } = await res;
|
||||||
|
if (data?.internal_return < 0) return;
|
||||||
|
setFamilyDetails(data);
|
||||||
|
setManageLoader(false);
|
||||||
|
} catch (error) {
|
||||||
|
setErrMsg("An error occurred");
|
||||||
|
throw new Error(error);
|
||||||
|
}
|
||||||
|
}, [apiCall, accountDetails]);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
familyManageHandler();
|
||||||
|
}, []);
|
||||||
|
|
||||||
|
console.log(familyDetails);
|
||||||
|
return (
|
||||||
|
<div
|
||||||
|
className={`update-table w-full bg-white dark:bg-dark-white overflow-y-auto rounded-2xl section-shadow min-h-[520px] max-h-[600px] ${
|
||||||
|
className || ""
|
||||||
|
}`}
|
||||||
|
>
|
||||||
|
<div className="relative w-full overflow-x-auto sm:rounded-lg">
|
||||||
|
{loader ? (
|
||||||
|
<div className="h-full min-h-[500px] w-full overflow-hidden flex justify-center items-center">
|
||||||
|
<LoadingSpinner size="16" color="sky-blue" />
|
||||||
|
</div>
|
||||||
|
) : (
|
||||||
|
<div className="w-full h-full text-sm text-left text-gray-500 dark:text-gray-400 relative grid grid-cols-4 min-h-[520px]">
|
||||||
|
<div className="border-r border-[#E3E4FE] dark:border-[#a7a9b533] p-6 h-full">
|
||||||
|
<ProfileInfo
|
||||||
|
profileImg={profileImg}
|
||||||
|
profileImgInput={profileImgInput}
|
||||||
|
profileImgChangHandler={profileImgChangHandler}
|
||||||
|
browseProfileImg={browseProfileImg}
|
||||||
|
accountDetails={accountDetails}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div className="col-span-3 p-6 h-full w-full">
|
||||||
|
<div className="flex flex-col w-full">
|
||||||
|
<ul className="flex-[0.1] flex gap-2 items-center border-b border-b-[#FAFAF] w-full">
|
||||||
|
{tabs.map(({ name, id }) => (
|
||||||
|
<li
|
||||||
|
onClick={() => tabHandler(name)}
|
||||||
|
className={`p-4 flex hover:text-purple transition-all ease-in-out items-center cursor-pointer overflow-hidden text-xl ${
|
||||||
|
tab === name
|
||||||
|
? "text-purple border-r"
|
||||||
|
: " text-thin-light-gray"
|
||||||
|
}`}
|
||||||
|
key={id}
|
||||||
|
>
|
||||||
|
<h1>{name}</h1>
|
||||||
|
</li>
|
||||||
|
))}
|
||||||
|
</ul>
|
||||||
|
<div className="flex-[0.9] lg:min-h-[450px] h-full">
|
||||||
|
{/* Your content here */}
|
||||||
|
{tabs.map(({ name, id }) => {
|
||||||
|
return (
|
||||||
|
<div
|
||||||
|
className={`${
|
||||||
|
tab === name ? "block" : "hidden"
|
||||||
|
} h-full p-4 border border-[#dbd9d9]`}
|
||||||
|
key={id}
|
||||||
|
>
|
||||||
|
{manageLoader ? (
|
||||||
|
<LoadingSpinner size="8" color="sky-blue" />
|
||||||
|
) : (
|
||||||
|
<>
|
||||||
|
{name === "Tasks" && <Tasks />}
|
||||||
|
{name === "Account" && (
|
||||||
|
<Account familyDetails={familyDetails} />
|
||||||
|
)}
|
||||||
|
{name === "Profile" && <Profile />}
|
||||||
|
</>
|
||||||
|
)}
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
})}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
function ProfileInfo({
|
||||||
|
profileImg,
|
||||||
|
profileImgInput,
|
||||||
|
profileImgChangHandler,
|
||||||
|
browseProfileImg,
|
||||||
|
accountDetails,
|
||||||
|
}) {
|
||||||
|
let { firstname, lastname, age } = accountDetails;
|
||||||
|
return (
|
||||||
|
<div className="flex flex-col items-center gap-6">
|
||||||
|
<div className="flex justify-center">
|
||||||
|
<div className="w-full relative">
|
||||||
|
<img
|
||||||
|
src={profileImg}
|
||||||
|
alt=""
|
||||||
|
className="sm:w-[198px] sm:h-[198px] w-[120px] h-[120px] rounded-full overflow-hidden object-cover"
|
||||||
|
/>
|
||||||
|
<input
|
||||||
|
ref={profileImgInput}
|
||||||
|
onChange={(e) => profileImgChangHandler(e)}
|
||||||
|
type="file"
|
||||||
|
className="hidden"
|
||||||
|
/>
|
||||||
|
<div
|
||||||
|
onClick={browseProfileImg}
|
||||||
|
className="w-[32px] h-[32px] absolute bottom-7 sm:right-2 right-[105px] hover:bg-pink bg-dark-gray rounded-full cursor-pointer"
|
||||||
|
>
|
||||||
|
<svg
|
||||||
|
width="32"
|
||||||
|
height="32"
|
||||||
|
viewBox="0 0 32 32"
|
||||||
|
fill="none"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
>
|
||||||
|
<path
|
||||||
|
d="M16.5147 11.5C17.7284 12.7137 18.9234 13.9087 20.1296 15.115C19.9798 15.2611 19.8187 15.4109 19.6651 15.5683C17.4699 17.7635 15.271 19.9587 13.0758 22.1539C12.9334 22.2962 12.7948 22.4386 12.6524 22.5735C12.6187 22.6034 12.5663 22.6296 12.5213 22.6296C11.3788 22.6334 10.2362 22.6297 9.09365 22.6334C9.01498 22.6334 9 22.6034 9 22.536C9 21.4009 9 20.2621 9.00375 19.1271C9.00375 19.0746 9.02997 19.0109 9.06368 18.9772C10.4123 17.6249 11.7609 16.2763 13.1095 14.9277C14.2295 13.8076 15.3459 12.6913 16.466 11.5712C16.4884 11.5487 16.4997 11.5187 16.5147 11.5Z"
|
||||||
|
fill="white"
|
||||||
|
/>
|
||||||
|
<path
|
||||||
|
d="M20.9499 14.2904C19.7436 13.0842 18.5449 11.8854 17.3499 10.6904C17.5634 10.4694 17.7844 10.2446 18.0054 10.0199C18.2639 9.76139 18.5261 9.50291 18.7884 9.24443C19.118 8.91852 19.5713 8.91852 19.8972 9.24443C20.7251 10.0611 21.5492 10.8815 22.3771 11.6981C22.6993 12.0165 22.7105 12.4698 22.3996 12.792C21.9238 13.2865 21.4443 13.7772 20.9686 14.2717C20.9648 14.2792 20.9536 14.2867 20.9499 14.2904Z"
|
||||||
|
fill="white"
|
||||||
|
/>
|
||||||
|
</svg>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className="flex flex-col justify-center gap-3 items-center">
|
||||||
|
<h1 className="font-bold text-xl tracking-wide line-clamp-1 text-dark-gray dark:text-white capitalize">
|
||||||
|
{firstname}
|
||||||
|
</h1>
|
||||||
|
<h1 className="font-bold text-xl tracking-wide line-clamp-1 text-dark-gray dark:text-white capitalize">
|
||||||
|
{lastname}
|
||||||
|
</h1>
|
||||||
|
<h1 className="font-bold text-xl tracking-wide line-clamp-1 text-dark-gray dark:text-white capitalize">
|
||||||
|
{age}
|
||||||
|
</h1>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
function Tasks() {
|
||||||
|
return <>Tasks</>;
|
||||||
|
}
|
||||||
|
|
||||||
|
function Account({ familyDetails }) {
|
||||||
|
return (
|
||||||
|
<div className="w-full lg:min-h-[400px] h-full flex items-center justify-center">
|
||||||
|
<div className="flex flex-col">
|
||||||
|
<h2 className="font-bold text-lg tracking-wide line-clamp-1 text-dark-gray dark:text-white capitalize">
|
||||||
|
Username: <span className="ml-2 normal-case">{familyDetails?.username}</span>
|
||||||
|
</h2>
|
||||||
|
<h2 className="font-bold text-lg tracking-wide line-clamp-1 text-dark-gray dark:text-white capitalize">
|
||||||
|
Pin: <span className="ml-2 normal-case">{familyDetails?.pin}</span>
|
||||||
|
</h2>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
function Profile() {
|
||||||
|
return <>Profile</>;
|
||||||
|
}
|
||||||
@@ -1,10 +1,13 @@
|
|||||||
import React, { useState } from "react";
|
import React, { useState } from "react";
|
||||||
import dataImage1 from "../../assets/images/data-table-user-1.png";
|
import dataImage1 from "../../assets/images/data-table-user-1.png";
|
||||||
import LoadingSpinner from "../Spinners/LoadingSpinner";
|
import LoadingSpinner from "../Spinners/LoadingSpinner";
|
||||||
|
import { useNavigate, useLocation, Link } from "react-router-dom";
|
||||||
|
|
||||||
export default function FamilyTable({ className, familyList, loader }) {
|
export default function FamilyTable({ className, familyList, loader }) {
|
||||||
const filterCategories = ["All Categories", "Explore", "Featured"];
|
const filterCategories = ["All Categories", "Explore", "Featured"];
|
||||||
const [selectedCategory, setCategory] = useState(filterCategories[0]);
|
const [selectedCategory, setCategory] = useState(filterCategories[0]);
|
||||||
|
const navigate = useNavigate();
|
||||||
|
// let location = useLocation();
|
||||||
return (
|
return (
|
||||||
<div
|
<div
|
||||||
className={`update-table w-full p-8 bg-white dark:bg-dark-white overflow-y-auto rounded-2xl section-shadow min-h-[520px] max-h-[600px] ${
|
className={`update-table w-full p-8 bg-white dark:bg-dark-white overflow-y-auto rounded-2xl section-shadow min-h-[520px] max-h-[600px] ${
|
||||||
@@ -24,22 +27,28 @@ export default function FamilyTable({ className, familyList, loader }) {
|
|||||||
<th className="py-4">Name</th>
|
<th className="py-4">Name</th>
|
||||||
<th className="py-4 text-center">Last Login</th>
|
<th className="py-4 text-center">Last Login</th>
|
||||||
<th className="py-4 text-center">No of Tasks</th>
|
<th className="py-4 text-center">No of Tasks</th>
|
||||||
<th className="py-4 text-right">Status</th>
|
<th className="py-4 text-right"></th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody className="overflow-y-scroll h-auto">
|
<tbody className="overflow-y-scroll h-auto">
|
||||||
<>
|
<>
|
||||||
{familyList?.length > 0 ? (
|
{familyList?.length > 0 ? (
|
||||||
familyList?.map(
|
familyList?.map((props, idx) => {
|
||||||
(
|
let {
|
||||||
{ firstname, lastname, age, added, last_login },
|
firstname,
|
||||||
idx
|
lastname,
|
||||||
) => {
|
age,
|
||||||
|
added,
|
||||||
|
last_login,
|
||||||
|
task_count,
|
||||||
|
family_uid,
|
||||||
|
} = props;
|
||||||
let addedDate = added?.split(" ")[0];
|
let addedDate = added?.split(" ")[0];
|
||||||
|
let LoginDate = last_login?.split(" ")[0];
|
||||||
return (
|
return (
|
||||||
<tr
|
<tr
|
||||||
className="bg-white dark:bg-dark-white border-b dark:border-[#5356fb29] hover:bg-gray-50"
|
className="bg-white dark:bg-dark-white border-b dark:border-[#5356fb29] hover:bg-gray-50"
|
||||||
key={idx}
|
key={family_uid}
|
||||||
>
|
>
|
||||||
<td className=" py-4">
|
<td className=" py-4">
|
||||||
<div className="flex space-x-2 items-center w-full">
|
<div className="flex space-x-2 items-center w-full">
|
||||||
@@ -66,19 +75,24 @@ export default function FamilyTable({ className, familyList, loader }) {
|
|||||||
<td className="text-center py-4 px-2">
|
<td className="text-center py-4 px-2">
|
||||||
<div className="flex space-x-1 items-center justify-center">
|
<div className="flex space-x-1 items-center justify-center">
|
||||||
<span className="text-base text-dark-gray dark:text-white font-medium whitespace-nowrap">
|
<span className="text-base text-dark-gray dark:text-white font-medium whitespace-nowrap">
|
||||||
{last_login}
|
{LoginDate}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
<td className="text-center py-4 px-2">
|
<td className="text-center py-4 px-2">
|
||||||
<div className="flex space-x-1 items-center justify-center">
|
<div className="flex space-x-1 items-center justify-center">
|
||||||
<span className="text-base text-dark-gray dark:text-white font-medium whitespace-nowrap">
|
<span className="text-base text-dark-gray dark:text-white font-medium whitespace-nowrap">
|
||||||
100
|
{task_count}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
<td className="text-right py-4 px-2 flex items-center justify-center">
|
<td className="text-right py-4 px-2 flex items-center justify-center">
|
||||||
<button
|
<button
|
||||||
|
onClick={() => {
|
||||||
|
navigate("/manage-family", {
|
||||||
|
state: { ...props },
|
||||||
|
});
|
||||||
|
}}
|
||||||
type="button"
|
type="button"
|
||||||
className="w-20 h-11 flex justify-center items-center btn-gradient text-base rounded-full text-white"
|
className="w-20 h-11 flex justify-center items-center btn-gradient text-base rounded-full text-white"
|
||||||
>
|
>
|
||||||
@@ -87,8 +101,7 @@ export default function FamilyTable({ className, familyList, loader }) {
|
|||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
);
|
);
|
||||||
}
|
})
|
||||||
)
|
|
||||||
) : (
|
) : (
|
||||||
<tr className="font-bold text-xl text-dark-gray dark:text-white whitespace-nowrap">
|
<tr className="font-bold text-xl text-dark-gray dark:text-white whitespace-nowrap">
|
||||||
<td className="p-2" colSpan="4">
|
<td className="p-2" colSpan="4">
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ import SliderCom from "../Helpers/SliderCom";
|
|||||||
import HomeSliders from "./HomeSliders";
|
import HomeSliders from "./HomeSliders";
|
||||||
import { useSelector } from "react-redux";
|
import { useSelector } from "react-redux";
|
||||||
|
|
||||||
export default function Hero({ className }) {
|
export default function Hero({ className,bannerList }) {
|
||||||
const settings = {
|
const settings = {
|
||||||
autoplay: true,
|
autoplay: true,
|
||||||
dots: true,
|
dots: true,
|
||||||
@@ -105,7 +105,11 @@ export default function Hero({ className }) {
|
|||||||
</Link>
|
</Link>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<HomeSliders settings={settings} sideData={sildeData}/>
|
<HomeSliders
|
||||||
|
settings={settings}
|
||||||
|
sideData={sildeData}
|
||||||
|
bannerList={bannerList}
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,24 +6,29 @@ import HomeBannerOffersCard from "../Cards/HomeBannerOffersCard";
|
|||||||
|
|
||||||
|
|
||||||
export default function HomeSliders(props) {
|
export default function HomeSliders(props) {
|
||||||
|
console.log("BANNER LIST IN HomeSliders->",props.bannerList);
|
||||||
// debugger;
|
// debugger;
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<div className="hero-slider relative 2xl:w-[600px] xl:w-[500px] lg:w-[420px] w-full mb-2 lg:mb-0 ">
|
<div className="hero-slider relative 2xl:w-[600px] xl:w-[500px] lg:w-[420px] w-full mb-2 lg:mb-0 ">
|
||||||
<div className="w-full">
|
<div className="w-full">
|
||||||
<SliderCom settings={props.settings}>
|
<SliderCom settings={props.settings}>
|
||||||
<div className="item w-full h-full bg-white dark:bg-dark-white rounded-2xl overflow-hidden">
|
{/*<div className="item w-full h-full bg-white dark:bg-dark-white rounded-2xl overflow-hidden">*/}
|
||||||
<img src={slider1} alt="slider" className="w-full h-full" />
|
{/* <img src={slider1} alt="slider" className="w-full h-full" />*/}
|
||||||
</div>
|
{/*</div>*/}
|
||||||
<div className="item w-full h-full bg-white dark:bg-dark-white rounded-2xl overflow-hidden">
|
<div className="item w-full h-full bg-white dark:bg-dark-white rounded-2xl overflow-hidden">
|
||||||
<img src={slider2} alt="slider" className="w-full h-full" />
|
<img src={slider2} alt="slider" className="w-full h-full" />
|
||||||
</div>
|
</div>
|
||||||
<div className="item w-full h-full bg-white dark:bg-dark-white rounded-2xl overflow-hidden">
|
<div className="item w-full h-full bg-white dark:bg-dark-white rounded-2xl overflow-hidden">
|
||||||
<img src={slider3} alt="slider" className="w-full h-full" />
|
<img src={slider3} alt="slider" className="w-full h-full" />
|
||||||
</div>
|
</div>
|
||||||
|
{props.bannerList.map((item, index) => (
|
||||||
<div className="item w-full h-full bg-white dark:bg-dark-white rounded-2xl overflow-hidden">
|
<div className="item w-full h-full bg-white dark:bg-dark-white rounded-2xl overflow-hidden">
|
||||||
<HomeBannerOffersCard />
|
<HomeBannerOffersCard
|
||||||
|
itemData={item}
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
))}
|
||||||
</SliderCom>
|
</SliderCom>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -13,7 +13,10 @@ import usersService from "../../services/UsersService";
|
|||||||
import { useSelector } from "react-redux";
|
import { useSelector } from "react-redux";
|
||||||
|
|
||||||
|
|
||||||
export default function Home() {
|
export default function Home(props) {
|
||||||
|
|
||||||
|
console.log("PROPS IN HOME->",props);
|
||||||
|
|
||||||
const trending = datas.datas;
|
const trending = datas.datas;
|
||||||
const jobData = datas.datas; // api calls or cache
|
const jobData = datas.datas; // api calls or cache
|
||||||
//getHomeDate
|
//getHomeDate
|
||||||
@@ -25,16 +28,34 @@ export default function Home() {
|
|||||||
return (
|
return (
|
||||||
<Layout>
|
<Layout>
|
||||||
<div className="home-page-wrapper">
|
<div className="home-page-wrapper">
|
||||||
<Hero className="mb-10" data={userDetails} />
|
<Hero className="mb-10"
|
||||||
{/* <CreateNft />
|
data={userDetails}
|
||||||
<TrendingSection trending={trending} className="mb-10" />*/}
|
bannerList={props.bannerList}
|
||||||
|
/>
|
||||||
<HomeTaskDisplay
|
<HomeTaskDisplay
|
||||||
jobData={jobData}
|
jobData={jobData}
|
||||||
className="mb-10"/>
|
className="mb-10"
|
||||||
{/* <SellHistoryMarketVisitorAnalytic className="mb-10"/>
|
bannerList={props.bannerList}
|
||||||
<TopSellerTopBuyerSliderSection className="mb-10" />
|
/>
|
||||||
<UpdateTable className="mb-10"/>*/}
|
|
||||||
</div>
|
</div>
|
||||||
</Layout>
|
</Layout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
// /*
|
||||||
|
// <Layout>
|
||||||
|
// <div className="home-page-wrapper">
|
||||||
|
// <Hero className="mb-10" data={userDetails} />
|
||||||
|
// {/* <CreateNft />
|
||||||
|
// <TrendingSection trending={trending} className="mb-10" />*/}
|
||||||
|
// <HomeTaskDisplay
|
||||||
|
// jobData={jobData}
|
||||||
|
// className="mb-10"
|
||||||
|
// bannerList={props.bannerList}
|
||||||
|
// />
|
||||||
|
{/* <SellHistoryMarketVisitorAnalytic className="mb-10"/>
|
||||||
|
<TopSellerTopBuyerSliderSection className="mb-10" />
|
||||||
|
<UpdateTable className="mb-10"/>*/}
|
||||||
|
// </div>
|
||||||
|
// </Layout>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import MainSection from "./MainSection";
|
|||||||
import CommonHead from "../UserHeader/CommonHead";
|
import CommonHead from "../UserHeader/CommonHead";
|
||||||
import { useSelector } from "react-redux";
|
import { useSelector } from "react-redux";
|
||||||
|
|
||||||
export default function MarketPlace() {
|
export default function MarketPlace({commonHeadData}) {
|
||||||
let { jobLists } = useSelector((state) => state.jobLists);
|
let { jobLists } = useSelector((state) => state.jobLists);
|
||||||
const marketData = jobLists?.result_list;
|
const marketData = jobLists?.result_list;
|
||||||
|
|
||||||
@@ -14,7 +14,7 @@ export default function MarketPlace() {
|
|||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<Layout>
|
<Layout>
|
||||||
<CommonHead />
|
<CommonHead commonHeadData={commonHeadData} />
|
||||||
<MainSection marketPlaceProduct={marketData} className="mb-10" />
|
<MainSection marketPlaceProduct={marketData} className="mb-10" />
|
||||||
</Layout>
|
</Layout>
|
||||||
</>
|
</>
|
||||||
|
|||||||
@@ -12,7 +12,9 @@ export default function MyActiveJobs(props) {
|
|||||||
console.log("AMEYE LOC1", props.MyJobList);
|
console.log("AMEYE LOC1", props.MyJobList);
|
||||||
return (
|
return (
|
||||||
<Layout>
|
<Layout>
|
||||||
<CommonHead />
|
<CommonHead
|
||||||
|
commonHeadData={props.commonHeadData}
|
||||||
|
/>
|
||||||
<div className="notification-page w-full mb-10">
|
<div className="notification-page w-full mb-10">
|
||||||
<div className="notification-wrapper w-full">
|
<div className="notification-wrapper w-full">
|
||||||
{/* heading */}
|
{/* heading */}
|
||||||
|
|||||||
@@ -12,7 +12,9 @@ export default function MyJobs(props) {
|
|||||||
console.log("AMEYE LOC1", props.MyJobList);
|
console.log("AMEYE LOC1", props.MyJobList);
|
||||||
return (
|
return (
|
||||||
<Layout>
|
<Layout>
|
||||||
<CommonHead />
|
<CommonHead
|
||||||
|
commonHeadData={props.commonHeadData}
|
||||||
|
/>
|
||||||
<div className="notification-page w-full mb-10">
|
<div className="notification-page w-full mb-10">
|
||||||
<div className="notification-wrapper w-full">
|
<div className="notification-wrapper w-full">
|
||||||
{/* heading */}
|
{/* heading */}
|
||||||
@@ -40,7 +42,10 @@ export default function MyJobs(props) {
|
|||||||
></div>
|
></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<MyJobTable MyJobList={props.MyJobList} reloadJobList={props.reloadJobList} />
|
<MyJobTable
|
||||||
|
MyJobList={props.MyJobList}
|
||||||
|
reloadJobList={props.reloadJobList}
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</Layout>
|
</Layout>
|
||||||
|
|||||||
@@ -12,7 +12,9 @@ export default function MyPendingJobs(props) {
|
|||||||
console.log("AMEYE LOC1", props.MyJobList);
|
console.log("AMEYE LOC1", props.MyJobList);
|
||||||
return (
|
return (
|
||||||
<Layout>
|
<Layout>
|
||||||
<CommonHead />
|
<CommonHead
|
||||||
|
commonHeadData={props.commonHeadData}
|
||||||
|
/>
|
||||||
<div className="notification-page w-full mb-10">
|
<div className="notification-page w-full mb-10">
|
||||||
<div className="notification-wrapper w-full">
|
<div className="notification-wrapper w-full">
|
||||||
{/* heading */}
|
{/* heading */}
|
||||||
@@ -24,13 +26,13 @@ export default function MyPendingJobs(props) {
|
|||||||
>
|
>
|
||||||
Pending Job(s)
|
Pending Job(s)
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
</h1>
|
</h1>
|
||||||
</div>
|
</div>
|
||||||
<div className="slider-btns flex space-x-4">
|
<div className="slider-btns flex space-x-4">
|
||||||
<div onClick={() => filterHandler("today")} className="relative">
|
<div
|
||||||
|
onClick={() => filterHandler("today")}
|
||||||
</div>
|
className="relative"
|
||||||
|
></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<MyPendingJobTable MyJobList={props.MyJobList} />
|
<MyPendingJobTable MyJobList={props.MyJobList} />
|
||||||
|
|||||||
@@ -4,14 +4,14 @@ import Layout from "../Partials/Layout";
|
|||||||
import MyJobTable from "./MyJobTable";
|
import MyJobTable from "./MyJobTable";
|
||||||
import CommonHead from "../UserHeader/CommonHead";
|
import CommonHead from "../UserHeader/CommonHead";
|
||||||
|
|
||||||
export default function MyTasks() {
|
export default function MyTasks({commonHeadData}) {
|
||||||
const [selectTab, setValue] = useState("today");
|
const [selectTab, setValue] = useState("today");
|
||||||
const filterHandler = (value) => {
|
const filterHandler = (value) => {
|
||||||
setValue(value);
|
setValue(value);
|
||||||
};
|
};
|
||||||
return (
|
return (
|
||||||
<Layout>
|
<Layout>
|
||||||
<CommonHead />
|
<CommonHead commonHeadData={commonHeadData} />
|
||||||
<div className="notification-page w-full mb-10">
|
<div className="notification-page w-full mb-10">
|
||||||
<div className="notification-wrapper w-full">
|
<div className="notification-wrapper w-full">
|
||||||
{/* heading */}
|
{/* heading */}
|
||||||
|
|||||||
@@ -505,9 +505,9 @@ export default function Header({ logoutModalHandler, sidebarHandler }) {
|
|||||||
</div>
|
</div>
|
||||||
<div className="heading border-b dark:border-[#5356fb29] border-light-purple px-7 py-2">
|
<div className="heading border-b dark:border-[#5356fb29] border-light-purple px-7 py-2">
|
||||||
<h3 className="text-xl font-bold text-dark-gray dark:text-white">
|
<h3 className="text-xl font-bold text-dark-gray dark:text-white">
|
||||||
Fullname
|
{`${firstname} ${lastname}`}
|
||||||
</h3>
|
</h3>
|
||||||
<p className="text-base text-gray-400 dark:text-white hover:text-sky-blue cursor-pointer">{`${firstname} ${lastname}`}</p>
|
{/* <p className="text-base text-gray-400 dark:text-white hover:text-sky-blue cursor-pointer">{`${firstname} ${lastname}`}</p> */}
|
||||||
</div>
|
</div>
|
||||||
<div className="content">
|
<div className="content">
|
||||||
<ul className="px-7">
|
<ul className="px-7">
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import React, { useState } from "react";
|
import React, {useEffect, useState} from "react";
|
||||||
import { useDispatch, useSelector } from "react-redux";
|
import { useDispatch, useSelector } from "react-redux";
|
||||||
import { useNavigate } from "react-router-dom";
|
import { useNavigate } from "react-router-dom";
|
||||||
import { toast } from "react-toastify";
|
import { toast } from "react-toastify";
|
||||||
@@ -9,6 +9,8 @@ import Header from "./Header";
|
|||||||
import MobileSidebar from "./MobileSideBar";
|
import MobileSidebar from "./MobileSideBar";
|
||||||
import RightSideBar from "./RightSideBar";
|
import RightSideBar from "./RightSideBar";
|
||||||
import Sidebar from "./Sidebar";
|
import Sidebar from "./Sidebar";
|
||||||
|
import usersService from "../../services/UsersService";
|
||||||
|
|
||||||
|
|
||||||
export default function Layout({ children }) {
|
export default function Layout({ children }) {
|
||||||
const { drawer } = useSelector((state) => state.drawer);
|
const { drawer } = useSelector((state) => state.drawer);
|
||||||
@@ -20,14 +22,43 @@ export default function Layout({ children }) {
|
|||||||
};
|
};
|
||||||
const navigate = useNavigate();
|
const navigate = useNavigate();
|
||||||
const logOut = () => {
|
const logOut = () => {
|
||||||
localStorage.removeItem("email");
|
localStorage.removeItem("session_token");
|
||||||
localStorage.clear();
|
localStorage.removeItem("member_id");
|
||||||
|
localStorage.removeItem("uid");
|
||||||
|
// localStorage.clear();
|
||||||
// toast.success("Come Back Soon", {
|
// toast.success("Come Back Soon", {
|
||||||
// icon: `🙂`,
|
// icon: `🙂`,
|
||||||
// });
|
// });
|
||||||
|
|
||||||
navigate("/login", { replace: true });
|
navigate("/login", { replace: true });
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//---------------------------------------
|
||||||
|
/* LET U DEAL WITH JOB LIST - we need to centralize this list */
|
||||||
|
const {jobListTable} = useSelector((state) => state.tableReload)
|
||||||
|
const [MyJobList, setMyJobList] = useState({loading: true, data:[]});
|
||||||
|
const api = new usersService();
|
||||||
|
|
||||||
|
const getMyJobList = async () => {
|
||||||
|
setMyJobList({loading: true, data:[]})
|
||||||
|
try {
|
||||||
|
const res = await api.getMyJobList();
|
||||||
|
setMyJobList({loading: false, data:res.data})
|
||||||
|
// setMyJobList(res.data);
|
||||||
|
} catch (error) {
|
||||||
|
setMyJobList({loading: false, data:[]})
|
||||||
|
console.log("Error getting mode");
|
||||||
|
}
|
||||||
|
};
|
||||||
|
useEffect(() => {
|
||||||
|
getMyJobList();
|
||||||
|
}, [jobListTable]);
|
||||||
|
// const getJobList = ()=>{
|
||||||
|
// let jobLists = useSelector((state) => state.jobLists);
|
||||||
|
// return jobLists;
|
||||||
|
// }
|
||||||
|
//---------------------------------------
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<div className="nft-main-wrapper-layout">
|
<div className="nft-main-wrapper-layout">
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ export default function Sidebar({ sidebar, action, logoutModalHandler }) {
|
|||||||
const darkMode = useContext(DarkModeContext);
|
const darkMode = useContext(DarkModeContext);
|
||||||
|
|
||||||
let { userDetails } = useSelector((state) => state.userDetails);
|
let { userDetails } = useSelector((state) => state.userDetails);
|
||||||
|
//const jobLists = getJobList(); // pass from upper - we need in a lot of places
|
||||||
let { jobLists } = useSelector((state) => state.jobLists);
|
let { jobLists } = useSelector((state) => state.jobLists);
|
||||||
const marketData = jobLists?.result_list;
|
const marketData = jobLists?.result_list;
|
||||||
let noOfJobs = marketData?.length <= 0 ? "0" : marketData?.length;
|
let noOfJobs = marketData?.length <= 0 ? "0" : marketData?.length;
|
||||||
|
|||||||
@@ -1,7 +1,9 @@
|
|||||||
import React from "react";
|
import React from "react";
|
||||||
import { Link } from "react-router-dom";
|
import { Link } from "react-router-dom";
|
||||||
|
|
||||||
export default function CommonHead({ className }) {
|
export default function CommonHead({ className,commonHeadData }) {
|
||||||
|
const vvv= commonHeadData();
|
||||||
|
console.log("UUUUUUUU-",vvv);
|
||||||
return (
|
return (
|
||||||
<div
|
<div
|
||||||
className={`create-nft w-full lg:h-[140px] shadow lg:flex rounded-lg justify-between items-center md:p-9 p-4 bg-white dark:bg-dark-white border-b dark:border-[#5356fb29] -2 border-pink mb-10 ${
|
className={`create-nft w-full lg:h-[140px] shadow lg:flex rounded-lg justify-between items-center md:p-9 p-4 bg-white dark:bg-dark-white border-b dark:border-[#5356fb29] -2 border-pink mb-10 ${
|
||||||
|
|||||||
+159
-134
@@ -6,21 +6,21 @@ class usersService {
|
|||||||
console.log("WRB Service Entry");
|
console.log("WRB Service Entry");
|
||||||
}
|
}
|
||||||
|
|
||||||
CreateUser(reqData){
|
CreateUser(reqData) {
|
||||||
localStorage.setItem("session_token", ``);
|
localStorage.setItem("session_token", ``);
|
||||||
return this.postAuxEnd("/createuser", reqData);
|
return this.postAuxEnd("/createuser", reqData);
|
||||||
}
|
}
|
||||||
|
|
||||||
CompleteSignUp(reqData){
|
CompleteSignUp(reqData) {
|
||||||
localStorage.setItem("session_token", ``);
|
localStorage.setItem("session_token", ``);
|
||||||
return this.postAuxEnd("/completesignuplink", reqData);
|
return this.postAuxEnd("/completesignuplink", reqData);
|
||||||
}
|
}
|
||||||
|
|
||||||
getHomeDate(){
|
getHomeDate() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uuid"),
|
uuid: localStorage.getItem("uuid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token")
|
sessionid: localStorage.getItem("session_token"),
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/dashdata", postData);
|
return this.postAuxEnd("/dashdata", postData);
|
||||||
}
|
}
|
||||||
@@ -32,74 +32,75 @@ class usersService {
|
|||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uuid"),
|
uuid: localStorage.getItem("uuid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token")
|
sessionid: localStorage.getItem("session_token"),
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/getjobsdata", postData);
|
return this.postAuxEnd("/getjobsdata", postData);
|
||||||
}
|
}
|
||||||
//
|
//
|
||||||
getUserBankList(reqData){
|
getUserBankList(reqData) {
|
||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uuid"),
|
uuid: localStorage.getItem("uuid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token")
|
sessionid: localStorage.getItem("session_token"),
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/mybanklist", postData);
|
return this.postAuxEnd("/mybanklist", postData);
|
||||||
}
|
}
|
||||||
getUserWallets(reqData){
|
getUserWallets(reqData) {
|
||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uuid"),
|
uuid: localStorage.getItem("uuid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token")
|
sessionid: localStorage.getItem("session_token"),
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/getwallets", postData);
|
return this.postAuxEnd("/getwallets", postData);
|
||||||
}
|
}
|
||||||
getApiGate(){
|
getApiGate() {
|
||||||
// localStorage.setItem("session_token", ``);
|
// localStorage.setItem("session_token", ``);
|
||||||
return this.postAuxEnd("/apigate", null);
|
return this.postAuxEnd("/apigate", null);
|
||||||
}
|
}
|
||||||
|
|
||||||
getLoadProfile(){
|
getLoadProfile() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uid"),
|
uuid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:0,
|
page: 0,
|
||||||
limit :100
|
limit: 100,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/loadprofile", null);
|
return this.postAuxEnd("/loadprofile", null);
|
||||||
}
|
}
|
||||||
|
|
||||||
getOffersList(){
|
getOffersList() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uid"),
|
uuid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:0,
|
page: 0,
|
||||||
limit :100
|
limit: 100,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/offerslist", null);
|
return this.postAuxEnd("/offerslist", null);
|
||||||
}
|
}
|
||||||
|
|
||||||
getPendingJob(){
|
getPendingJob() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uid"),
|
uuid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:0,
|
page: 0,
|
||||||
limit :100};
|
limit: 100,
|
||||||
|
};
|
||||||
return this.postAuxEnd("/pendingjob", postData);
|
return this.postAuxEnd("/pendingjob", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
getActiveJobList - All available Jobs
|
getActiveJobList - All available Jobs
|
||||||
*/
|
*/
|
||||||
getActiveJobList(){
|
getActiveJobList() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uid"),
|
uuid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:0,
|
page: 0,
|
||||||
limit :100
|
limit: 100,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/getjobsdata", postData);
|
return this.postAuxEnd("/getjobsdata", postData);
|
||||||
}
|
}
|
||||||
@@ -118,210 +119,222 @@ class usersService {
|
|||||||
// };
|
// };
|
||||||
// return this.postAuxEnd("/getjobsdata", postData);
|
// return this.postAuxEnd("/getjobsdata", postData);
|
||||||
// }
|
// }
|
||||||
getHeroJBanners(){
|
getHeroJBanners() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uid"),
|
uuid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:0,
|
page: 0,
|
||||||
limit :100
|
limit: 100,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/homebanners", postData);
|
return this.postAuxEnd("/homebanners", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
getGetPendingJobs(){
|
getGetPendingJobs() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uid"),
|
uuid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:0,
|
page: 0,
|
||||||
limit :100
|
limit: 100,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/getpendingjobs", postData);
|
return this.postAuxEnd("/getpendingjobs", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
getUsersCards(){
|
getUsersCards() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uid"),
|
uuid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:0,
|
page: 0,
|
||||||
limit :100
|
limit: 100,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/userscards", postData);
|
return this.postAuxEnd("/userscards", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
getCouponPending(){
|
getCouponPending() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uid"),
|
uuid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:0,
|
page: 0,
|
||||||
limit :100
|
limit: 100,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/couponpending", postData);
|
return this.postAuxEnd("/couponpending", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
// API FUNCTION TO GET COUPON HISTORY
|
// API FUNCTION TO GET COUPON HISTORY
|
||||||
getRecipient(){
|
getRecipient() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uid: localStorage.getItem("uid"),
|
uid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:1,
|
page: 1,
|
||||||
limit :20,
|
limit: 20,
|
||||||
action: 11175
|
action: 11175,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/recipients", postData);
|
return this.postAuxEnd("/recipients", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
//END POINT CALL FOR UPDATE PROFILE
|
//END POINT CALL FOR UPDATE PROFILE
|
||||||
addRecipient(data){
|
addRecipient(data) {
|
||||||
var postData = {
|
var postData = {
|
||||||
uid: localStorage.getItem("uid"),
|
uid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
...data
|
...data,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/addrecipient", postData);
|
return this.postAuxEnd("/addrecipient", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
// API FUNCTION TO GET SEND MONEY FEE
|
// API FUNCTION TO GET SEND MONEY FEE
|
||||||
getSendMoneyFee(amount){
|
getSendMoneyFee(amount) {
|
||||||
var postData = {
|
var postData = {
|
||||||
uid: localStorage.getItem("uid"),
|
uid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
amount,
|
amount,
|
||||||
action: 33025
|
action: 33025,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/sendmoneyfee", postData);
|
return this.postAuxEnd("/sendmoneyfee", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Family Manage
|
||||||
|
ManageFamily(reqData) {
|
||||||
|
var postData = {
|
||||||
|
uid: localStorage.getItem("uid"),
|
||||||
|
member_id: localStorage.getItem("member_id"),
|
||||||
|
sessionid: localStorage.getItem("session_token"),
|
||||||
|
action: 22025,
|
||||||
|
...reqData
|
||||||
|
};
|
||||||
|
return this.postAuxEnd("/familymanage", postData);
|
||||||
|
}
|
||||||
|
|
||||||
// Task for the person doing the job
|
// Task for the person doing the job
|
||||||
getMyActiveTaskList(){
|
getMyActiveTaskList() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uid"),
|
uuid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:0,
|
page: 0,
|
||||||
offset:0,
|
offset: 0,
|
||||||
limit :100
|
limit: 100,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/activetaskslist", postData);
|
return this.postAuxEnd("/activetaskslist", postData);
|
||||||
}
|
}
|
||||||
getMyActiveJobList(){
|
getMyActiveJobList() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uid"),
|
uuid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:0,
|
page: 0,
|
||||||
offset:0,
|
offset: 0,
|
||||||
limit :100
|
limit: 100,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/jobmanageractive", postData);
|
return this.postAuxEnd("/jobmanageractive", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
getMyPendingJobList(){
|
getMyPendingJobList() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uid"),
|
uuid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:0,
|
page: 0,
|
||||||
offset:0,
|
offset: 0,
|
||||||
limit :100
|
limit: 100,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/jobmanageroffers", postData);
|
return this.postAuxEnd("/jobmanageroffers", postData);
|
||||||
}
|
}
|
||||||
getMyJobList(){
|
getMyJobList() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uid"),
|
uuid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:0,
|
page: 0,
|
||||||
offset:0,
|
offset: 0,
|
||||||
limit :100
|
limit: 100,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/jobmanagerlist", postData);
|
return this.postAuxEnd("/jobmanagerlist", postData);
|
||||||
}
|
}
|
||||||
// API FUNCTION TO GET COUPON HISTORY
|
// API FUNCTION TO GET COUPON HISTORY
|
||||||
getCouponHx(){
|
getCouponHx() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uid: localStorage.getItem("uid"),
|
uid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:1,
|
page: 1,
|
||||||
limit :20,
|
limit: 20,
|
||||||
action: 85025
|
action: 85025,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/couponhx", postData);
|
return this.postAuxEnd("/couponhx", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
getPurchaseHx(){
|
getPurchaseHx() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uid: localStorage.getItem("uid"),
|
uid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:1,
|
page: 1,
|
||||||
limit :20,
|
limit: 20,
|
||||||
action: 15049
|
action: 15049,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/purchasehx", postData);
|
return this.postAuxEnd("/purchasehx", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
// API FUNCTION TO GET PAYMENT HISTORY
|
// API FUNCTION TO GET PAYMENT HISTORY
|
||||||
getPaymentHx(){
|
getPaymentHx() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uid: localStorage.getItem("uid"),
|
uid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:1,
|
page: 1,
|
||||||
limit :20,
|
limit: 20,
|
||||||
action: 15046
|
action: 15046,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/paymenthx", postData);
|
return this.postAuxEnd("/paymenthx", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
// API FUNCTION TO GET PAYMENT HISTORY
|
// API FUNCTION TO GET PAYMENT HISTORY
|
||||||
sendMoney(reqData){
|
sendMoney(reqData) {
|
||||||
var postData = {
|
var postData = {
|
||||||
uid: localStorage.getItem("uid"),
|
uid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
senderid: localStorage.getItem("member_id"),
|
senderid: localStorage.getItem("member_id"),
|
||||||
action: 33020,
|
action: 33020,
|
||||||
...reqData
|
...reqData,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/sendmoney", postData);
|
return this.postAuxEnd("/sendmoney", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
//END POINT CALL FOR REFERRAL HISTORY
|
//END POINT CALL FOR REFERRAL HISTORY
|
||||||
getReferralHx(){
|
getReferralHx() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uid: localStorage.getItem("uid"),
|
uid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
offset: 1,
|
offset: 1,
|
||||||
limit :100,
|
limit: 100,
|
||||||
action: 11064
|
action: 11064,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/refferhx", postData);
|
return this.postAuxEnd("/refferhx", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
//END POINT CALL FOR UPDATE PROFILE
|
//END POINT CALL FOR UPDATE PROFILE
|
||||||
updateProfile(post){
|
updateProfile(post) {
|
||||||
var postData = {
|
var postData = {
|
||||||
uid: localStorage.getItem("uid"),
|
uid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
action: 5031,
|
action: 5031,
|
||||||
...post
|
...post,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/updateprofile", postData);
|
return this.postAuxEnd("/updateprofile", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
//END POINT CALL FOR GETTING USER PROFILE
|
//END POINT CALL FOR GETTING USER PROFILE
|
||||||
loadProfile(post){
|
loadProfile(post) {
|
||||||
var postData = {
|
var postData = {
|
||||||
uid: localStorage.getItem("uid"),
|
uid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
@@ -330,82 +343,82 @@ class usersService {
|
|||||||
return this.postAuxEnd("/loadprofile", postData);
|
return this.postAuxEnd("/loadprofile", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
getFamilyList(){
|
getFamilyList() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uid"),
|
uuid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:0,
|
page: 0,
|
||||||
limit :100
|
limit: 100,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/familylist", postData);
|
return this.postAuxEnd("/familylist", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
getFamilyAdd(){
|
getFamilyAdd() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uid"),
|
uuid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:0,
|
page: 0,
|
||||||
limit :100
|
limit: 100,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/familyadd", postData);
|
return this.postAuxEnd("/familyadd", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
getFamilyUpdate(){
|
getFamilyUpdate() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uid"),
|
uuid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:0,
|
page: 0,
|
||||||
limit :100
|
limit: 100,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/familyupdate", postData);
|
return this.postAuxEnd("/familyupdate", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
getFamilyManage(){
|
getFamilyManage() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uid"),
|
uuid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:0,
|
page: 0,
|
||||||
limit :100
|
limit: 100,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/familymanage", postData);
|
return this.postAuxEnd("/familymanage", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
//END POINT CALL FOR ACCOUNT TOP
|
//END POINT CALL FOR ACCOUNT TOP
|
||||||
startTopUp(post){
|
startTopUp(post) {
|
||||||
var postData = {
|
var postData = {
|
||||||
uid: localStorage.getItem("uid"),
|
uid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
action: 11062,
|
action: 11062,
|
||||||
...post
|
...post,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/starttopup", postData);
|
return this.postAuxEnd("/starttopup", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
//END POINT CALL FOR SENDING REFERRAL MESSAGE
|
//END POINT CALL FOR SENDING REFERRAL MESSAGE
|
||||||
sendReferralMsg(postData){
|
sendReferralMsg(postData) {
|
||||||
return this.postAuxEnd("/sendreferral", postData);
|
return this.postAuxEnd("/sendreferral", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
StartResetPassword(reqData){
|
StartResetPassword(reqData) {
|
||||||
return this.postAuxEnd("/startresetpasword", reqData)
|
return this.postAuxEnd("/startresetpasword", reqData);
|
||||||
}
|
}
|
||||||
|
|
||||||
CompleteResetPassword(reqData){
|
CompleteResetPassword(reqData) {
|
||||||
return this.postAuxEnd("/stepresetpass", reqData)
|
return this.postAuxEnd("/stepresetpass", reqData);
|
||||||
}
|
}
|
||||||
|
|
||||||
getCouponRedeem(){
|
getCouponRedeem() {
|
||||||
var postData = {
|
var postData = {
|
||||||
uuid: localStorage.getItem("uid"),
|
uuid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
page:0,
|
page: 0,
|
||||||
limit :100
|
limit: 100,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/couponredeem", postData);
|
return this.postAuxEnd("/couponredeem", postData);
|
||||||
}
|
}
|
||||||
@@ -422,7 +435,7 @@ class usersService {
|
|||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
action: 11183,
|
action: 11183,
|
||||||
country: 'NG'
|
country: "NG",
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/countrybanks", postData);
|
return this.postAuxEnd("/countrybanks", postData);
|
||||||
}
|
}
|
||||||
@@ -433,7 +446,7 @@ class usersService {
|
|||||||
uid: localStorage.getItem("uid"),
|
uid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
action: 11177
|
action: 11177,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/accounttypes", postData);
|
return this.postAuxEnd("/accounttypes", postData);
|
||||||
}
|
}
|
||||||
@@ -444,7 +457,7 @@ class usersService {
|
|||||||
uid: localStorage.getItem("uid"),
|
uid: localStorage.getItem("uid"),
|
||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
action: 13002
|
action: 13002,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/jobmanageragree", postData);
|
return this.postAuxEnd("/jobmanageragree", postData);
|
||||||
}
|
}
|
||||||
@@ -456,7 +469,7 @@ class usersService {
|
|||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
action: 13010,
|
action: 13010,
|
||||||
...reqData
|
...reqData,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/jobmanagercreatejob", postData);
|
return this.postAuxEnd("/jobmanagercreatejob", postData);
|
||||||
}
|
}
|
||||||
@@ -467,7 +480,7 @@ class usersService {
|
|||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
action: 13010,
|
action: 13010,
|
||||||
...reqData
|
...reqData,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/jobmanagerupdatejob", postData);
|
return this.postAuxEnd("/jobmanagerupdatejob", postData);
|
||||||
}
|
}
|
||||||
@@ -481,7 +494,7 @@ class usersService {
|
|||||||
limit: 30,
|
limit: 30,
|
||||||
action: 14011,
|
action: 14011,
|
||||||
offset: 0,
|
offset: 0,
|
||||||
...reqData
|
...reqData,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/activejobmsglist", postData);
|
return this.postAuxEnd("/activejobmsglist", postData);
|
||||||
}
|
}
|
||||||
@@ -493,7 +506,7 @@ class usersService {
|
|||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
action: 14010,
|
action: 14010,
|
||||||
...reqData
|
...reqData,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/sendtaskmessage", postData);
|
return this.postAuxEnd("/sendtaskmessage", postData);
|
||||||
}
|
}
|
||||||
@@ -505,7 +518,7 @@ class usersService {
|
|||||||
member_id: localStorage.getItem("member_id"),
|
member_id: localStorage.getItem("member_id"),
|
||||||
sessionid: localStorage.getItem("session_token"),
|
sessionid: localStorage.getItem("session_token"),
|
||||||
action: 13011,
|
action: 13011,
|
||||||
...reqData
|
...reqData,
|
||||||
};
|
};
|
||||||
return this.postAuxEnd("/jobmanagerdeletejob", postData);
|
return this.postAuxEnd("/jobmanagerdeletejob", postData);
|
||||||
}
|
}
|
||||||
@@ -513,8 +526,8 @@ class usersService {
|
|||||||
verifyEmail(code) {
|
verifyEmail(code) {
|
||||||
const reqData = {
|
const reqData = {
|
||||||
verify_link: code,
|
verify_link: code,
|
||||||
action: 11015
|
action: 11015,
|
||||||
}
|
};
|
||||||
return this.postAuxEnd("/verifysignuplink", reqData);
|
return this.postAuxEnd("/verifysignuplink", reqData);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -565,7 +578,7 @@ class usersService {
|
|||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
getUserReminders(){
|
getUserReminders() {
|
||||||
return this.getAuxEnd("/reminders", null);
|
return this.getAuxEnd("/reminders", null);
|
||||||
}
|
}
|
||||||
//---------------------------------------- -----
|
//---------------------------------------- -----
|
||||||
@@ -577,16 +590,17 @@ class usersService {
|
|||||||
const session_token = localStorage.getItem("session_token");
|
const session_token = localStorage.getItem("session_token");
|
||||||
let axiosConfig = {
|
let axiosConfig = {
|
||||||
headers: {
|
headers: {
|
||||||
'Accept': 'application/json',
|
Accept: "application/json",
|
||||||
'Content-Type': 'application/json;charset=UTF-8',
|
"Content-Type": "application/json;charset=UTF-8",
|
||||||
'Authorization': `Basic ${session_token}`,
|
Authorization: `Basic ${session_token}`,
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
const endPoint = process.env.REACT_APP_USERS_ENDPOINT + uri;
|
const endPoint = process.env.REACT_APP_USERS_ENDPOINT + uri;
|
||||||
return Axios.get(endPoint,{
|
return Axios.get(endPoint, {
|
||||||
params: {
|
params: {
|
||||||
reqData
|
reqData,
|
||||||
}})
|
},
|
||||||
|
})
|
||||||
.then((response) => {
|
.then((response) => {
|
||||||
console.log("~~~~~~~ Toks2 GET ~~~~~~~~");
|
console.log("~~~~~~~ Toks2 GET ~~~~~~~~");
|
||||||
return response;
|
return response;
|
||||||
@@ -605,7 +619,6 @@ class usersService {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
postAuxEnd(uri, reqData) {
|
postAuxEnd(uri, reqData) {
|
||||||
const endPoint = process.env.REACT_APP_USERS_ENDPOINT + uri;
|
const endPoint = process.env.REACT_APP_USERS_ENDPOINT + uri;
|
||||||
const session_token = localStorage.getItem("session_token");
|
const session_token = localStorage.getItem("session_token");
|
||||||
@@ -613,18 +626,18 @@ class usersService {
|
|||||||
// 'Authorization': `Basic ${(session_token !=null) ?session_token : ''}`,
|
// 'Authorization': `Basic ${(session_token !=null) ?session_token : ''}`,
|
||||||
let axiosConfig = {
|
let axiosConfig = {
|
||||||
headers: {
|
headers: {
|
||||||
'Accept': 'application/json',
|
Accept: "application/json",
|
||||||
'Access-Control-Allow-Origin': '*',
|
"Access-Control-Allow-Origin": "*",
|
||||||
'Access-Control-Expose-Headers': 'Access-Control-Allow-Origin',
|
"Access-Control-Expose-Headers": "Access-Control-Allow-Origin",
|
||||||
'Access-Control-Allow-Headers':'Origin, X-API-KEY, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, Access-Control-Allow-Headers, Authorization, observe, enctype, Content-Length, X-Csrf-Token',
|
"Access-Control-Allow-Headers":
|
||||||
'Content-Type': 'application/json;charset=UTF-8',
|
"Origin, X-API-KEY, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, Access-Control-Allow-Headers, Authorization, observe, enctype, Content-Length, X-Csrf-Token",
|
||||||
|
"Content-Type": "application/json;charset=UTF-8",
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
// Axios.defaults.headers.post['Content-Type'] ='application/json;charset=utf-8';
|
// Axios.defaults.headers.post['Content-Type'] ='application/json;charset=utf-8';
|
||||||
// Axios.defaults.headers.post['Access-Control-Allow-Origin'] = '*'; //,axiosConfig
|
// Axios.defaults.headers.post['Access-Control-Allow-Origin'] = '*'; //,axiosConfig
|
||||||
// Axios.defaults.withCredentials = true;
|
// Axios.defaults.withCredentials = true;
|
||||||
//debugger;
|
//debugger;
|
||||||
return Axios.post(endPoint, reqData)
|
return Axios.post(endPoint, reqData)
|
||||||
.then((response) => {
|
.then((response) => {
|
||||||
console.log(response);
|
console.log(response);
|
||||||
@@ -635,19 +648,31 @@ class usersService {
|
|||||||
.catch((error) => {
|
.catch((error) => {
|
||||||
if (error.response) {
|
if (error.response) {
|
||||||
//response status is an error code
|
//response status is an error code
|
||||||
console.log("ERROR-------------------------------------------------------");
|
console.log(
|
||||||
|
"ERROR-------------------------------------------------------"
|
||||||
|
);
|
||||||
console.log(error.response.status);
|
console.log(error.response.status);
|
||||||
console.log("ERROR-------------------------------------------------------");
|
console.log(
|
||||||
|
"ERROR-------------------------------------------------------"
|
||||||
|
);
|
||||||
} else if (error.request) {
|
} else if (error.request) {
|
||||||
//response not received though the request was sent
|
//response not received though the request was sent
|
||||||
console.log("ERROR2-------------------------------------------------------");
|
console.log(
|
||||||
|
"ERROR2-------------------------------------------------------"
|
||||||
|
);
|
||||||
console.log(error?.request);
|
console.log(error?.request);
|
||||||
console.log("ERROR2-------------------------------------------------------");
|
console.log(
|
||||||
|
"ERROR2-------------------------------------------------------"
|
||||||
|
);
|
||||||
} else {
|
} else {
|
||||||
//an error occurred when setting up the request
|
//an error occurred when setting up the request
|
||||||
console.log("ERROR3-------------------------------------------------------");
|
console.log(
|
||||||
|
"ERROR3-------------------------------------------------------"
|
||||||
|
);
|
||||||
console.log(error);
|
console.log(error);
|
||||||
console.log("ERROR3-------------------------------------------------------");
|
console.log(
|
||||||
|
"ERROR3-------------------------------------------------------"
|
||||||
|
);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,9 @@
|
|||||||
|
import FamilyManage from "../components/FamilyAcc/FamilyManage";
|
||||||
|
|
||||||
|
export default function FamilyManagePage() {
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<FamilyManage />
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
}
|
||||||
+10
-6
@@ -3,24 +3,28 @@ import Home from "../components/Home";
|
|||||||
import usersService from "../services/UsersService";
|
import usersService from "../services/UsersService";
|
||||||
export default function HomePages() {
|
export default function HomePages() {
|
||||||
|
|
||||||
const [marketActiveJobList, setMarketActiveJobList] = useState([]);
|
// const [marketActiveJobList, setMarketActiveJobList] = useState([]);
|
||||||
|
const [bannerList, setBannerList] = useState([]);
|
||||||
const api = new usersService();
|
const api = new usersService();
|
||||||
|
|
||||||
const getMarketActiveJobList = async () => {
|
const getHeroJBannersList = async () => {
|
||||||
try {
|
try {
|
||||||
const res = await api.getHeroJBanners();
|
const res = await api.getHeroJBanners();
|
||||||
setMarketActiveJobList(res.data);
|
// console.log("BANNERS->",res.data);
|
||||||
|
setBannerList(res.data?.result_list);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.log("Error getting mode");
|
console.log("Error getting BANNERS....");
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
getMarketActiveJobList();
|
getHeroJBannersList();
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<Home />
|
<Home
|
||||||
|
bannerList={bannerList}
|
||||||
|
/>
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,9 +1,16 @@
|
|||||||
import MarketPlace from "../components/MarketPlace";
|
import MarketPlace from "../components/MarketPlace";
|
||||||
|
|
||||||
export default function MarketPlacePage() {
|
export default function MarketPlacePage() {
|
||||||
|
|
||||||
|
const commonHeadData =()=>{
|
||||||
|
console.log("COMMON HEAD DATA ----------------=====---------------------");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<MarketPlace />
|
<MarketPlace
|
||||||
|
commonHeadData={commonHeadData} />
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,7 +4,10 @@ import usersService from "../services/UsersService";
|
|||||||
import MyActiveJobs from "../components/MyActiveJobs";
|
import MyActiveJobs from "../components/MyActiveJobs";
|
||||||
|
|
||||||
export default function MyActiveJobsPage() {
|
export default function MyActiveJobsPage() {
|
||||||
|
const commonHeadData =()=>{
|
||||||
|
console.log("COMMON HEAD DATA ----------------=====---------------------");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
const [MyJobList, setMyJobList] = useState([]);
|
const [MyJobList, setMyJobList] = useState([]);
|
||||||
const api = new usersService();
|
const api = new usersService();
|
||||||
//TARGET ENDPOINT[POST]http://10.204.5.100:9083/en/wrench/api/v1/jobmanageractive
|
//TARGET ENDPOINT[POST]http://10.204.5.100:9083/en/wrench/api/v1/jobmanageractive
|
||||||
@@ -23,7 +26,10 @@ export default function MyActiveJobsPage() {
|
|||||||
// debugger;
|
// debugger;
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<MyActiveJobs MyJobList={MyJobList} />
|
<MyActiveJobs
|
||||||
|
MyJobList={MyJobList}
|
||||||
|
commonHeadData={commonHeadData}
|
||||||
|
/>
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,10 @@
|
|||||||
|
import React from "react";
|
||||||
|
import WalletRoutes from "../components/MyWallet/Wallet";
|
||||||
|
|
||||||
|
export default function MyCouponPage() {
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<WalletRoutes />
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -8,6 +8,11 @@ import { useSelector } from "react-redux";
|
|||||||
|
|
||||||
export default function MyJobsPage() {
|
export default function MyJobsPage() {
|
||||||
|
|
||||||
|
const commonHeadData =()=>{
|
||||||
|
console.log("COMMON HEAD DATA ----------------=====---------------------");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
const {jobListTable} = useSelector((state) => state.tableReload)
|
const {jobListTable} = useSelector((state) => state.tableReload)
|
||||||
|
|
||||||
// const userApi = new usersService();
|
// const userApi = new usersService();
|
||||||
@@ -33,7 +38,9 @@ export default function MyJobsPage() {
|
|||||||
// debugger;
|
// debugger;
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<MyJobs MyJobList={MyJobList} />
|
<MyJobs
|
||||||
|
MyJobList={MyJobList}
|
||||||
|
commonHeadData={commonHeadData} />
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,7 +5,10 @@ import MyActiveJobs from "../components/MyActiveJobs";
|
|||||||
import MyPendingJobs from "../components/MyPendingJobs";
|
import MyPendingJobs from "../components/MyPendingJobs";
|
||||||
|
|
||||||
export default function MyPendingJobsPage() {
|
export default function MyPendingJobsPage() {
|
||||||
|
const commonHeadData =()=>{
|
||||||
|
console.log("COMMON HEAD DATA ----------------=====---------------------");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
const [MyJobList, setMyJobList] = useState([]);
|
const [MyJobList, setMyJobList] = useState([]);
|
||||||
const api = new usersService();
|
const api = new usersService();
|
||||||
|
|
||||||
@@ -24,7 +27,10 @@ export default function MyPendingJobsPage() {
|
|||||||
// debugger;
|
// debugger;
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<MyPendingJobs MyJobList={MyJobList} />
|
<MyPendingJobs
|
||||||
|
MyJobList={MyJobList}
|
||||||
|
commonHeadData={commonHeadData}
|
||||||
|
/>
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,7 +7,10 @@ export default function MyTaskPage() {
|
|||||||
|
|
||||||
const [MyActiveJobList, setMyActiveJobList] = useState([]);
|
const [MyActiveJobList, setMyActiveJobList] = useState([]);
|
||||||
const api = new usersService();
|
const api = new usersService();
|
||||||
|
const commonHeadData =()=>{
|
||||||
|
console.log("COMMON HEAD DATA ----------------=====---------------------");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
const getMyActiveJobList = async () => {
|
const getMyActiveJobList = async () => {
|
||||||
try {
|
try {
|
||||||
const res = await api.getMyActiveTaskList();
|
const res = await api.getMyActiveTaskList();
|
||||||
@@ -23,7 +26,8 @@ export default function MyTaskPage() {
|
|||||||
//debugger;
|
//debugger;
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<MyTasks ActiveJobList={MyActiveJobList}/>
|
<MyTasks ActiveJobList={MyActiveJobList}
|
||||||
|
commonHeadData={commonHeadData}/>
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user