add toggleFetchingSources

This commit is contained in:
Lachlan Kermode
2018-12-04 16:48:17 +00:00
parent 577ae7421f
commit 1091e376f3
2 changed files with 85 additions and 64 deletions

View File

@@ -97,25 +97,41 @@ export function updateDomain(domain) {
}
}
export function fetchEvents (events) {
return dispatch => {
dispatch(toggleFetchingEvents())
const urls = events.map(eventUrlMap)
return Promise.all(
urls.map(url => fetch(url)
.then(response => response.json())
)
)
.then(json => {
dispatch(toggleFetchingEvents())
return json
})
}
}
// export function fetchEvents (events) {
// return dispatch => {
// dispatch(toggleFetchingEvents())
// const urls = events.map(eventUrlMap)
// return Promise.all(
// urls.map(url => fetch(url)
// .then(response => response.json())
// )
// )
// .then(json => {
// dispatch(toggleFetchingEvents())
// return json
// })
// }
// }
export function fetchSources(event) {
export function fetchSelected(selected) {
if (!selected || !selected.length || selected.length === 0) {
console.log('hitting base')
return updateSelected([])
}
return dispatch => {
console.log('TODO: fetch sources')
dispatch(updateSelected(selected))
dispatch(toggleFetchingSources())
// const urls = events.map(eventUrlMap)
// return Promise.all(
// urls.map(url => fetch(url)
// .then(response => response.json())
// )
// )
// .then(json => {
// dispatch(toggleFetchingEvents())
// return json
// })
// TODO: fetch sources
// Now fetch detail data for each event
// Add transmitter and receiver data for coevents
@@ -136,92 +152,99 @@ export function fetchSources(event) {
export const UPDATE_HIGHLIGHTED = 'UPDATE_HIGHLIGHTED'
export function updateHighlighted(highlighted) {
return {
type: UPDATE_HIGHLIGHTED,
highlighted: highlighted
}
return {
type: UPDATE_HIGHLIGHTED,
highlighted: highlighted
}
}
export const UPDATE_SELECTED = 'UPDATE_SELECTED'
export function updateSelected(selected) {
return {
type: UPDATE_SELECTED,
selected: selected
}
return {
type: UPDATE_SELECTED,
selected: selected
}
}
export const UPDATE_DISTRICT = 'UPDATE_DISTRICT'
export function updateDistrict(district) {
return {
type: UPDATE_DISTRICT,
district
}
return {
type: UPDATE_DISTRICT,
district
}
}
export const UPDATE_TAGFILTERS = 'UPDATE_TIMEFILTERS'
export function updateTagFilters(tag) {
return {
type: UPDATE_TAGFILTERS,
tag
}
return {
type: UPDATE_TAGFILTERS,
tag
}
}
export const UPDATE_TIMERANGE = 'UPDATE_TIMERANGE';
export function updateTimeRange(timerange) {
return {
type: UPDATE_TIMERANGE,
timerange
};
return {
type: UPDATE_TIMERANGE,
timerange
}
}
export const RESET_ALLFILTERS = 'RESET_ALLFILTERS'
export function resetAllFilters() {
return {
type: RESET_ALLFILTERS
}
return {
type: RESET_ALLFILTERS
}
}
// UI
export const TOGGLE_FETCHING_DOMAIN = 'TOGGLE_FETCHING_DOMAIN'
export function toggleFetchingDomain() {
return {
type: TOGGLE_FETCHING_DOMAIN
}
return {
type: TOGGLE_FETCHING_DOMAIN
}
}
export const TOGGLE_FETCHING_EVENTS = 'TOGGLE_FETCHING_EVENTS'
export function toggleFetchingEvents() {
return {
type: TOGGLE_FETCHING_EVENTS
}
export const TOGGLE_FETCHING_SOURCES = 'TOGGLE_FETCHING_SOURCES'
export function toggleFetchingSources() {
return {
type: TOGGLE_FETCHING_SOURCES
}
}
// export const TOGGLE_FETCHING_EVENTS = 'TOGGLE_FETCHING_EVENTS'
// export function toggleFetchingEvents() {
// return {
// type: TOGGLE_FETCHING_EVENTS
// }
// }
export const TOGGLE_LANGUAGE = 'TOGGLE_LANGUAGE';
export function toggleLanguage(language) {
return {
type: TOGGLE_LANGUAGE,
language,
}
return {
type: TOGGLE_LANGUAGE,
language,
}
}
export const CLOSE_TOOLBAR = 'CLOSE_TOOLBAR';
export function closeToolbar() {
return {
type: CLOSE_TOOLBAR
}
return {
type: CLOSE_TOOLBAR
}
}
export const TOGGLE_INFOPOPUP = 'TOGGLE_INFOPOPUP';
export function toggleInfoPopup() {
return {
type: TOGGLE_INFOPOPUP
}
return {
type: TOGGLE_INFOPOPUP
}
}
export const TOGGLE_NOTIFICATIONS = 'TOGGLE_NOTIFICATIONS'
export function toggleNotifications() {
return {
type: TOGGLE_NOTIFICATIONS
}
return {
type: TOGGLE_NOTIFICATIONS
}
}

View File

@@ -52,9 +52,7 @@ class Dashboard extends React.Component {
return parser(a.timestamp) - parser(b.timestamp);
});
this.props.actions.updateSelected(eventsToSelect)
} else {
this.props.actions.updateSelected([]);
this.props.actions.fetchSelected(eventsToSelect)
}
}