| @@ -1,18 +1,29 @@ | |||
| import React, { useEffect } from "react"; | |||
| import Navbar from "../../components/MUI/NavbarComponent"; | |||
| import { ItemDetailsPageContainer } from "./ItemDetailsPage.styled"; | |||
| import { useDispatch } from "react-redux"; | |||
| import { logoutUser } from "../../store/actions/login/loginActions"; | |||
| import Mockupdata from "../../components/Cards/FilterCard/Mockupdata"; | |||
| import qs from "query-string"; | |||
| import { useHistory } from "react-router-dom"; | |||
| import { setFilters } from "../../store/actions/filters/filtersActions"; | |||
| import { useDispatch,useSelector } from "react-redux"; | |||
| import ItemDetails from "../../components/ItemDetails/ItemDetails"; | |||
| import ItemDetailsLayout from "../../layouts/ItemDetailsLayout/ItemDetailsLayout"; | |||
| import UserReviewsCard from "../../components/UserReviewsCard/UserReviewsCard"; | |||
| import { fetchOneOffer } from "../../store/actions/offers/offersActions"; | |||
| import { selectOffer } from "../../store/selectors/offersSelectors"; | |||
| const ItemDetailsPage = () => { | |||
| const dispatch = useDispatch(); | |||
| const offer = useSelector(selectOffer); | |||
| useEffect(() => { | |||
| dispatch(fetchOneOffer()); | |||
| console.log(offer); | |||
| }, []) | |||
| //const routetMatch = useRouteMatch(); | |||
| const history = useHistory(); | |||
| @@ -47,12 +58,9 @@ const ItemDetailsPage = () => { | |||
| console.log("iz useeffect: ", { category, subcategory, cities }); | |||
| dispatch(setFilters({ category, subcategory, cities })); | |||
| }, [history.location.search]); | |||
| const handleCl = () => { | |||
| dispatch(logoutUser()); | |||
| }; | |||
| return ( | |||
| <ItemDetailsPageContainer> | |||
| <button onClick={handleCl}>Dugme</button> | |||
| <Navbar /> | |||
| {/* right card mora mi bude Review Card */} | |||
| <ItemDetailsLayout content={<ItemDetails />} rightCard={<UserReviewsCard />} /> | |||
| @@ -158,8 +158,8 @@ export default { | |||
| setFingerprint: '/affiliate/fingerprint', | |||
| }, | |||
| offers: { | |||
| getOffers: 'offers', | |||
| getOneOffer: 'offers/{id}', | |||
| addOffer: 'offers', | |||
| getOffers: '/offers', | |||
| getOneOffer: '/offers/{id}', | |||
| addOffer: '/offers', | |||
| } | |||
| }; | |||
| @@ -2,7 +2,7 @@ import axios from "axios"; | |||
| import queryString from "qs"; | |||
| const request = axios.create({ | |||
| baseURL: "http://192.168.88.175:3005/", | |||
| baseURL: "http://192.168.88.150:3001/", | |||
| headers: { | |||
| "Content-Type": "application/json", | |||
| }, | |||
| @@ -13,7 +13,7 @@ import { logoutUser, refreshUserToken } from "../actions/login/loginActions"; | |||
| // import { setUserAccessToken } from "../actions/user/userActions"; | |||
| //Change URL with .env | |||
| const baseURL = "http://192.168.88.175:3005/"; | |||
| const baseURL = "http://192.168.88.150:3001/"; | |||
| //Interceptor unique name | |||
| export const accessTokensMiddlewareInterceptorName = "ACCESS_TOKEN_INTERCEPTOR"; | |||
| @@ -70,7 +70,7 @@ function fetchOneOfferSuccess( state, action) { | |||
| offer: action.payload | |||
| } | |||
| } | |||
| function fetchOneOfferError (strate, action) { | |||
| function fetchOneOfferError (state, action) { | |||
| return { | |||
| ...state, | |||
| error: action.payload | |||
| @@ -1,5 +1,5 @@ | |||
| import { all, takeLatest, call, put } from "@redux-saga/core/effects"; | |||
| import { attemptAddOffer, attemptFetchOffers } from "../../request/offersRequest"; | |||
| import { attemptAddOffer, attemptFetchOffers, attemptFetchOneOffer } from "../../request/offersRequest"; | |||
| import { OFFERS_FETCH, OFFER_ADD, ONE_OFFER_FETCH } from "../actions/offers/offersActionConstants"; | |||
| import { setOffers } from "../actions/offers/offersActions"; | |||
| @@ -16,6 +16,7 @@ function* fetchOffers() { | |||
| function* fetchOneOffer() { | |||
| try { | |||
| const data = yield call(attemptFetchOneOffer) | |||
| console.log(data); | |||
| } catch (e) { | |||
| console.log(e); | |||
| } | |||