web/components/Blog/BlogsData/page.jsx

286 lines
12 KiB
React
Raw Normal View History

2024-04-25 22:36:36 +03:30
"use client";
import Footer from "@comp/Footer/page";
import Navbar from "@comp/Navbar/page";
import { usePathname, useRouter, useSearchParams } from "next/navigation";
import PersianNumber from "plugins/PersianNumber";
import React from "react";
import Cart from "../BlogComponents/Cart";
import PaginationBlogs from "../BlogComponents/PaginationBlogs";
2024-12-03 20:17:05 +03:30
import Image from "next/image";
import Link from "next/link";
2024-04-25 22:36:36 +03:30
const BlogsData = ({ dataCaetgories, data }) => {
const pathname = usePathname();
const searchParams = useSearchParams();
const router = useRouter();
const searchParamsCurrentId = searchParams.get("blogCategoryId");
const handleGoCategories = (id) => {
// CTX.setIsChecked(!isChecked);
const params = new URLSearchParams(searchParams.toString());
params.set("blogCategoryId", id);
params.set("page", "0");
router.push(`${pathname}?${params}`);
};
2024-12-03 20:17:05 +03:30
const lates4Blog = data.blogs?.slice(0, 4);
2024-04-25 22:36:36 +03:30
return (
2024-12-03 20:17:05 +03:30
<div className="overflow-hidden">
2024-04-25 22:36:36 +03:30
<Navbar />
<div className="xs:px-3 md:px-5 md:container md:mx-auto mb-10">
2024-12-03 20:17:05 +03:30
<div className="grid grid-cols-1 lg:grid-cols-3 rtl ">
<div className="bg-red-200 xs:h-[205px] lg:h-[410px] col-span-2 rounded-2xl overflow-hidden relative mt-3">
<Link href={`/blogs/${lates4Blog[0]?.id}/${lates4Blog[0]?.slug}`}>
<div className="relative">
<div className=" absolute w-full z-20 top-0 p-5">
<h2 className="text-xl font-bold text-white ">
{lates4Blog[0]?.title}
</h2>
<p className="mb-0 text-right text-gray-300 text-[12px]">
{" "}
{lates4Blog[0]?.summery}
</p>
<div className="flex">
<div className="bg-primary-200 rounded-2xl p-1 px-4 mt-3">
<p className="mb-0 text-[10px] text-gray-200">
{lates4Blog[0]?.categoryName}
</p>
</div>
<div className="bg-primary-200 rounded-2xl p-1 px-4 mt-3 mx-2">
<p className="mb-0 text-[10px] text-gray-200">
{" "}
نوشته :
{lates4Blog[0]?.authorFullName || "ماهان قیصر زاده"}
</p>
</div>
</div>
</div>
</div>
<div>
<Image
src={`${process.env.NEXT_PUBLIC_STORAGE_URL}/Images/Med/${lates4Blog[0]?.mainImage}`}
width={800}
height={300}
className="w-full object-cover xs:h-[205px] lg:h-[410px] brightness-50"
/>
</div>
</Link>
</div>
<div className="mx-0 lg:mr-3">
<div className="bg-red-200 h-[200px] rounded-2xl overflow-hidden mt-3">
<Link href={`/blogs/${lates4Blog[1]?.id}/${lates4Blog[1]?.slug}`}>
<div className="relative">
<div className=" absolute w-full z-20 top-0 p-5">
<h2 className="text-xl font-bold text-white ">
{lates4Blog[1]?.title}
</h2>
<p className="mb-0 text-right text-gray-300 text-[12px]">
{" "}
{lates4Blog[1]?.summery}
</p>
<div className="flex">
<div className="bg-primary-200 rounded-2xl p-1 px-4 mt-3">
<p className="mb-0 text-[10px] text-gray-200">
{lates4Blog[1]?.categoryName}
</p>
</div>
<div className="bg-primary-200 rounded-2xl p-1 px-4 mt-3 mx-2">
<p className="mb-0 text-[10px] text-gray-200">
{" "}
نوشته :
{lates4Blog[1]?.authorFullName || "ماهان قیصر زاده"}
</p>
</div>
</div>
</div>
</div>
<div>
<Image
src={`${process.env.NEXT_PUBLIC_STORAGE_URL}/Images/Med/${lates4Blog[1]?.mainImage}`}
width={800}
height={300}
className="w-full object-cover h-[200px] brightness-50"
/>
</div>
</Link>
</div>
<div className="bg-red-200 h-[200px] col-span-2 rounded-2xl overflow-hidden mt-3">
<Link href={`/blogs/${lates4Blog[2]?.id}/${lates4Blog[2]?.slug}`}>
<div className="relative">
<div className=" absolute w-full z-20 top-0 p-5">
<h2 className="text-xl font-bold text-white ">
{lates4Blog[2]?.title}
</h2>
<p className="mb-0 text-right text-gray-300 text-[12px]">
{" "}
{lates4Blog[2]?.summery}
</p>
<div className="flex">
<div className="bg-primary-200 rounded-2xl p-1 px-4 mt-3">
<p className="mb-0 text-[10px] text-gray-200">
{lates4Blog[2]?.categoryName}
</p>
</div>
<div className="bg-primary-200 rounded-2xl p-1 px-4 mt-3 mx-2">
<p className="mb-0 text-[10px] text-gray-200">
{" "}
نوشته :
{lates4Blog[2]?.authorFullName || "ماهان قیصر زاده"}
</p>
</div>
</div>
</div>
</div>
<div>
<Image
src={`${process.env.NEXT_PUBLIC_STORAGE_URL}/Images/Med/${lates4Blog[2]?.mainImage}`}
width={800}
height={300}
className="w-full object-cover h-[200px] brightness-50"
/>
</div>
</Link>
</div>
</div>
</div>
<div className="bg-login !h-fit p-5 rounded-2xl mt-5">
<div className="grid xs:grid-cols-3 md:grid-cols-5 lg:grid-cols-7 gap-2 xl:grid-cols-12 rtl">
2024-12-04 01:35:37 +03:30
<Link href={`/brands/30be42fe-633b-4c43-886b-c946a68dddcc/فولیکا`}>
2024-12-03 20:17:05 +03:30
<div className="w-[100px] h-[100px] relative rounded-full border-8 border-white shadow-sm mx-2 hover:bg-white tr03 group ">
<p className="mb-0 font-bold text-center mt-7 text-white group-hover:text-black tr03 ">
2024-12-04 01:35:37 +03:30
فولیکا
2024-12-03 20:17:05 +03:30
</p>
</div>
</Link>
2024-12-04 01:35:37 +03:30
<Link href={`/brands/52caf76d-7e36-43ca-b068-2bf6994b0d0e/آردن`}>
2024-12-03 20:17:05 +03:30
<div className="w-[100px] h-[100px] rounded-full border-8 border-white shadow-sm mx-2 hover:bg-white tr03 group ">
<p className="mb-0 font-bold text-center mt-7 text-white group-hover:text-black tr03 ">
2024-12-04 01:35:37 +03:30
آردن
2024-12-03 20:17:05 +03:30
</p>
</div>
</Link>
2024-12-04 01:35:37 +03:30
<Link href={`/brands/48e6342c-c0a1-41a3-99ae-f240d90db1bd/گلدن-رز`}>
2024-12-03 20:17:05 +03:30
<div className="w-[100px] h-[100px] rounded-full border-8 border-white shadow-sm mx-2 hover:bg-white tr03 group ">
<p className="mb-0 font-bold text-center mt-7 text-white group-hover:text-black tr03 ">
2024-12-04 01:35:37 +03:30
گلدن رز
2024-12-03 20:17:05 +03:30
</p>
</div>
</Link>
2025-01-10 21:00:16 +03:30
<Link href={`/brands/d1e7fd6b-3f50-4a10-8854-63beb8c793dc/کدکس`}>
2024-12-03 20:17:05 +03:30
<div className="w-[100px] h-[100px] rounded-full border-8 border-white shadow-sm mx-2 hover:bg-white tr03 group ">
<p className="mb-0 font-bold text-center mt-7 text-white group-hover:text-black tr03 ">
2024-12-04 01:35:37 +03:30
کدکس
2024-12-03 20:17:05 +03:30
</p>
</div>
</Link>
2024-12-04 01:35:37 +03:30
<Link href={`/brands/93a2a376-5a18-49f3-b29c-a3c8ef2ff133/بیول`}>
2024-12-03 20:17:05 +03:30
<div className="w-[100px] h-[100px] rounded-full border-8 border-white shadow-sm mx-2 hover:bg-white tr03 group ">
<p className="mb-0 font-bold text-center mt-7 text-white group-hover:text-black tr03 ">
2024-12-04 01:35:37 +03:30
بیول
2024-12-03 20:17:05 +03:30
</p>
</div>
</Link>
2024-12-04 01:35:37 +03:30
<Link href={`/brands/9d26a7d0-0c0b-4269-bc78-5f5fbb951119/میبلین`}>
2024-12-03 20:17:05 +03:30
<div className="w-[100px] h-[100px] rounded-full border-8 border-white shadow-sm mx-2 hover:bg-white tr03 group ">
<p className="mb-0 font-bold text-center mt-7 text-white group-hover:text-black tr03 ">
2024-12-04 01:35:37 +03:30
میبلین
2024-12-03 20:17:05 +03:30
</p>
</div>
</Link>
2024-12-04 01:35:37 +03:30
<Link href={`/brands/4d0a9ed5-dfc9-45e2-8814-68d27f433b60/شون`}>
2024-12-03 20:17:05 +03:30
<div className="w-[100px] h-[100px] rounded-full border-8 border-white shadow-sm mx-2 hover:bg-white tr03 group ">
<p className="mb-0 font-bold text-center mt-7 text-white group-hover:text-black tr03 ">
2024-12-04 01:35:37 +03:30
شون
2024-12-03 20:17:05 +03:30
</p>
</div>
</Link>
2024-12-04 01:35:37 +03:30
<Link href={`/brands/e80181ef-d91d-4072-aff3-be2fbb00c0eb/مای`}>
2024-12-03 20:17:05 +03:30
<div className="w-[100px] h-[100px] rounded-full border-8 border-white shadow-sm mx-2 hover:bg-white tr03 group ">
<p className="mb-0 font-bold text-center mt-7 text-white group-hover:text-black tr03 ">
2024-12-04 01:35:37 +03:30
مای
2024-12-03 20:17:05 +03:30
</p>
</div>
</Link>
<Link
href={`/brands/777ce18d-511b-4f24-9d4f-ade05b86b125/اوردینری`}
>
<div className="w-[100px] h-[100px] rounded-full border-8 border-white shadow-sm mx-2 hover:bg-white tr03 group ">
<p className="mb-0 font-bold text-center mt-7 text-white group-hover:text-black tr03 ">
اوردینری
</p>
</div>
</Link>
<Link href={`/`} className="col-span-3">
<div className="px-5 h-[100px] rounded-full border-8 border-white shadow-sm mx-2 bg-white tr03 group ">
<p className="mb-0 font-bold text-center mt-7 text-black tr03 ">
مشاهده همه ی برند ها
</p>
</div>{" "}
</Link>
</div>
</div>
<div className="grid xs:grid-cold-1 md:grid-cols-2 lg:grid-cols-4 gap-7 ltr mt-10">
<div className="xs:col-span-1 md:col-span-2 lg:col-span-3">
<div className="grid xs:grid-cold-1 md:grid-cols-2 lg:grid-cols-3 gap-7 rtl ">
2024-04-25 22:36:36 +03:30
{data?.blogs?.map((e) => (
<Cart
categoryName={e.categoryName}
title={e.title}
mainImage={e.mainImage}
slug={e.slug}
id={e.id}
summery={e.summery}
/>
))}
</div>
<div className="mt-20">
<PaginationBlogs totalPage={data?.pager} />
</div>
</div>
2024-12-03 20:17:05 +03:30
<div className="bg-gray-100 rounded-2xl p-5 relative h-fit rtl xs:w-full md:col-span-2 lg:col-span-1">
2024-04-25 22:36:36 +03:30
<h3 className="text-center font-medium mb-5"> دسته بندی ها</h3>
<div>
{dataCaetgories?.map((e) => (
<div onClick={() => handleGoCategories(e.id)}>
<div className="flex p-2">
<div className="w-3 h-3 rounded-full bg-secondary-900 mt-1 ml-2"></div>
<p className="mb-0"> {e.name}</p>
<small className="text-sm mx-2 mt-[2px]">
(
<PersianNumber
number={e.blogCount}
style="text-primary-900 "
/>
)
</small>
</div>
</div>
))}
</div>
</div>
</div>
</div>
<Footer />
</div>
);
};
export default BlogsData;