From 4904f1d39895a59c8ef323d74eb8c0198760ba74 Mon Sep 17 00:00:00 2001 From: Ebube Date: Wed, 5 Jul 2023 12:53:19 +0100 Subject: [PATCH] Added waiting component and rendered the offerlist --- src/components/FamilyAcc/FamilyManage.jsx | 8 +- src/components/FamilyAcc/FamilyManageTabs.jsx | 233 ++++++++++++ src/components/FamilyAcc/FamilyMarket.jsx | 1 - .../FamilyAcc/Tabs/FamilyAccount.jsx | 56 +++ .../FamilyAcc/Tabs/FamilyManageTabs.jsx | 342 ------------------ .../FamilyAcc/Tabs/FamilyProfile.jsx | 3 + .../FamilyAcc/Tabs/FamilyWaitlist.jsx | 131 +++++++ src/components/FamilyAcc/Tabs/ProfileInfo.jsx | 61 ++++ src/components/FamilyAcc/Tabs/index.js | 13 + src/components/FamilyPopup/SuggestTask.jsx | 1 + src/components/Home/FamilyDash.jsx | 6 +- .../MyTasks/MyOffersFamilyTable.jsx | 255 ++++++++++++- src/components/Pagination/index.js | 4 + src/services/UsersService.js | 29 +- 14 files changed, 776 insertions(+), 367 deletions(-) create mode 100644 src/components/FamilyAcc/FamilyManageTabs.jsx create mode 100644 src/components/FamilyAcc/Tabs/FamilyAccount.jsx delete mode 100644 src/components/FamilyAcc/Tabs/FamilyManageTabs.jsx create mode 100644 src/components/FamilyAcc/Tabs/FamilyProfile.jsx create mode 100644 src/components/FamilyAcc/Tabs/FamilyWaitlist.jsx create mode 100644 src/components/FamilyAcc/Tabs/ProfileInfo.jsx create mode 100644 src/components/FamilyAcc/Tabs/index.js create mode 100644 src/components/Pagination/index.js diff --git a/src/components/FamilyAcc/FamilyManage.jsx b/src/components/FamilyAcc/FamilyManage.jsx index cbb0978..0321448 100644 --- a/src/components/FamilyAcc/FamilyManage.jsx +++ b/src/components/FamilyAcc/FamilyManage.jsx @@ -1,8 +1,8 @@ -import React, { useState, useEffect } from "react"; -import Layout from "../Partials/Layout"; -import FamilyManageTabs from "./Tabs/FamilyManageTabs"; +import React, { useEffect, useState } from "react"; import { useLocation, useNavigate } from "react-router-dom"; +import Layout from "../Partials/Layout"; import LoadingSpinner from "../Spinners/LoadingSpinner"; +import FamilyManageTabs from "./FamilyManageTabs"; export default function FamilyManage() { const [selectTab, setValue] = useState("today"); @@ -11,7 +11,7 @@ export default function FamilyManage() { let location = useLocation(); let navigate = useNavigate(); let accountDetails = location?.state; - + // tab handler const filterHandler = (value) => { setValue(value); diff --git a/src/components/FamilyAcc/FamilyManageTabs.jsx b/src/components/FamilyAcc/FamilyManageTabs.jsx new file mode 100644 index 0000000..01475d6 --- /dev/null +++ b/src/components/FamilyAcc/FamilyManageTabs.jsx @@ -0,0 +1,233 @@ +import React, { + Suspense, + useCallback, + useEffect, + useMemo, + useRef, + useState, +} from "react"; +import { useReactToPrint } from "react-to-print"; +import profile from "../../assets/images/profile-info-profile.png"; +import usersService from "../../services/UsersService"; +import LoadingSpinner from "../Spinners/LoadingSpinner"; +import AssignTaskPopout from "./FamilyPopout/AssignTaskPopout"; +import { + FamilyWaitlist, + FamilyAccount, + FamilyProfile, + FamilyTasks, + ProfileInfo, +} from "./Tabs"; + +export default function FamilyManageTabs({ + className, + accountDetails, + listReload, + loader, +}) { + const [details, setDetails] = useState({ + familyDetails: { loading: false, data: null }, + familyTasks: { loading: false, data: null }, + familyWaitList: { loading: false, data: null }, + }); + const [errMsg, setErrMsg] = useState(""); + const [familyTaskPopout, setFamilyTaskPopout] = useState(false); + + const familyPopUpHandler = () => { + setFamilyTaskPopout((prev) => !prev); + }; + + const [profileImg, setProfileImg] = useState(profile); + const profileImgInput = useRef(null); + + const browseProfileImg = () => { + profileImgInput.current.click(); + }; + + const profileImgChangeHandler = (e) => { + if (e.target.value !== "") { + const imgReader = new FileReader(); + imgReader.onload = (event) => { + setProfileImg(event.target.result); + }; + imgReader.readAsDataURL(e.target.files[0]); + } + }; + + const apiCall = useMemo(() => new usersService(), []); + + const manageFamily = useCallback(async () => { + try { + setDetails({ + familyDetails: { loading: true }, + familyTasks: { loading: true }, + familyWaitList: { loading: true }, + }); + + const { family_uid } = accountDetails; + const reqData = { family_uid }; + + const [familyRes, tasksRes, familyWaitRes] = await Promise.all([ + apiCall.ManageFamily(reqData), + apiCall.ManageTasks(reqData), + apiCall.ManageFamilyWaitlist(), + ]); + + const familyData = familyRes.data; + const tasksData = tasksRes.data; + const familyWaitData = familyWaitRes.data; + + if ( + familyData?.internal_return < 0 || + tasksData?.internal_return < 0 || + familyWaitData?.internal_return < 0 + ) + return; + + setDetails({ + familyDetails: { loading: false, data: familyData }, + familyTasks: { loading: false, data: tasksData }, + familyWaitList: { loading: false, data: familyWaitData }, + }); + } catch (error) { + setDetails({ + familyDetails: { loading: false }, + familyTasks: { loading: false }, + familyWaitList: { loading: false }, + }); + setErrMsg("An error occurred"); + throw new Error(error); + } + }, [apiCall, accountDetails]); + + const accountRef = useRef(); + + const useHandlePrint = useReactToPrint({ + content: () => accountRef.current, + }); + + const tabs = [ + { id: 1, name: "Tasks" }, + { id: 2, name: "Waiting" }, + { id: 3, name: "Account" }, + { id: 4, name: "Profile" }, + ]; + + const [tab, setTab] = useState(tabs[0].name); + + const tabHandler = (value) => { + setTab(value); + }; + + const tabComponents = { + Tasks: ( + + ), + Waiting: ( + + ), + Account: ( + + ), + Profile: , + }; + + const defaultTabComponent = ( + + ); + + const selectedTabComponent = tabComponents[tab] || defaultTabComponent; + + useEffect(() => { + manageFamily(); + }, [tab, manageFamily]); + + return ( +
+
+ + +
+ } + > +
+
+ +
+
+
+
+
    + {tabs.map(({ name, id }) => ( +
  • tabHandler(name)} + className={`p-4 flex hover:text-purple transition-all ease-in-out items-center cursor-pointer overflow-hidden text-xl relative top-1 ${ + tab === name + ? "text-purple border-r" + : "text-thin-light-gray" + }`} + key={id} + > +

    {name}

    +
  • + ))} +
