Compare commits

...

11 Commits

Author SHA1 Message Date
victorAnumudu a674688dce family current task added 2023-07-05 20:52:34 +01:00
ameye ef339b163d Merge branch 'cookie-fixing' of WrenchBoard/Users-Wrench into master 2023-07-05 16:54:23 +00:00
victorAnumudu 1ce154cc06 cookie bug fixing 2023-07-05 17:48:40 +01:00
victorAnumudu 67eb142ae2 cookie bug fixing 2023-07-05 17:47:05 +01:00
ameye e784d84699 Merge branch 'cookie-value-reading' of WrenchBoard/Users-Wrench into master 2023-07-05 16:10:01 +00:00
CHIEFSOFT\ameye cd6d540c4b Family Activer Job 2023-07-05 11:12:08 -04:00
ameye b0db896f6b Merge branch 'resources-page' of WrenchBoard/Users-Wrench into master 2023-07-05 14:15:03 +00:00
CHIEFSOFT\ameye fafea8b1ad Task banners 2023-07-05 10:13:19 -04:00
Ebube bbb099d51f Modified status for family waitlist 2023-07-05 14:51:24 +01:00
Ebube bfc0521e54 Merge branch 'master' of https://gitlab.chiefsoft.net/WrenchBoard/Users-Wrench into resources-page 2023-07-05 14:45:51 +01:00
Ebube 6870c145d7 Added banner name to suggested task payload 2023-07-05 14:45:29 +01:00
17 changed files with 165 additions and 19 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

