import { getStoredLocale } from "@/lib/getLocale";
import axios from "axios";

export async function getGlobalSettingsMap(): Promise<any> {
  const locale = getStoredLocale();
  const url = `${process.env.NEXT_PUBLIC_API_URL}/settings`;
  const headers: Record<string, string> = {
    "Content-Type": "application/json",
    "Accept-Language": locale,
  };
  try {
    const response = await axios.get(url, { headers });
    const data = response?.data?.data;
    const all = data?.all;
    const settings: Record<string, any> = {};
    all?.forEach((item: any) => {
      settings[item.key] = item;
    });
    return {
      success: true,
      message: "get global settings map success",
      data: settings,
    };
  } catch (error: any) {
    throw error;
  }
}
export async function getFooterData(): Promise<any> {
  const locale = getStoredLocale();
  const url = `${process.env.NEXT_PUBLIC_API_URL}/footer`;
  const headers: Record<string, string> = {
    "Content-Type": "application/json",
    "Accept-Language": locale,
  };
  try {
    const response = await axios.get(url, { headers });
    const data = response?.data?.data;
    return {
      success: true,
      message: "get global settings map success",
      data: data,
    };
  } catch (error: any) {
    throw error;
  }
}

export async function getSettingBySlug(slug: string): Promise<any> {
  const locale = getStoredLocale();
  const url = `${process.env.NEXT_PUBLIC_API_URL}/setting/${slug}`;
  const headers: Record<string, string> = {
    "Content-Type": "application/json",
    "Accept-Language": locale,
  };
  try {
    const response = await axios.get(url, { headers });
    const result = response?.data?.data;
    return {
      success: true,
      message: "get setting by slug success",
      data: result,
    };
    
  } catch (error: any) {
    throw error;
  }
}
