homeContentAction.js 1.02 KB
import axios from "axios";
import { FETCH_HOME_CONTENT_SUCCESS, FETCH_HOME_CONTENT_FAIL, CLEAR_ERRORS } from "../constants/homeContentConstants";
import qs from "qs";

// Get room details
export const getHomeContent = () => async dispatch => {
  try {
    const config = {
      headers: {
        "Content-Type": "application/json"
      }
    };
    const query = qs.stringify(
      {
        populate: ["image1", "image2", "image3"]
      },
      {
        encodeValuesOnly: true // prettify URL
      }
    );

    const response = await axios.get(`${process.env.NEXT_PUBLIC_BACKEND_API_URL}/api/home-content?${query}`, config);

    dispatch({
      type: FETCH_HOME_CONTENT_SUCCESS,
      payload: response.data
    });
  } catch (error) {
    console.log("getHomeContent:");
    console.log(error.response.data);

    dispatch({
      type: FETCH_HOME_CONTENT_FAIL,
      payload: error.response.data
    });
  }
};

// Clear errors
export const clearErrors = () => async dispatch => {
  dispatch({
    type: CLEAR_ERRORS
  });
};