+ +
+
+
+ {selectedTabComponent} +
+
+
+
+
+ +
+ + {familyTaskPopout && ( + + )} + + ); +} diff --git a/src/components/FamilyAcc/FamilyMarket.jsx b/src/components/FamilyAcc/FamilyMarket.jsx index d909aba..8a94aab 100644 --- a/src/components/FamilyAcc/FamilyMarket.jsx +++ b/src/components/FamilyAcc/FamilyMarket.jsx @@ -1,6 +1,5 @@ import React, { useCallback, useEffect, useMemo, useState } from "react"; import Layout from "../Partials/Layout"; -import DataIteration from "../Helpers/DataIteration"; import SearchCom from "../Helpers/SearchCom"; import FamilyMarketCard from "../Cards/FamilyMarketCard"; import usersService from "../../services/UsersService"; diff --git a/src/components/FamilyAcc/Tabs/FamilyAccount.jsx b/src/components/FamilyAcc/Tabs/FamilyAccount.jsx new file mode 100644 index 0000000..dcfb3b8 --- /dev/null +++ b/src/components/FamilyAcc/Tabs/FamilyAccount.jsx @@ -0,0 +1,56 @@ +import { forwardRef } from 'react' +import QRCode from 'react-qr-code'; + +const FamilyAccount = forwardRef(({ familyData, myRef, handlePrint }, ref) => { + return ( +
+
+
+
+

+ Username:{" "} + + {familyData?.username ? familyData?.username : "please wait..."} + +

+

+ Pin:{" "} + + {familyData?.pin ? familyData?.pin : "please wait..."} + +

+
+ + + or + + +
+

+ Scan the code from mobile app +

+ +
+
+
+ +
+
+
+ ); + }); + +export default FamilyAccount \ No newline at end of file diff --git a/src/components/FamilyAcc/Tabs/FamilyManageTabs.jsx b/src/components/FamilyAcc/Tabs/FamilyManageTabs.jsx deleted file mode 100644 index 720eef4..0000000 --- a/src/components/FamilyAcc/Tabs/FamilyManageTabs.jsx +++ /dev/null @@ -1,342 +0,0 @@ -import React, { - Suspense, - forwardRef, - useCallback, - useEffect, - useMemo, - useRef, - useState, -} from "react"; -import QRCode from "react-qr-code"; -import { useReactToPrint } from "react-to-print"; -import usersService from "../../../services/UsersService"; -import LoadingSpinner from "../../Spinners/LoadingSpinner"; -import profile from "../../../assets/images/profile-info-profile.png"; -import FamilyTasks from "./FamilyTasks"; - -import AssignTaskPopout from '../FamilyPopout/AssignTaskPopout' - - -export default function FamilyManageTabs({ - className, - accountDetails, - listReload, - loader, -}) { - const [details, setDetails] = useState({ - familyDetails: { - loading: false, - data: null, - }, - familyTasks: { - loading: false, - data: 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 tabHandler = (value) => { - setTab(value); - }; - - let [familyTaskPopout, setFamilyTaskPopout] = useState(false) // DETERMINES WHEN FAMILY ADD TASK POPOUT DISPLAYS - - const familyPopUpHandler = () => { // FUNCTION TO CHANGE THE FAMILY ADD TASK POPOIUT STATE - setFamilyTaskPopout(prev => !prev) - } - - // 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 manageFamily = useCallback(async () => { - try { - setDetails({ - familyDetails: { loading: true }, - familyTasks: { loading: true }, - }); - let { family_uid } = accountDetails; - let reqData = { family_uid }; - - // the family response - const familyRes = await apiCall.ManageFamily(reqData); - const familyData = familyRes.data; - - // the tasks response - const tasksRes = await apiCall.ManageTasks(reqData); - const tasksData = tasksRes.data; - - // checking the internal return - if (familyData?.internal_return < 0 || tasksData?.internal_return < 0) - return; - - setDetails({ - familyDetails: { loading: false, data: familyData }, - familyTasks: { loading: false, data: tasksData }, - }); - } catch (error) { - setDetails({ - familyDetails: { loading: false }, - familyTasks: { loading: false }, - }); - setErrMsg("An error occurred"); - throw new Error(error); - } - }, [apiCall, accountDetails]); - - useEffect(() => { - manageFamily(); - }, [tab, manageFamily]); - - const accountRef = useRef(); - // to handle printing - const useHandlePrint = useReactToPrint({ - content: () => accountRef.current, - }); - - return ( -
-
- - -
- } - > -
-
- -
-
-
-
-
    - {tabs.map(({ name, id }) => ( -
  • 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} - > -

    {name}

    -
  • - ))} -
- -
-
- {/* Your content here */} - {tabs.map(({ name, id }) => { - return ( -
- {name === "Tasks" && ( - - )} - {name === "Account" && ( - - )} - {name === "Profile" && } -
- ); - })} -
-
-
-
- -
- - {/* FAMILY ADD TASK POPOUT */} - {familyTaskPopout && - - } - - ); -} - -function ProfileInfo({ - profileImg, - profileImgInput, - profileImgChangHandler, - browseProfileImg, - accountDetails, -}) { - return ( -
-
-
- - profileImgChangHandler(e)} - type="file" - className="hidden" - /> -
- - - - -
-
-
-
-

- {accountDetails?.firstname} -

-

- {accountDetails?.lastname} -

-

- {accountDetails?.age} -

-
-
- ); -} - -const Account = forwardRef(({ familyData, myRef, handlePrint }, ref) => { - return ( -
-
-
-
-

- Username:{" "} - - {familyData?.username ? familyData?.username : "please wait..."} - -

-

- Pin:{" "} - - {familyData?.pin ? familyData?.pin : "please wait..."} - -

-
- - - or - - -
-

- Scan the code from mobile app -

- -
-
-
- -
-
-
- ); -}); - -function Profile() { - return <>Profile; -} diff --git a/src/components/FamilyAcc/Tabs/FamilyProfile.jsx b/src/components/FamilyAcc/Tabs/FamilyProfile.jsx new file mode 100644 index 0000000..0ff4fd9 --- /dev/null +++ b/src/components/FamilyAcc/Tabs/FamilyProfile.jsx @@ -0,0 +1,3 @@ +export default function FamilyProfile() { + return <>Profile; +} \ No newline at end of file diff --git a/src/components/FamilyAcc/Tabs/FamilyWaitlist.jsx b/src/components/FamilyAcc/Tabs/FamilyWaitlist.jsx new file mode 100644 index 0000000..6ba062d --- /dev/null +++ b/src/components/FamilyAcc/Tabs/FamilyWaitlist.jsx @@ -0,0 +1,131 @@ +import { useState } from "react"; +import { useLocation, useNavigate } from "react-router-dom"; +import { handlePagingFunc, PaginatedList } from "../../Pagination"; +import LoadingSpinner from "../../Spinners/LoadingSpinner"; + +const FamilyWaitlist = ({ familyData, className, loader }) => { + let navigate = useNavigate(); + let { pathname } = useLocation(); + + const [currentPage, setCurrentPage] = useState(0); + const indexOfFirstItem = Number(currentPage); + const indexOfLastItem = + Number(indexOfFirstItem) + Number(process.env.REACT_APP_ITEM_PER_PAGE); + const currentTask = familyData?.result_list.slice( + indexOfFirstItem, + indexOfLastItem + ); + + const handlePagination = (e) => handlePagingFunc(e, setCurrentPage); + + console.log("I am in family waitlist", familyData); + + return ( +
+ {loader ? ( +
+ +
+ ) : ( + <> + {familyData && familyData?.result_list && ( +
+ + + { + <> + {familyData && + familyData?.result_list && + familyData.result_list.length > 0 && + currentTask.map((value, index) => { + // find due date + // const dueDate = value?.delivery_date.split(" ")[0]; + // the price + // let thePrice = PriceFormatter( + // value?.price * 0.01, + // value?.currency_code, + // value?.currency + // ); + return ( + + + + + + + ); + })} + + } + +
+
+
+ data +
+
+
+
+

+ {/* {value.title} */} + title +

+
+ desd +
+
+
+ Date + Status + + +
+ {/* PAGINATION BUTTON */} + = + familyData?.result_list.length + ? true + : false + } + data={familyData?.result_list} + start={indexOfFirstItem} + stop={indexOfLastItem} + /> + {/* END OF PAGINATION BUTTON */} +
+ )} + + )} +
+ ); +}; + +export default FamilyWaitlist; diff --git a/src/components/FamilyAcc/Tabs/ProfileInfo.jsx b/src/components/FamilyAcc/Tabs/ProfileInfo.jsx new file mode 100644 index 0000000..74f0c86 --- /dev/null +++ b/src/components/FamilyAcc/Tabs/ProfileInfo.jsx @@ -0,0 +1,61 @@ +import React from "react"; + +export default function ProfileInfo({ + profileImg, + profileImgInput, + profileImgChangHandler, + browseProfileImg, + accountDetails, +}) { + return ( +
+
+
+ + profileImgChangHandler(e)} + type="file" + className="hidden" + /> +
+ + + + +
+
+
+
+

+ {accountDetails?.firstname} +

+

+ {accountDetails?.lastname} +

+

+ {accountDetails?.age} +

+
+
+ ); +} diff --git a/src/components/FamilyAcc/Tabs/index.js b/src/components/FamilyAcc/Tabs/index.js new file mode 100644 index 0000000..a3f9f16 --- /dev/null +++ b/src/components/FamilyAcc/Tabs/index.js @@ -0,0 +1,13 @@ +import FamilyAccount from "./FamilyAccount"; +import FamilyProfile from "./FamilyProfile"; +import FamilyTasks from "./FamilyTasks"; +import FamilyWaitlist from "./FamilyWaitlist"; +import ProfileInfo from "./ProfileInfo"; + +export { + FamilyAccount, + FamilyProfile, + FamilyTasks, + FamilyWaitlist, + ProfileInfo, +}; diff --git a/src/components/FamilyPopup/SuggestTask.jsx b/src/components/FamilyPopup/SuggestTask.jsx index 0293804..1c2e191 100644 --- a/src/components/FamilyPopup/SuggestTask.jsx +++ b/src/components/FamilyPopup/SuggestTask.jsx @@ -95,6 +95,7 @@ const SuggestTask = ({ details, onClose, situation }) => { label="Title" labelClass="tracking-wide" inputBg="bg-slate-100" + inputClass="disabled:cursor-default" type="text" name="title" disable={details?.title} diff --git a/src/components/Home/FamilyDash.jsx b/src/components/Home/FamilyDash.jsx index 1c3dff0..ae85faa 100644 --- a/src/components/Home/FamilyDash.jsx +++ b/src/components/Home/FamilyDash.jsx @@ -6,15 +6,15 @@ import FamilyActiveLSlde from "./FamilyActiveLSlde"; import ParentWaiting from "../MyPendingJobs/ParentWaiting"; import MyOffersFamilyTable from "../MyTasks/MyOffersFamilyTable"; -export default function FamilyDash(props) { - console.log("PROPS IN FAMILY DASH->", props); +export default function FamilyDash({familyOffers}) { + console.log("PROPS IN FAMILY DASH->", familyOffers); const trending = datas.datas; return (
{/* */} - + {/**/} diff --git a/src/components/MyTasks/MyOffersFamilyTable.jsx b/src/components/MyTasks/MyOffersFamilyTable.jsx index 7c7c2b0..dcc900f 100644 --- a/src/components/MyTasks/MyOffersFamilyTable.jsx +++ b/src/components/MyTasks/MyOffersFamilyTable.jsx @@ -1,17 +1,15 @@ import { useRef, useState } from "react"; import Icons from "../Helpers/Icons"; import SliderCom from "../Helpers/SliderCom"; - import OfferJobPopout from "../jobPopout/OfferJobPopout"; -import LoadingSpinner from "../Spinners/LoadingSpinner"; import { PriceFormatter } from "../Helpers/PriceFormatter"; -export default function MyOffersFamilyTable({ className, MyActiveOffersList }) { +export default function MyOffersFamilyTable({ className, familyOffers }) { let [offerPopout, setOfferPopout] = useState({ show: false, data: {} }); // STATE TO HOLD THE VALUE OF THE ALERT DETAILS AND DETERMINE WHEN TO SHOW const settings = { arrows: false, dots: false, - infinite: MyActiveOffersList?.result_list?.length > 4, + infinite: familyOffers?.result_list?.length > 4, autoplay: true, slidesToShow: 4, slidesToScroll: 1, @@ -21,13 +19,13 @@ export default function MyOffersFamilyTable({ className, MyActiveOffersList }) { settings: { slidesToShow: 2, slidesToScroll: 1, - infinite: MyActiveOffersList?.result_list?.length > 2, + infinite: familyOffers?.result_list?.length > 2, }, }, ], }; - console.log("YES WE SEE OFFERS", MyActiveOffersList); + console.log("YES WE SEE OFFERS", familyOffers); const sellSlider = useRef(null); //const buySlider = useRef(null); const prevHandler = (value) => { @@ -47,7 +45,7 @@ export default function MyOffersFamilyTable({ className, MyActiveOffersList }) { // } }; - if (!MyActiveOffersList || MyActiveOffersList?.result_list?.length == 0) { + if (!familyOffers || familyOffers?.result_list?.length == 0) { return ""; // want blank or no appear when no items } @@ -110,9 +108,9 @@ export default function MyOffersFamilyTable({ className, MyActiveOffersList }) {
- {MyActiveOffersList && - MyActiveOffersList?.result_list?.length > 0 && - MyActiveOffersList?.result_list?.map((value, index) => { + {familyOffers && + familyOffers?.length > 0 && + familyOffers?.map((value, index) => { let thePrice = PriceFormatter( value?.price * 0.01, value?.currency_code, @@ -152,6 +150,243 @@ export default function MyOffersFamilyTable({ className, MyActiveOffersList }) {
); })} + + {/*
*/} + {/* /!* img *!/*/} + {/*
*/} + {/*
*/} + {/* top*/} + {/*
*/} + {/* */} + {/* */} + {/* */} + {/*
*/} + {/*
*/} + {/*
*/} + {/* /!* title *!/*/} + {/*
*/} + {/*

*/} + {/* Brokln Simons*/} + {/*

*/} + {/*
*/} + {/* /!* username *!/*/} + {/*
*/} + {/*

*/} + {/* @broklinslam_75*/} + {/*

*/} + {/*
*/} + {/* /!* items *!/*/} + {/*
*/} + {/*
*/} + {/**/} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/**/} + {/* 3435 Items*/} + {/*
*/} + {/*
*/} + {/*
*/} + {/*
*/} + {/* /!* img *!/*/} + {/*
*/} + {/*
*/} + {/* top*/} + {/*
*/} + {/* */} + {/* */} + {/* */} + {/*
*/} + {/*
*/} + {/*
*/} + {/* /!* title *!/*/} + {/*
*/} + {/*

*/} + {/* Brokln Simons*/} + {/*

*/} + {/*
*/} + {/* /!* username *!/*/} + {/*
*/} + {/*

*/} + {/* @broklinslam_75*/} + {/*

*/} + {/*
*/} + {/* /!* items *!/*/} + {/*
*/} + {/*
*/} + {/**/} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/**/} + {/* 3435 Items*/} + {/*
*/} + {/*
*/} + {/*
*/} + {/*
*/} + {/* /!* img *!/*/} + {/*
*/} + {/*
*/} + {/* top*/} + {/*
*/} + {/* */} + {/* */} + {/* */} + {/*
*/} + {/*
*/} + {/*
*/} + {/* /!* title *!/*/} + {/*
*/} + {/*

*/} + {/* Brokln Simons*/} + {/*

*/} + {/*
*/} + {/* /!* username *!/*/} + {/*
*/} + {/*

*/} + {/* @broklinslam_75*/} + {/*

*/} + {/*
*/} + {/* /!* items *!/*/} + {/*
*/} + {/*
*/} + {/**/} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/**/} + {/* 3435 Items*/} + {/*
*/} + {/*
*/} + {/*
*/} + {/*
*/} + {/* /!* img *!/*/} + {/*
*/} + {/*
*/} + {/* top*/} + {/*
*/} + {/* */} + {/* */} + {/* */} + {/*
*/} + {/*
*/} + {/*
*/} + {/* /!* title *!/*/} + {/*
*/} + {/*

*/} + {/* Brokln Simons*/} + {/*

*/} + {/*
*/} + {/* /!* username *!/*/} + {/*
*/} + {/*

*/} + {/* @broklinslam_75*/} + {/*

*/} + {/*
*/} + {/* /!* items *!/*/} + {/*
*/} + {/*
*/} + {/**/} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + {/**/} + {/* 3435 Items*/} + {/*
*/} + {/*
*/} + {/*
*/}
diff --git a/src/components/Pagination/index.js b/src/components/Pagination/index.js new file mode 100644 index 0000000..c416718 --- /dev/null +++ b/src/components/Pagination/index.js @@ -0,0 +1,4 @@ +import { handlePagingFunc } from "./HandlePagination"; +import PaginatedList from "./PaginatedList"; + +export { handlePagingFunc, PaginatedList }; diff --git a/src/services/UsersService.js b/src/services/UsersService.js index 3bb86a2..1aba039 100644 --- a/src/services/UsersService.js +++ b/src/services/UsersService.js @@ -251,6 +251,19 @@ class usersService { return this.postAuxEnd("/jobmanageractive", postData); } + // Family Waitlist + ManageFamilyWaitlist() { + var postData = { + uid: localStorage.getItem("uid"), + member_id: localStorage.getItem("member_id"), + sessionid: localStorage.getItem("session_token"), + action: 13010, + limit: 30, + offset: 0, + }; + return this.postAuxEnd("/familywaitingtasks", postData); + } + // Task for the person doing the job getMyActiveTaskList() { var postData = { @@ -312,8 +325,9 @@ class usersService { }; return this.postAuxEnd("/jobmanageroffers", postData); } -// - getResourceList() { // jobs you have shown inteterest in + // + getResourceList() { + // jobs you have shown inteterest in var postData = { uuid: localStorage.getItem("uid"), member_id: localStorage.getItem("member_id"), @@ -324,7 +338,8 @@ class usersService { }; return this.postAuxEnd("/resources", postData); } - getMyWiatingJobList() { // jobs you have shown inteterest in + getMyWiatingJobList() { + // jobs you have shown inteterest in var postData = { uuid: localStorage.getItem("uid"), member_id: localStorage.getItem("member_id"), @@ -335,7 +350,7 @@ class usersService { }; return this.postAuxEnd("/waitinginterest", postData); } - getMyJobList(reqData={}) { + getMyJobList(reqData = {}) { var postData = { uuid: localStorage.getItem("uid"), member_id: localStorage.getItem("member_id"), @@ -343,7 +358,7 @@ class usersService { page: 0, offset: 0, limit: 100, - ...reqData + ...reqData, }; return this.postAuxEnd("/jobmanagerlist", postData); } @@ -818,7 +833,7 @@ class usersService { member_id: localStorage.getItem("member_id"), sessionid: localStorage.getItem("session_token"), action: 13025, - ...reqData + ...reqData, }; return this.postAuxEnd("/assigntask", postData); } @@ -831,7 +846,7 @@ class usersService { sessionid: localStorage.getItem("session_token"), limit: 30, offset: 0, - action: 13010 + action: 13010, }; return this.postAuxEnd("/familysuggestlist", postData); }