import React, { useEffect } from "react";
import styles from "@/styles/common/small.module.css";
import MyOrder from "@/components/home/MyOrder";
import { RxCross2 } from "react-icons/rx";
import { FaSlidersH } from "react-icons/fa";
import { IoMdArrowDropdown } from "react-icons/io";
import { useState } from "react";
import { useDispatch, useSelector } from "react-redux";
import { RootState } from "@/Redux/store";
import { setOrders } from "@/Redux/productFiltersSlice";
import Cookies from "js-cookie";
import axios from "axios";
import Head from "next/head";
import Image from "next/image";

export default function MyOrders() {
  const dispatch = useDispatch();

  const orders = useSelector((state: RootState) => state.productFilter.orders);

  // console.log("REDUX", orders);

  const authToken = Cookies.get("jazz_token");

  const axiosInstance = axios.create({
    baseURL: "https://api.jazzagain.com/public/index.php",
    headers: {
      authorization: `Bearer ${authToken}`,
    },
  });

  useEffect(() => {
    fetchAllOrders();
  }, []);

  const fetchAllOrders = () => {
    axiosInstance
      .get(`/api/user/orders`)
      .then((response) => {
        dispatch(setOrders(response.data.orders.data));
      })
      .catch((error) => {
        console.error("Error fetching data :", error);
      });
  };

  return (
    <>
      <Head>
        <link rel="shortcut icon" href="/images/jazzagian-logo.png" />
        <script
          dangerouslySetInnerHTML={{
            __html: `
              !function(f,b,e,v,n,t,s)
              {if(f.fbq)return;n=f.fbq=function(){n.callMethod?
              n.callMethod.apply(n,arguments):n.queue.push(arguments)};
              if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
              n.queue=[];t=b.createElement(e);t.async=!0;
              t.src=v;s=b.getElementsByTagName(e)[0];
              s.parentNode.insertBefore(t,s)}(window, document,'script',
              'https://connect.facebook.net/en_US/fbevents.js');
              fbq('init', '360254480441103');
              fbq('track', 'MyOrder');
            `,
          }}
        />
        <noscript>
          <Image
            height="1"
            width="1"
            alt="facebook link"
            style={{ display: "none" }}
            src="https://www.facebook.com/tr?id=360254480441103&ev=MyOrder&noscript=1"
          />
        </noscript>
      </Head>

      <div className="w-auto sm:w-[85%] mx-auto">
        <div className="flex items-center justify-between flex-col lg:flex-row">
          <div className="flex space-x-8 pt-6 sm:py-[1rem] lg:py-[2rem]">
            <h2 className="text-3xl text-gray-800">My Orders</h2>
          </div>
        </div>
        <div
          className={"grid text-xl py-[0.2rem] sm:py-[2rem] mb-[1.5rem] rounded-lg mx-auto bg-white ".concat(
            styles.shadowsmooth
          )}
        >
          <div className="px-[1rem]">
            {orders.length >= 1 ? (
              <MyOrder />
            ) : (
              <p className="text-center">No Order Found !</p>
            )}
          </div>
        </div>
      </div>
    </>
  );
}
