Files
old-kivi/web/src/lib/api.js
2017-06-08 12:14:42 +02:00

75 lines
1.7 KiB
JavaScript

import fetch from 'isomorphic-fetch'
const BASE_URL = 'localhost';
//const BASE_URL = '192.168.0.13';
export const saveContactRequest = (listingId, params) => {
let url = `http://${BASE_URL}:3001/api/contact/${listingId}`
return fetch(url, {
method: 'POST',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
body: JSON.stringify(params)
});
}
export const loadListing = id => {
let url = `http://${BASE_URL}:3001/api/search/listings/${id}`
return fetch(
url,
{
//credentials: 'include'
}
)
}
export const loadProperties = (
{
bounds,
minPrice = '',
maxPrice = '',
minSize = '',
maxSize = '',
rooms = {},
category = {},
page = 1,
pins = false,
sort = ''
}
) => {
const allRooms = Object.keys(rooms).filter(v => rooms[v]).join(',')
const allCategories = Object.keys(category)
.filter(v => category[v])
.join(',')
// TODO: handle errors
//return fetch(process.env.API_URL + '/api/search', {
let url = `http://${BASE_URL}:3001/api/search/listings?bounds=${bounds}&minPrice=${minPrice}&maxPrice=${maxPrice}&rooms=${allRooms}&minSize=${minSize}&maxSize=${maxSize}&category=${allCategories}&page=${page}&pins=${pins}&sort=${sort}`
return fetch(
url,
{
//credentials: 'include'
}
)
}
export const markSeen = id => {
const seen = JSON.parse(window.localStorage.getItem('seen') || '[]')
seen.push(id)
window.localStorage.setItem('seen', JSON.stringify(seen))
}
export const loadSeen = id => {
const seen = JSON.parse(window.localStorage.getItem('seen') || '[]')
return seen
//return seen.findIndex(s => s === id) !== -1;
}