Commit ccf9330d by Chetan

problem solve in excell

1 parent e1745b51
......@@ -308,15 +308,15 @@ const BlogsItem = ({blogs}) => {
<span className="image-container">
<Image layout="fill" alt="" className="image img-fluid" src={cleanImage(data?.attributes?.image?.data?.attributes)} />
</span>
<div className="top-rated">{data?.attributes?.categories}</div>
{/* <div className="top-rated">{data?.attributes?.categories}</div> */}
</div>
<div className="info">
<div className="read-row">
{/* <div className="read-row">
<span className="image-container">
<Image layout="fill" alt="" className="image img-fluid" src="/images/icons/clock.svg" />
</span>
<div className="">{data?.attributes?.read} Read</div>
</div>
</div> */}
<div className="title">{data?.attributes?.title}</div>
<div className="discription" dangerouslySetInnerHTML={{ __html: data?.attributes?.description }}></div>
<div className="read-more">
......
......@@ -18,144 +18,159 @@ import WishlistComponent from "./WIshlistComponent.js";
import ShareWidget from "./ShareWidget.js";
const DetailInfo = ({ activityById }) => {
const router = useRouter();
const dispatch = useDispatch();
useEffect(() => {
dispatch(getCurrentEndUser());
}, []);
const router = useRouter();
const dispatch = useDispatch();
useEffect(() => {
dispatch(getCurrentEndUser());
}, []);
const [session, setSession] = useState(null);
const [enqDate, setenqDate] = useState();
const [loading, setloading] = useState(false);
const [quantity, setquantity] = useState();
const [loginModal, setloginModal] = useState(false);
const [enquiryModal, setenquiryModal] = useState(false);
const [showshareWidget, setshowshareWidget] = useState(false);
const { loadedUser } = useSelector(state => state.loadedUser);
const { endUser } = useSelector(state => state.endUser);
useEffect(() => {
const fetchSession = async () => {
setSession(await getSession());
const [session, setSession] = useState(null);
const [enqDate, setenqDate] = useState();
const [loading, setloading] = useState(false);
const [quantity, setquantity] = useState();
const [loginModal, setloginModal] = useState(false);
const [enquiryModal, setenquiryModal] = useState(false);
const [showshareWidget, setshowshareWidget] = useState(false);
const { loadedUser } = useSelector(state => state.loadedUser);
const { endUser } = useSelector(state => state.endUser);
useEffect(() => {
const fetchSession = async () => {
setSession(await getSession());
};
fetchSession();
// dispatch(getLoggedInVendor());
}, []);
const [showInfo, setShowInfo] = useState(false);
const [isToggled, setIsToggled] = useState(false);
console.log("endUser", endUser);
const handleMouseEnter = () => {
setShowInfo(true);
};
fetchSession();
// dispatch(getLoggedInVendor());
}, []);
const [showInfo, setShowInfo] = useState(false);
const [isToggled, setIsToggled] = useState(false);
console.log("endUser", endUser);
const handleMouseEnter = () => {
setShowInfo(true);
};
const handleMouseLeave = () => {
setShowInfo(false);
};
const handleMouseLeave = () => {
setShowInfo(false);
};
return (
<Fragment>
<div className="row">
{activityById && (
<div className="col-12">
<div className="product-info">
<div className="hide-on-mobile">
<div className="top-row">
<div className="most-booked">Most Booked</div>
return (
<Fragment>
<div className="row">
{activityById && (
<div className="col-12">
<div className="product-info">
<div className="hide-on-mobile">
<div className="top-row">
<div className="most-booked">Most Booked</div>
<div className="wishlist-share">
{endUser && <WishlistComponent activityId={activityById.data.id} userId={endUser.id} />}
<a href="#" className="add-to-forwardt">
<span className="image-container">
<Image
onClick={() => {
setshowshareWidget(true);
}}
layout="fill"
alt=""
className="image img-fluid"
src="/images/icons/forward.svg"
/>
</span>
</a>
</div>
</div>
<motion.div variants={slideFromRight(0.4)} initial={"hidden"} whileInView={"show"} viewport={{ once: false, amount: 0.2 }}>
<div className="product-name">{activityById.data.attributes.name}</div>
</motion.div>
</div>
<div className="product-reviews">
<span className="rating">{activityById.data.attributes.rating}</span>
<span className="review">1,365 Reviews</span>
<span className="star">
<a href="">
<span className="image-container">
<Image layout="fill" alt="" className="image img-fluid" src="/images/icons/star.svg" />
</span>
</a>
<a href="">
<span className="image-container">
<Image layout="fill" alt="" className="image img-fluid" src="/images/icons/star.svg" />
</span>
</a>
<a href="">
<span className="image-container">
<Image layout="fill" alt="" className="image img-fluid" src="/images/icons/star.svg" />
</span>
</a>
<a href="">
<span className="image-container">
<Image layout="fill" alt="" className="image img-fluid" src="/images/icons/star.svg" />
</span>
</a>
<a href="">
<span className="image-container">
<Image layout="fill" alt="" className="image img-fluid" src="/images/icons/star.svg" />
</span>
</a>
</span>
</div>
<div className="mb-2">Per Person</div>
<div className="price">
${activityById.data.attributes.pricePerPerson} {activityById.data.attributes.offers && <span>{activityById.data.attributes.offers}% Off</span>}
</div>
<div className="mb-4">{activityById.data.attributes.description}</div>
<div className="location">Location & Address</div>
{/* <div className="mb-2">Chelsea </div> */}
<div className="">{activityById.data.attributes.address}</div>
<div className="btn-row">
<Button
disabled={loading}
onClick={() => {
if (!endUser) {
setloginModal(true);
} else {
setenquiryModal(true);
}
}}
variant="primary me-3"
>
{loading ? <Loader /> : "Enquire Now"}
</Button>
<Button
onClick={() => {
if (!endUser) {
setloginModal(true);
} else {
router.push("/gift-card");
}
}}
variant="secondary"
>
Gift Now
<span className="image-container btn-gift">
<Image layout="fill" className="image img-fluid" src="/images/icons/gift-card-icon.svg" />
</span>
</Button>
</div>
<div className="wishlist-share">
{endUser && <WishlistComponent activityId={activityById.data.id} userId={endUser.id} />}
<a href="#" className="add-to-forwardt">
<span className="image-container">
<Image
onClick={() => {
setshowshareWidget(true);
}}
layout="fill"
alt=""
className="image img-fluid"
src="/images/icons/forward.svg"
/>
</span>
</a>
</div>
</div>
<motion.div variants={slideFromRight(0.4)} initial={"hidden"} whileInView={"show"} viewport={{ once: false, amount: 0.2 }}>
<div className="product-name">{activityById.data.attributes.name}</div>
</motion.div>
</div>
<div className="product-reviews">
<span className="rating">{activityById.data.attributes.rating}</span>
<span className="review">1,365 Reviews</span>
<span className="star">
<a href="">
<span className="image-container">
<Image layout="fill" alt="" className="image img-fluid" src="/images/icons/star.svg" />
</span>
</a>
<a href="">
<span className="image-container">
<Image layout="fill" alt="" className="image img-fluid" src="/images/icons/star.svg" />
</span>
</a>
<a href="">
<span className="image-container">
<Image layout="fill" alt="" className="image img-fluid" src="/images/icons/star.svg" />
</span>
</a>
<a href="">
<span className="image-container">
<Image layout="fill" alt="" className="image img-fluid" src="/images/icons/star.svg" />
</span>
</a>
<a href="">
<span className="image-container">
<Image layout="fill" alt="" className="image img-fluid" src="/images/icons/star.svg" />
</span>
</a>
</span>
</div>
<div className="mb-2">Per Person</div>
<div className="price">
${activityById.data.attributes.pricePerPerson} {activityById.data.attributes.offers && <span>{activityById.data.attributes.offers}% Off</span>}
</div>
<div className="mb-4">{activityById.data.attributes.description}</div>
<div className="location">Location & Address</div>
{/* <div className="mb-2">Chelsea </div> */}
<div className="">{activityById.data.attributes.address}</div>
<div className="btn-row">
<Button
disabled={loading}
onClick={() => {
if (!endUser) {
setloginModal(true);
} else {
setenquiryModal(true);
}
}}
variant="primary me-3"
>
{loading ? <Loader /> : "Enquire Now"}
</Button>
<Button
onClick={() => {
if (!endUser) {
setloginModal(true);
} else {
router.push("/gift-card");
}
}}
variant="secondary"
>
Gift Now
<span className="image-container btn-gift">
<Image layout="fill" className="image img-fluid" src="/images/icons/gift-card-icon.svg" />
</span>
</Button>
</div>
<div>
<Button
disabled={loading}
// onClick={() => {
// if (!endUser) {
// setloginModal(true);
// } else {
// setenquiryModal(true);
// }
// }}
variant="primary me-3"
>
Book Now
</Button>
</div>
</div>
</div>
)}
</div>
</div>
)}
</div>
{/* {activityById && (
{/* {activityById && (
<div className="row hide-on-desktop">
<div className="col-12">
<ul className="availability-wrappper">
......@@ -205,94 +220,94 @@ const DetailInfo = ({ activityById }) => {
</div>
</div>
)} */}
<Modal
centered
show={showshareWidget}
onHide={() => {
setshowshareWidget(false);
}}
>
<Modal.Header closeButton>Share on social media</Modal.Header>
<Modal.Body>
<ShareWidget />
</Modal.Body>
</Modal>
{activityById && (
<Modal
show={enquiryModal}
onHide={() => {
setenquiryModal(false);
setquantity();
}}
>
<Modal.Header>Send Enquiry</Modal.Header>
<Modal.Body>
<div>Experience Name:</div>
<div className="" style={{ fontSize: "22px", fontWeight: "bold" }}>
{activityById.data.attributes.name}
</div>
<div className="mt-2">Full Name:</div>
<div className="" style={{ fontWeight: "bold" }}>
{endUser?.attributes.name}
</div>
<div className="mt-2">Email ID:</div>
<div className="" style={{ fontSize: "22px", fontWeight: "bold" }}>
{endUser?.attributes.email}
</div>
<div className="mt-2">Quantity:</div>
<Input
type="number"
onChange={e => {
// console.log("e", e);
setquantity(e.target.value);
}}
></Input>
<Button
disabled={loading || !quantity}
className="mt-2"
onClick={async () => {
setloading(true);
console.log("hello");
let res = await sendEnquiry({ activityId: activityById.data.id, userId: endUser.id, vendorId: activityById.data.attributes.vendor.data.id, quantity });
console.log("res", res);
toast.success("Enquiry sent successfully, our team will get back to you shortly! Thank you!");
setloading(false);
setenquiryModal(false);
setquantity();
}}
<Modal
centered
show={showshareWidget}
onHide={() => {
setshowshareWidget(false);
}}
>
{loading ? <Loader /> : "Submit"}
</Button>
</Modal.Body>
</Modal>
)}
<Modal
show={loginModal}
centered
onHide={() => {
setloginModal(false);
}}
>
<Modal.Header closeButton>Please Log in</Modal.Header>
<Modal.Body>
<div className="text-center d-flex justify-content-center row">
<div className="col-12 m-2">Please login to avail this feature.</div>
<Button
className="col-6 m-2"
onClick={() => {
router.push("/login/user");
}}
<Modal.Header closeButton>Share on social media</Modal.Header>
<Modal.Body>
<ShareWidget />
</Modal.Body>
</Modal>
{activityById && (
<Modal
show={enquiryModal}
onHide={() => {
setenquiryModal(false);
setquantity();
}}
>
<Modal.Header>Send Enquiry</Modal.Header>
<Modal.Body>
<div>Experience Name:</div>
<div className="" style={{ fontSize: "22px", fontWeight: "bold" }}>
{activityById.data.attributes.name}
</div>
<div className="mt-2">Full Name:</div>
<div className="" style={{ fontWeight: "bold" }}>
{endUser?.attributes.name}
</div>
<div className="mt-2">Email ID:</div>
<div className="" style={{ fontSize: "22px", fontWeight: "bold" }}>
{endUser?.attributes.email}
</div>
<div className="mt-2">Quantity:</div>
<Input
type="number"
onChange={e => {
// console.log("e", e);
setquantity(e.target.value);
}}
></Input>
<Button
disabled={loading || !quantity}
className="mt-2"
onClick={async () => {
setloading(true);
console.log("hello");
let res = await sendEnquiry({ activityId: activityById.data.id, userId: endUser.id, vendorId: activityById.data.attributes.vendor.data.id, quantity });
console.log("res", res);
toast.success("Enquiry sent successfully, our team will get back to you shortly! Thank you!");
setloading(false);
setenquiryModal(false);
setquantity();
}}
>
{loading ? <Loader /> : "Submit"}
</Button>
</Modal.Body>
</Modal>
)}
<Modal
show={loginModal}
centered
onHide={() => {
setloginModal(false);
}}
>
Login
</Button>
<Link className="m-2" href={"/signup/user"}>
Or click here to sign up.
</Link>
</div>
</Modal.Body>
</Modal>
</Fragment>
);
<Modal.Header closeButton>Please Log in</Modal.Header>
<Modal.Body>
<div className="text-center d-flex justify-content-center row">
<div className="col-12 m-2">Please login to avail this feature.</div>
<Button
className="col-6 m-2"
onClick={() => {
router.push("/login/user");
}}
>
Login
</Button>
<Link className="m-2" href={"/signup/user"}>
Or click here to sign up.
</Link>
</div>
</Modal.Body>
</Modal>
</Fragment>
);
};
export default DetailInfo;
......@@ -120,7 +120,7 @@ const LetDiscover = ({ categories }) => {
}}
>
<span className="image-container">
<Image layout="fill" alt="" className="image img-fluid" src={"/images/discover/01.png"} />
<Image layout="fill" alt="" className="image img-fluid" src={"/images/discover/01.webp"} />
</span>
<div className="title">{"All"}</div>
</a>
......
......@@ -82,10 +82,13 @@ const ListingItems = ({ allActivitiesData, loading, gridClass, totalCount }) =>
</div>
</div>
<div className="discription">
{data.discription} <a href="">Read More</a>
{data.discription}
{/* <a href="">Read More</a> */}
</div>
<div className="price">
${data?.attributes?.pricePerPerson} <span className="off">{data?.attributes?.off}% OFF</span>
${data?.attributes?.pricePerPerson} <span className="off">{data?.attributes?.off}
{/* % OFF */}
</span>
</div>
<div className="detail">
<div className="">For 1 Night</div>
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!