+1 -1
View File
@@ -168,7 +168,7 @@ export default function Login() {
}
let loginValue = readCookie('loginType')
setLoginType(loginValue)
},[loginType])
},[])
useEffect(() => {
@@ -0,0 +1,120 @@
import { useState } from "react";
import { Link, useLocation } from "react-router-dom";
import { toast } from "react-toastify";
import localImgLoad from "../../lib/localImgLoad";
import CountDown from "../Helpers/CountDown";
import Icons from "../Helpers/Icons";
export default function FamilyActiveJobsCard({ datas, hidden = false }) {
let { pathname } = useLocation();
console.log('TESTING11111',datas)
const [imageUrl, setImageUrl] = useState("");
const [addFavorite, setValue] = useState(false);
const [options, setOption] = useState(false);
const favoriteHandler = () => {
if (!addFavorite) {
setValue(true);
toast.success("Added to Favorite List");
} else {
setValue(false);
toast.warn("Remove to Favorite List");
}
};
return (
<div className="card-style-one flex flex-col justify-between w-full h-[387px] bg-white dark:bg-dark-white p-3 pb rounded-2xl">
<div className="content">
{/* thumbnail */}
<div className="w-full h-40">
{/* thumbnail image */}
<div
className="thumbnail w-full h-full rounded-xl overflow-hidden px-4 pt-4"
style={{
background: `url(${localImgLoad(
`images/taskbanners/${datas.banner}`
)}) center / contain no-repeat`,
}}
>
{/* <div className="product-options flex justify-between relative">*/}
{/*<span*/}
{/* onClick={favoriteHandler}*/}
{/* className={`w-7 h-7 bg-white rounded-full flex justify-center items-center cursor-pointer ${*/}
{/* addFavorite ? "text-pink" : " text-dark-gray"*/}
{/* }`}*/}
{/*>*/}
{/* <Icons name="love" />*/}
{/*</span>*/}
{/* <span*/}
{/* onClick={() => setOption(!options)}*/}
{/* className="w-7 h-7 flex justify-center items-center bg-white rounded-full cursor-pointer"*/}
{/* >*/}
{/* <Icons name="dots" />*/}
{/*</span>*/}
{/* {options && (*/}
{/* <div*/}
{/* onClick={() => setOption(!options)}*/}
{/* className="w-full h-screen fixed top-0 left-0 z-10"*/}
{/* ></div>*/}
{/* )}*/}
{/* <div*/}
{/* style={{ boxShadow: "0px 4px 87px 0px #0000002B" }}*/}
{/* className={`drop-down-content w-[80px] bg-white dark:bg-dark-white rounded-[4px] p-2.5 absolute right-0 top-[100%] z-20 ${*/}
{/* options ? "active" : ""*/}
{/* }`}*/}
{/* >*/}
{/* </div>*/}
{/* </div>*/}
{hidden && (
<div className="flex justify-center">
</div>
)}
</div>
</div>
{/* details */}
<div className="details">
{/* product title */}
<Link
to="/manage-active-job"
state={{ ...datas, pathname }}
className="text-xl font-bold text-dark-gray dark:text-white mb-2 capitalize line-clamp-1"
>
{datas.title}
</Link>
{/* countdown */}
<div className="w-full h-[54px] flex justify-evenly items-center p-2 rounded-lg border border-[#E3E4FE] dark:border-[#a7a9b533] ">
<div className="flex flex-col justify-between">
<p className="text-sm text-thin-light-gray dark:text-white tracking-wide">
Task Code
</p>
<p className="text-base font-bold tracking-wide text-dark-gray dark:text-white">
{datas.contract}
</p>
</div>
<div className="w-[1px] h-full bg-[#E3E4FE] dark:bg-[#a7a9b533] "></div>
<div className="flex flex-col justify-between">
<p className="text-sm text-thin-light-gray dark:text-white tracking-wide">
Remaining Time
</p>
<p className="text-base font-bold tracking-wide text-dark-gray dark:text-white">
<CountDown lastDate={datas.delivery_date} />
</p>
</div>
</div>
</div>
</div>
<div className="card-buttons flex justify-end items-center space-x-2">
<Link
to="/manage-active-job"
state={{ ...datas, pathname }}
className="btn-shine w-[98px] h-[33px] text-white rounded-full text-sm bg-pink flex justify-center items-center"
>
View
</Link>
</div>
</div>
);
}
@@ -68,7 +68,7 @@ const FamilyWaitlist = ({ familyData, className, loader }) => {
{addedDate}
</p>
<p className="text-sm text-dark-gray dark:text-white">
Status: {value.status}
Status: {value.status_text}
</p>
</div>
</div>
+2 -1
View File
@@ -16,6 +16,7 @@ const SuggestTask = ({ details, onClose, situation }) => {
const initialValues = {
title: details?.title || "",
description: details?.description || "",
banner: details?.banner
};
const apiCall = new usersService();
@@ -24,7 +25,7 @@ const SuggestTask = ({ details, onClose, situation }) => {
if(!values.title && !values.description) return;
try {
setSubmitTask({ loading: true });
const reqData = { ...values };
const reqData = { ...values, };
const res = await apiCall.sendFamilySuggestedTasks(reqData);
if (res.internal_return < 0) {
setSubmitTask({ loading: false, msg: res.status, state: "bad" });
+7 -3
View File
@@ -1,20 +1,22 @@
import React, { useRef } from "react";
import ProductCardStyleOne from "../Cards/ProductCardStyleOne";
//import ProductCardStyleOne from "../Cards/ProductCardStyleOne";
import Icons from "../Helpers/Icons";
import SliderCom from "../Helpers/SliderCom";
import FamilyActiveJobsCard from "../Cards/FamilyActiveJobsCard";
export default function FamilyActiveLSlde({ className, trending }) {
const settings = {
arrows: false,
slidesToShow: 3,
slidesToScroll: 3,
infinite: true,
infinite: trending?.length > 3,
responsive: [
{
breakpoint: 1025,
settings: {
slidesToShow: 3,
slidesToScroll: 3,
infinite: trending?.length > 3,
},
},
{
@@ -22,6 +24,7 @@ export default function FamilyActiveLSlde({ className, trending }) {
settings: {
slidesToShow: 2,
slidesToScroll: 2,
infinite: trending?.length > 2,
},
},
{
@@ -29,6 +32,7 @@ export default function FamilyActiveLSlde({ className, trending }) {
settings: {
slidesToShow: 1,
slidesToScroll: 1,
infinite: trending?.length > 1,
},
},
],
@@ -94,7 +98,7 @@ export default function FamilyActiveLSlde({ className, trending }) {
{trending &&
trending.length > 0 &&
trending.map((item) => (
<ProductCardStyleOne key={item.id} datas={item} />
<FamilyActiveJobsCard key={item.id} datas={item} />
))}
</SliderCom>
</div>
+6 -2
View File
@@ -6,16 +6,20 @@ import FamilyActiveLSlde from "./FamilyActiveLSlde";
import ParentWaiting from "../MyPendingJobs/ParentWaiting";
import MyOffersFamilyTable from "../MyTasks/MyOffersFamilyTable";
export default function FamilyDash({familyOffers}) {
export default function FamilyDash({familyOffers, MyActiveJobList}) {
console.log("PROPS IN FAMILY DASH->", familyOffers);
const trending = datas.datas;
const trending = MyActiveJobList;
return (
<div>
<div className="home-page-wrapper">
{/* <CommonHead commonHeadData={props.commonHeadData} /> */}
<MyOffersFamilyTable familyOffers={familyOffers} className="mb-10" />
{trending && trending.length > 0 &&
<FamilyActiveLSlde trending={trending} className="mb-10" />
}
{/*<TopSellerTopBuyerSliderSection className="mb-10" />*/}
<ParentWaiting className="mb-10" />
</div>
+19 -3
View File
@@ -8,15 +8,26 @@ import FullAccountDash from "./FullAccountDash";
export default function Home(props) {
console.log("PROPS IN HOME->", props);
const userApi = new usersService();
const { commonHeadBanner } = useSelector((state) => state.commonHeadBanner);
let [nextDueTask, setNextDueTask] = useState({});
const [MyOffersList, setMyOffersList] = useState([]);
const userApi = new usersService();
const { userDetails } = useSelector((state) => state?.userDetails);
const { commonHeadBanner } = useSelector((state) => state.commonHeadBanner);
const [MyActiveJobList, setMyActiveJobList] = useState([]); // STATE TO HOLD ACTIVE/CURRENT TASKS
const getMyActiveJobList = async () => { // FUNCTION TO POPULATE ACTIVE/CURRENT TASK LIST
try {
const res = await userApi.getMyActiveTaskList();
setMyActiveJobList(res?.data?.result_list);
} catch (error) {
setMyActiveJobList([]);
console.log("Error getting tasks");
}
};
// FUNCTION TO GET DASH DATA TO DETERMINE CURRENT TASK DUE TIME
const getHomeDate = () => {
@@ -50,6 +61,10 @@ export default function Home(props) {
fetchData();
}, []);
useEffect(() => {
getMyActiveJobList();
}, []);
return (
<Layout>
<div className="home-page-wrapper">
@@ -58,6 +73,7 @@ export default function Home(props) {
account={userDetails}
commonHeadData={props.bannerList}
familyOffers={MyOffersList}
MyActiveJobList={MyActiveJobList}
/>
) : userDetails && userDetails?.account_type == "FULL" ? (
<FullAccountDash
+2 -1
View File
@@ -5,6 +5,7 @@ import { handlePagingFunc } from "../Pagination/HandlePagination";
import LoadingSpinner from "../Spinners/LoadingSpinner";
import { useNavigate, useLocation } from "react-router-dom";
import { PriceFormatter } from "../Helpers/PriceFormatter";
import localImgLoad from "../../lib/localImgLoad";
const noTasksBg = require("../../assets/images/no-task-background.jpg");
const noFamilyTasksBg = require("../../assets/images/family-no-task-background.jpg");
@@ -80,7 +81,7 @@ export default function MyJobTable({ className, ActiveJobList, Account }) {
<div className="flex space-x-2 items-center">
<div className="w-full min-w-[60px] max-w-[60px] flex-[0.1] h-[60px] rounded-full overflow-hidden flex justify-center items-center">
<img
src={dataImage1}
src={localImgLoad(`images/taskbanners/${task?.banner}`)}
alt="data"
className="w-full h-full"
/>
+7 -7
View File
@@ -6,8 +6,8 @@
"profile_img": "profile.png",
"price": "75,320 ETH",
"thumbnil": "tranding-1.jpg",
"remaing": "2023-03-04 4:00:00",
"title": "laborum cupidatat sit"
"remaing": "2023-08-04 4:00:00",
"title": "Wash Dishes"
},
{
"id": 1,
@@ -15,8 +15,8 @@
"profile_img": "profile.png",
"price": "75,320 ETH",
"thumbnil": "tranding-2.jpg",
"remaing": "2023-03-04 4:00:00",
"title": "velit occaecat voluptate"
"remaing": "2023-07-24 4:00:00",
"title": "Wash Planes"
},
{
"id": 2,
@@ -24,7 +24,7 @@
"profile_img": "profile.png",
"price": "75,320 ETH",
"thumbnil": "tranding-3.jpg",
"remaing": "2023-03-04 4:00:00",
"remaing": "2023-07-17 4:00:00",
"title": "est reprehenderit amet"
},
{
@@ -33,7 +33,7 @@
"profile_img": "profile.png",
"price": "75,320 ETH",
"thumbnil": "tranding-4.jpg",
"remaing": "2023-03-04 4:00:00",
"remaing": "2023-08-04 4:00:00",
"title": "velit tempor nostrud"
},
{
@@ -42,7 +42,7 @@
"profile_img": "profile.png",
"price": "75,320 ETH",
"thumbnil": "tranding-4.jpg",
"remaing": "2023-03-04 4:00:00",
"remaing": "2023-09-04 4:00:00",
"title": "adipisicing sit nostrud"
},
{