API & Client: display activities on calendar - #2

This commit is contained in:
Sam
2018-06-04 15:59:28 +02:00
parent ed2bf8898a
commit 747f0ad3f6
5 changed files with 62 additions and 19 deletions

View File

@ -130,7 +130,7 @@ export const getMoreActivities = page => dispatch => mpwoGenericApi
.catch(error => dispatch(setError(`activities: ${error}`)))
export const getMonthActivities = (start, end) => dispatch => mpwoGenericApi
.getData('activities', { start, end, order: 'asc' })
.getData('activities', { start, end, order: 'asc', per_page: 100 })
.then(ret => {
if (ret.status === 'success') {
if (ret.data.activities.length > 0) {

View File

@ -70,8 +70,11 @@ class Calendar extends React.Component {
filterActivities(day) {
const { activities } = this.props
return activities
.filter(act => dateFns.isSameDay(act.activity_date, day))
if (activities) {
return activities
.filter(act => dateFns.isSameDay(act.activity_date, day))
}
return []
}
renderCells() {

View File

@ -7,25 +7,19 @@ export default class MpwoApi {
let url = `${apiUrl}${target}`
if (data.id) {
url = `${url}/${data.id}`
} else if (data.page) {
url = `${url}?page=${data.page}`
}
if (data.start || data.end) {
url = `${url}${
data.page ? '' : '?'
} else if (Object.keys(data).length > 0) {
url = `${url}?${
data.page ? `&page=${data.page}` : ''
}${
data.start && `&from=${data.start}`
data.start ? `&from=${data.start}` : ''
}${
data.end ? `&to=${data.end}` : ''
}${
data.order ? `&order=${data.order}` : ''
}${
data.end && `&to=${data.end}`
data.per_page ? `$per_page=${data.per_page}` : ''
}`
}
if (data.order) {
url = `${url}${
(data.page || data.start || data.end) ? '' : '?'
}${
`&order=${data.order}`
}`
}
const params = {
url: url,
method: 'GET',