diff --git a/src/components/Contexts/SocketIOContext.js b/src/components/Contexts/SocketIOContext.js index c8c4b1e..ccfb33e 100644 --- a/src/components/Contexts/SocketIOContext.js +++ b/src/components/Contexts/SocketIOContext.js @@ -85,6 +85,7 @@ export default function SocketIOContextProvider({children}) { } console.log('data', data) }); + // dispatch(tableReload({ type: "HOMEBANNERS" })); // RELOADS HOME BANNERS }, [socket]); diff --git a/src/components/Dashboards/AccountDashboard.jsx b/src/components/Dashboards/AccountDashboard.jsx index 1c8fca9..dc4e7c3 100644 --- a/src/components/Dashboards/AccountDashboard.jsx +++ b/src/components/Dashboards/AccountDashboard.jsx @@ -31,8 +31,8 @@ const AccountDashboard = ({ className, bannerList, offersList, imageServer }) => }`} > + {/* for normal banner section */}
- {/* OFFER LIST DISPLAY */} <> {(offersList && offersList?.length > 0) && @@ -46,7 +46,9 @@ const AccountDashboard = ({ className, bannerList, offersList, imageServer }) => let image = `${imageServer}${localStorage.getItem("session_token")}/job/${item.job_uid}` return (
- + {index < 3 && + + }
) })} @@ -71,7 +73,31 @@ const AccountDashboard = ({ className, bannerList, offersList, imageServer }) => ); })}
-
+ + + {/* for flat banner section */} +
+ {/* OFFER LIST DISPLAY */} + <> + {(offersList && offersList?.length > 0) && + offersList.map((item, index) => { + let thePrice = PriceFormatter( + item?.price * 0.01, + item?.currency_code, + item?.currency + ); + + let image = `${imageServer}${localStorage.getItem("session_token")}/job/${item.job_uid}` + if(index >= 3) { + return + (
+ +
) + }else{ + null + } + })} + {getLowerBanner?.map((props, idx) => { let image = getImage(props); @@ -160,9 +186,16 @@ const NewOfferCard = ({ datas, hidden = false, price, setOfferPopout, image }) =
+ {/* */} +
{hidden &&
}
} @@ -172,9 +205,6 @@ const NewOfferCard = ({ datas, hidden = false, price, setOfferPopout, image }) =

{datas?.title}

- {/* - {desc} - */}
+
+
+
+
+ {datas.job_type == "MEDIA" ? + Loading...

}> + +
+ : +
+ {hidden &&
} +
+ } +
+ +
+
+

Expires

+

+ +

+
+ +
+ + ); +}; + const LowerBanner = ({ image, title = "", desc = "", btn, link_path, card_type, blog_id, key }) => { const newLinkPath = card_type == 'BLOG' ? `${link_path}?blog_id=${blog_id}` : link_path diff --git a/src/components/jobPopout/OfferJobPopout.jsx b/src/components/jobPopout/OfferJobPopout.jsx index e704723..4e3e375 100644 --- a/src/components/jobPopout/OfferJobPopout.jsx +++ b/src/components/jobPopout/OfferJobPopout.jsx @@ -78,6 +78,7 @@ function OfferJobPopout({ details, onClose, situation }) { setTimeout(() => { onClose(); dispatch(tableReload({ type: "MYTASKTABLE" })); + dispatch(tableReload({ type: "HOMEBANNERS" })); navigate("/mytask", { replace: true }); setRequestStatus({ loading: false, diff --git a/src/middleware/AuthRoute.jsx b/src/middleware/AuthRoute.jsx index 241535c..b373a1f 100644 --- a/src/middleware/AuthRoute.jsx +++ b/src/middleware/AuthRoute.jsx @@ -27,7 +27,7 @@ const AuthRoute = ({ redirectPath = "/login", children }) => { const [loadProfileDetails, setLoadProfileDetails] = useState([]); const navigate = useNavigate(); - const { jobListTable, marketTableList, walletTable, familyBannersListTable } = useSelector( + const { jobListTable, marketTableList, walletTable, familyBannersListTable, homeBanners } = useSelector( (state) => state.tableReload ); @@ -247,7 +247,7 @@ const AuthRoute = ({ redirectPath = "/login", children }) => { .catch((error) => { console.log("ERROR ", error); }); - }, [isLogin.status]); + }, [isLogin.status, homeBanners]); //FUNCTION TO GET COMMON HEAD DATA // useEffect(() => { diff --git a/src/store/TableReloads.js b/src/store/TableReloads.js index 34fad9f..30e55c2 100644 --- a/src/store/TableReloads.js +++ b/src/store/TableReloads.js @@ -14,6 +14,7 @@ const initialState = { familyOfferList: false, parentFamilyTaskList: false, offerInterestListReload: false, + homeBanners: false, }; export const tableReloadSlice = createSlice({ @@ -61,6 +62,9 @@ export const tableReloadSlice = createSlice({ case "OFFERINTERESTLISTRELOAD": // to reload offer interest list of owner when a worker sends interest in a job state.offerInterestListReload = !state.offerInterestListReload; return; + case "HOMEBANNERS": // to reload offer interest list of owner when a worker sends interest in a job + state.homeBanners = !state.homeBanners; + return; default: return state; } diff --git a/src/views/HomePages.jsx b/src/views/HomePages.jsx index e7da228..4942a73 100644 --- a/src/views/HomePages.jsx +++ b/src/views/HomePages.jsx @@ -1,15 +1,23 @@ +import {useState, useEffect} from 'react' import { useSelector } from "react-redux"; import Home from "../components/Home"; export default function HomePages() { const { commonHeadBanner } = useSelector((state) => state.commonHeadBanner); - const bannerOptions = { - bannerList: commonHeadBanner?.result_list, - dashTypes: commonHeadBanner?.home_dash_type, - offersList: commonHeadBanner?.offers_list, - imageServer: commonHeadBanner?.session_image_server - }; + const [bannerOptions, setBannerOptions] = useState({}) + + + + useEffect(()=>{ + const bannerOptions = { + bannerList: commonHeadBanner?.result_list, + dashTypes: commonHeadBanner?.home_dash_type, + offersList: commonHeadBanner?.offers_list, + imageServer: commonHeadBanner?.session_image_server + }; + setBannerOptions(bannerOptions) + },[commonHeadBanner]) return ( <>