"use client";
import Footer from "@comp/Footer/page";
import Navbar from "@comp/Navbar/page";
import GalleryBox from "plugins/Gallery/page";
import { useEffect, useState } from "react";
import AddToCart from "@comp/Cards/Components/AddToCart/page";
import Image from "next/image";
import PersianNumber from "plugins/PersianNumber";
import logo from "../../../public/images/logo.png";
import moment from "jalali-moment";
import Chapar from "plugins/Chapar";
import { toast } from "react-toastify";
import { useRouter } from "next/navigation";
const ProductData = ({ params, data }) => {
console.log("data", data);
const [product, setProduct] = useState([]);
const [specificationsHeader, setSpecificationsHeader] = useState([]);
const [productBarDetail, setProductBarDetail] = useState(0);
const [comment, setComment] = useState("0");
const router = useRouter();
const fetchPost = async (id) => {
const res = await fetch(`${process.env.NEXT_PUBLIC_API_URL}/product/${id}`);
const post = await res.json();
setProduct(post.product);
};
const fetchReview = async (id) => {
const res = await fetch(
`${process.env.NEXT_PUBLIC_API_URL}/product/${id}/review?page=0`
);
const post = await res.json();
setProduct(post.product);
};
const displaySpecifications = (specs) => {
let data = [];
if (specs?.length > 3) {
specs?.slice(0, 3).forEach((spec) => {
const { title, value } = spec;
data.push(`${title}: ${value}`);
});
} else {
specs?.forEach((spec) => {
const { title, value } = spec;
data.push(`${title}: ${value}`);
});
}
setSpecificationsHeader(data); // You can replace
};
const scrollToSection = (id) => {
const element = document.getElementById(id);
if (element) {
const offset = -80; // Adjust this value as needed
window.scrollTo({
top: element.offsetTop + offset,
behavior: "smooth",
});
}
};
const createProductReview = async () => {
const body = { title: "", comment, rate: "", productId: params.id[0] };
try {
const data = await Chapar.post(
`${process.env.NEXT_PUBLIC_API_URL}/product/review`,
body
);
// fetchReview();
} catch ({ error, status }) {
toast.error(`${error?.response?.data?.message}`, {
position: "bottom-right",
closeOnClick: true,
});
}
};
const handleCreateReview = () => {
const token = localStorage.getItem("token");
if (token) {
createProductReview();
} else {
router.push("/login");
}
};
useEffect(() => {
fetchPost(params.id[0]);
fetchReview(params.id[0]);
}, []);
useEffect(() => {
displaySpecifications(product?.specifications);
}, [product]);
return (
<>
{data?.product?.englishName}{" "}
اصالت کالای
بمب امروز
{product?.warranty}
{e}
{data?.product?.persianName}{" "}
گارانتی{" "} اصالت{" "} و{" "} سلامت فیزیکی کالا
مشخصات محصول
مشخصات
نقد و بررسی
دیدگاه مخاطبان
مخاطبان
{e.title}: {" "} {e.value}{" "}
لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم از صنعت چاپ و با استفاده از طراحان گرافیک است
لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم از صنعت چاپ و با استفاده از طراحان گرافیک است چاپگرها و متون بلکه روزنامه و مجله در ستون و سطرآنچنان که لازم است و برای شرایط فعلی تکنولوژی مورد نیاز و کاربردهای متنوع با هدف بهبود ابزارهای کاربردی می باشد
لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم{" "}
لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم از صنعت چاپ و با استفاده از طراحان گرافیک است چاپگرها و متون بلکه روزنامه و مجله در ستون و سطرآنچنان که لازم است و برای شرایط فعلی تکنولوژی مورد نیاز و کاربردهای متنوع با هدف بهبود ابزارهای کاربردی می باشد کتابهای زیادی در شصت و سه درصد گذشته حال و آینده شناخت فراوان جامعه و متخصصان را می طلبد تا با نرم افزارها شناخت بیشتری را برای طراحان رایانه ای علی الخصوص طراحان خلاقی و فرهنگ پیشرو در زبان فارسی ایجاد کرد در این صورت می توان امید داشت که تمام و دشواری موجود در ارائه راهکارها و شرایط سخت تایپ به پایان رسد و زمان مورد نیاز شامل حروفچینی دستاوردهای اصلی
لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم از صنعت چاپ و با استفاده از طراحان گرافیک است چاپگرها و متون بلکه روزنامه و مجله در ستون و سطرآنچنان که لازم است و برای شرایط فعلی تکنولوژی مورد نیاز و کاربردهای متنوع با هدف بهبود ابزارهای کاربردی می باشد