Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 3ee7e1fb84 | |||
| 4186422e6a | |||
| a18b05a11e |
@@ -58,15 +58,15 @@ export default function MyJobTable({ className, ActiveJobList }) {
|
|||||||
<LoadingSpinner size="16" color="sky-blue" />
|
<LoadingSpinner size="16" color="sky-blue" />
|
||||||
</div>
|
</div>
|
||||||
) : (
|
) : (
|
||||||
<div className="relative w-full overflow-x-auto sm:rounded-lg">
|
<div className="relative w-full sm:rounded-lg">
|
||||||
<div className="overflow-y-auto h-auto w-full">
|
<div className="h-auto w-full">
|
||||||
{ActiveJobList?.data?.length > 0 ? (
|
{ActiveJobList?.data?.length > 0 ? (
|
||||||
currentTask?.map((task, idx) => (
|
currentTask?.map((task, idx) => (
|
||||||
<div
|
<div
|
||||||
className="bg-white dark:bg-dark-white border-b dark:border-[#5356fb29] w-full flex justify-between items-center hover:bg-gray-50"
|
className="bg-white dark:bg-dark-white border-b dark:border-[#5356fb29] w-full flex justify-between items-center hover:bg-gray-50"
|
||||||
key={idx}
|
key={idx}
|
||||||
>
|
>
|
||||||
<div className=" py-4">
|
<div className="py-4 max-w-[80%]">
|
||||||
<div className="flex space-x-2 items-center">
|
<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">
|
<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
|
<img
|
||||||
@@ -76,7 +76,7 @@ export default function MyJobTable({ className, ActiveJobList }) {
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div className="flex flex-col flex-[0.9]">
|
<div className="flex flex-col flex-[0.9]">
|
||||||
<h1 className="font-bold text-xl text-dark-gray dark:text-white whitespace-nowrap">
|
<h1 className="font-bold text-xl text-dark-gray dark:text-white">
|
||||||
{task?.title}
|
{task?.title}
|
||||||
</h1>
|
</h1>
|
||||||
<span className="text-base text-gray-600">
|
<span className="text-base text-gray-600">
|
||||||
@@ -112,7 +112,7 @@ export default function MyJobTable({ className, ActiveJobList }) {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="text-right py-4 px-2">
|
<div className="flex justify-center items-center py-4 px-2">
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import Icons from "../Helpers/Icons";
|
|||||||
import SliderCom from "../Helpers/SliderCom";
|
import SliderCom from "../Helpers/SliderCom";
|
||||||
|
|
||||||
import OfferJobPopout from '../jobPopout/OfferJobPopout'
|
import OfferJobPopout from '../jobPopout/OfferJobPopout'
|
||||||
|
import LoadingSpinner from "../Spinners/LoadingSpinner";
|
||||||
|
|
||||||
|
|
||||||
export default function MyOffersTable({ className, MyActiveOffersList}) {
|
export default function MyOffersTable({ className, MyActiveOffersList}) {
|
||||||
@@ -49,9 +50,9 @@ export default function MyOffersTable({ className, MyActiveOffersList}) {
|
|||||||
// }
|
// }
|
||||||
};
|
};
|
||||||
|
|
||||||
if ( !MyActiveOffersList || MyActiveOffersList?.result_list?.length == 0 ){
|
// if ( !MyActiveOffersList || MyActiveOffersList?.result_list?.length == 0 ){
|
||||||
return(''); // want blank or no appear when no items
|
// return(''); // want blank or no appear when no items
|
||||||
}
|
// }
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
@@ -112,37 +113,40 @@ export default function MyOffersTable({ className, MyActiveOffersList}) {
|
|||||||
</div>
|
</div>
|
||||||
<div className="slider-content">
|
<div className="slider-content">
|
||||||
<SliderCom settings={settings} selector={sellSlider}>
|
<SliderCom settings={settings} selector={sellSlider}>
|
||||||
|
{ MyActiveOffersList.loading ?
|
||||||
{MyActiveOffersList &&
|
<LoadingSpinner size={16} color='sky-blue' />
|
||||||
MyActiveOffersList?.result_list?.length > 0 &&
|
:
|
||||||
MyActiveOffersList.result_list.map((value, index) => (
|
MyActiveOffersList?.data?.length > 0 ?
|
||||||
|
MyActiveOffersList.data.map((value, index) => (
|
||||||
<div className="item" key={index}>
|
<div className="item" key={index}>
|
||||||
<div className="offer-slide-item" >
|
<div className="offer-slide-item flex flex-col justify-between items-center">
|
||||||
{/* title */}
|
{/* title */}
|
||||||
<div className="flex justify-center">
|
<div className="flex justify-center">
|
||||||
<p className="text-2xl text-dark-gray dark:text-white font-bold mb-2">
|
<p className="text-xl text-dark-gray dark:text-white font-bold mb-2">
|
||||||
{value.title}
|
{value.title}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
{/* username */}
|
{/* username */}
|
||||||
<div className="flex justify-center mb-1">
|
<div className="flex flex-col justify-center my-1">
|
||||||
<p className="text-xs text-thin-light-gray">
|
<p className="text-xs text-thin-light-gray">
|
||||||
{value.timeline_days} Days
|
{value.timeline_days} Days
|
||||||
</p>
|
</p>
|
||||||
</div>
|
<div className="my-2 flex space-x-1 items-center text-purple text-xs">
|
||||||
{/* items */}
|
|
||||||
<div className="flex justify-center">
|
|
||||||
<div className="flex space-x-1 items-center text-purple text-xs">
|
|
||||||
<span>{value.price*0.01} {value.currency}</span>
|
<span>{value.price*0.01} {value.currency}</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
{/* items */}
|
||||||
|
{/* <div className="flex justify-center">
|
||||||
|
<div className="flex space-x-1 items-center text-purple text-xs">
|
||||||
|
<span>{value.price*0.01} {value.currency}</span>
|
||||||
|
</div>
|
||||||
|
</div> */}
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
setOfferPopout({ show: true, data: value });
|
setOfferPopout({ show: true, data: value });
|
||||||
}}
|
}}
|
||||||
className="w-20 h-11 flex justify-center items-center btn-gradient text-base rounded-full text-white"
|
className="w-20 h-11 self-center btn-gradient text-base rounded-full text-white"
|
||||||
>
|
>
|
||||||
Start Task
|
Start Task
|
||||||
</button>
|
</button>
|
||||||
@@ -150,7 +154,25 @@ export default function MyOffersTable({ className, MyActiveOffersList}) {
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
))}
|
))
|
||||||
|
:
|
||||||
|
MyActiveOffersList.status ?
|
||||||
|
(
|
||||||
|
<div className="font-bold text-xl text-dark-gray dark:text-white whitespace-nowrap">
|
||||||
|
<div className="p-2">
|
||||||
|
No Tasks!
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)
|
||||||
|
:
|
||||||
|
(
|
||||||
|
<div className="font-bold text-xl text-dark-gray dark:text-white whitespace-nowrap">
|
||||||
|
<p className="p-2">
|
||||||
|
Error Occurred! Unable to display Tasks!
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ export default function MyTaskPage() {
|
|||||||
const {jobListTable} = useSelector((state) => state.tableReload)
|
const {jobListTable} = useSelector((state) => state.tableReload)
|
||||||
|
|
||||||
const [MyActiveJobList, setMyActiveJobList] = useState({loading: true, status:false, data:[]});
|
const [MyActiveJobList, setMyActiveJobList] = useState({loading: true, status:false, data:[]});
|
||||||
const [MyActiveOffersList, setMyActiveOffersList] = useState([]);
|
const [MyActiveOffersList, setMyActiveOffersList] = useState({loading: true, status:false, data:[]});
|
||||||
const api = new usersService();
|
const api = new usersService();
|
||||||
const commonHeadData =()=>{
|
const commonHeadData =()=>{
|
||||||
console.log("COMMON HEAD DATA ----------------=====---------------------");
|
console.log("COMMON HEAD DATA ----------------=====---------------------");
|
||||||
@@ -26,10 +26,12 @@ export default function MyTaskPage() {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
const getMyActiveOffersList = async () => {
|
const getMyActiveOffersList = async () => {
|
||||||
|
setMyActiveOffersList({loading: true, status:false, data:[]});
|
||||||
try {
|
try {
|
||||||
const res = await api.getOffersList();
|
const res = await api.getOffersList();
|
||||||
setMyActiveOffersList(res.data);
|
setMyActiveOffersList({loading: false, status:true, data:res.data.result_list});
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
|
setMyActiveOffersList({loading: false, status:false, data:[]});
|
||||||
console.log("Error getting offers");
|
console.log("Error getting offers");
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user