import React, { useState, useEffect } from "react"; import { connect } from "react-redux"; import { toast } from "react-toastify"; import { book, userProduct, publicApi, dialog } from "../../redux/actions"; import { Link, useNavigate } from "react-router-dom"; import proxy from "../../redux/proxy"; import location from "../../utils/location"; import separate from "../../utils/separate"; //components import Button from "../../components/Button"; import Header from "../../components/Header"; import Comment from "./Comment"; import Rate from "./Rate"; import DesktopProductLayout from "./Desktop"; import Loading from "../../components/Loading"; import ButtonBetween from "../../components/ButtonBetween"; //assets import arrow from "../../assets/icons/dropdown-blue.svg"; export const Product = ({ isMobile, productType, userProducts, getInfo, book, grades, isDark, userId, pushToCart, headerOptions, userProductLoading, setHeaderOptions, availableForSell, setDialog, }) => { const [whichTypeAdded, setWhichTypeAdded] = React.useState(null); const [desktopContentTransform, setDesktopContentTransform] = useState(false); const navigation = useNavigate(); const physicalAvailableForSell = React.useMemo(() => { return availableForSell?.find((product) => product === 2); }, [availableForSell]); const digitalAvailableForSell = React.useMemo(() => { return availableForSell?.find((product) => product === 1); }, [availableForSell]); const videoAvailableForSell = React.useMemo(() => { return availableForSell?.find((product) => product === 4); }, [availableForSell]); const physicalProduct = React.useMemo(() => { return book?.product?.find((product) => product?.productType === 2); }, [book]); const digitalProduct = React.useMemo(() => { return book?.product?.find((product) => product?.productType === 1); }, [book]); const videoProduct = React.useMemo(() => { return book?.product?.find((product) => product?.productType === 4); }, [book]); const physicalAvailabileInCart = React.useMemo(() => { return userProducts?.find( (product) => product?.productId === physicalProduct?.id && product?.condition < 2 ); }, [userProducts, book]); const digitalAvailabileInCart = React.useMemo(() => { return userProducts?.find( (product) => product?.productId === digitalProduct?.id && product?.condition < 2 ); }, [userProducts, book]); const videoAvailabileInCart = React.useMemo(() => { return userProducts?.find( (product) => product?.productId === videoProduct?.id && product?.condition < 2 ); }, [userProducts, book]); useEffect(() => { if(!isMobile){ setHeaderOptions(headerOptions); } getInfo({ id: location.getId(), vod: true }); if (!isMobile) { window.addEventListener("scroll", () => { if (window.scrollY >= 64) { setDesktopContentTransform(() => true); } else { setDesktopContentTransform(() => false); } }); } }, []); useEffect(() => { if (!userProductLoading) { setWhichTypeAdded(null); } }, [userProductLoading]); useEffect(() => { if (book && isMobile) { setHeaderOptions({ ...headerOptions, productId: book?.id }); window.scroll({ top: 0, behavior: "smooth" }); } }, [book]); return ( <> {/* Portrait */} {isMobile ? (
خالد حسینی تو رمان باد بادک باز مینویسه : ﻣﺮﺩ ﺁﻫﺴﺘﻪ ﺩﺭ ﮔﻮﺵ ﻓﺮﺯﻧﺪ ﺗﺎﺯﻩ ﺑﻪ ﺑﻠﻮﻍ ﺭﺳﯿﺪﻩ ﺍﺵ ﺑﺮﺍﯼ ﭘﻨﺪ ﭼﻨﯿﻦ ﻧﺠﻮﺍ ﮐﺮﺩ : ” ﭘﺴﺮﻡ ﺩﺭ ﺯﻧﺪﮔﯽ ﻫﺮﮔﺰ ﺩﺯﺩﯼ ﻧﮑﻦ ” ﭘﺴﺮ ﻣﺘﻌﺠﺐ ﻭ ﻣﺒﻬﻮﺕ ﺑﻪ ﭘﺪﺭ ﻧﮕﺎﻩ ﮐﺮﺩ ﺑﺪﯾﻦ ﻣﻌﻨﺎ ﮐﻪ ﺍﻭ ﻫﺮﮔﺰ ﺩﺳﺖ ﮐﺞ ﻧﺪﺍﺷﺘﻪ ﭘﺪﺭ ﺑﻪ ﻧﮕﺎﻩ ﻣﺘﻌﺠﺐ ﻓﺮﺯﻧﺪ ﻟﺒﺨﻨﺪﯼ ﺯﺩ ﻭ ﺍﺩﺍﻣﻪ ﺩﺍﺩ : ﺩﺭ ﺯﻧﺪﮔﯽ ﺩﺭﻭﻍ ﻧﮕﻮ ﭼﺮﺍ ﮐﻪ ﺍﮔﺮ ﮔﻔﺘﯽ ﺻﺪﺍﻗﺖ ﺭﺍ ﺩﺯﺩﯾﺪﻩ ﺍﯼ، ﺧﯿﺎﻧﺖ ﻧﮑﻦ ﮐﻪ ﺍﮔﺮ ﮐﺮﺩﯼ ﻋﺸﻖ ﺭﺍ ﺩﺯﺩﯾﺪﻩ ﺍﯼ، ﺧﺸﻮﻧﺖ ﻧﮑﻦ ﺍﮔﺮ ﮐﺮﺩﯼ ﻣﺤﺒﺖ ﺭﺍ ﺩﺯﺩﯾﺪﻩ ﺍﯼ، ﻧﺎ ﺣﻖ ﻧﮕﻮ ﺍﮔﺮ ﮔﻔﺘﯽ ﺣﻖ ﺭﺍ ﺩﺯﺩﯾﺪﻩ ﺍﯼ، ﺑﯽ ﺣﯿﺎﯾﯽ ﻧﮑﻦ ﺍﮔﺮ ﮐﺮﺩﯼ ﺷﺮﺍﻓﺖ ﺭﺍ ﺩﺯﺩﯾﺪﻩ ﺍی... ﭘﺲ ﺩﺭ ﺯﻧﺪﮔﯽ ﻓﻘﻂ ﺩﺯﺩﯼ نکن