diff --git a/src/actions/index.js b/src/actions/index.js index 87dc425..0d3b0c4 100644 --- a/src/actions/index.js +++ b/src/actions/index.js @@ -8,12 +8,13 @@ function urlFromEnv(ext) { } // TODO: relegate these URLs entirely to environment variables -const EVENT_DATA_URL = urlFromEnv('EVENT_EXT') -const CATEGORY_URL = urlFromEnv('CATEGORY_EXT') -const TAG_URL = urlFromEnv('TAGS_EXT') -const SOURCES_URL = urlFromEnv('SOURCES_EXT') -const SITES_URL = urlFromEnv('SITES_EXT') -const eventUrlMap = (event) => `${process.env.SERVER_ROOT}${process.env.EVENT_DESC_ROOT}/${(event.id) ? event.id : event}` +const EVENT_DATA_URL = urlFromEnv('EVENT_EXT'); +const CATEGORY_URL = urlFromEnv('CATEGORY_EXT'); +const TAG_URL = urlFromEnv('TAGS_EXT'); +const SOURCES_URL = urlFromEnv('SOURCES_EXT'); +const NARRATIVE_URL = urlFromEnv('NARRATIVE_EXT'); +const SITES_URL = urlFromEnv('SITES_EXT'); +const eventUrlMap = (event) => `${process.env.SERVER_ROOT}${process.env.EVENT_DESC_ROOT}/${(event.id) ? event.id : event}`; /* * Create an error notification object @@ -163,6 +164,14 @@ export function updateTagFilters(tag) { } } +export const UPDATE_NARRATIVE = 'UPDATE_NARRATIVE'; + export function updateNarrative(narrative) { + return { + type: UPDATE_NARRATIVE, + narrative + } + } + export const UPDATE_TIMERANGE = 'UPDATE_TIMERANGE'; export function updateTimeRange(timerange) { return { @@ -171,14 +180,6 @@ export function updateTimeRange(timerange) { } } -export const UPDATE_NARRATIVE = 'UPDATE_NARRATIVE'; -export function updateNarrative(narrative) { - return { - type: UPDATE_NARRATIVE, - narrative - } -} - export const RESET_ALLFILTERS = 'RESET_ALLFILTERS' export function resetAllFilters() { return { @@ -224,6 +225,14 @@ export function toggleInfoPopup() { } } +export const TOGGLE_MAPVIEW = 'TOGGLE_MAPVIEW'; + export function toggleMapView(layer) { + return { + type: TOGGLE_MAPVIEW, + layer + } + } + export const TOGGLE_NOTIFICATIONS = 'TOGGLE_NOTIFICATIONS' export function toggleNotifications() { return { @@ -247,11 +256,3 @@ export function fetchSourceError(msg) { msg } } - -export const TOGGLE_MAPVIEW = 'TOGGLE_MAPVIEW'; -export function toggleMapView(layer) { - return { - type: TOGGLE_MAPVIEW, - layer - } -} diff --git a/src/components/Dashboard.jsx b/src/components/Dashboard.jsx index adf734e..493d5e9 100644 --- a/src/components/Dashboard.jsx +++ b/src/components/Dashboard.jsx @@ -49,9 +49,8 @@ class Dashboard extends React.Component { handleSelect(selected) { if (selected) { let eventsToSelect = selected.map(event => this.getEventById(event.id)); - const p = this.props.ui.tools.parser; - - eventsToSelect = eventsToSelect.sort((a, b) => p(a.timestamp) - p(b.timestamp)) +console.log(eventsToSelect, selected) + eventsToSelect = eventsToSelect.sort((a, b) => parseDate(a.timestamp) - parseDate(b.timestamp)) this.props.actions.fetchSelected(eventsToSelect) } diff --git a/src/components/NarrativeCard.js b/src/components/NarrativeCard.js index bdc9862..1cc4730 100644 --- a/src/components/NarrativeCard.js +++ b/src/components/NarrativeCard.js @@ -26,7 +26,7 @@ class NarrativeCard extends React.Component { componentDidUpdate() { if (this.props.narrative !== null) { const step = this.props.narrative.steps[this.state.step]; - this.props.onSelect([step.id]); + this.props.onSelect([step]); } } @@ -42,7 +42,7 @@ class NarrativeCard extends React.Component { } render() { - if (this.props.narrative !== null) { + if (this.props.narrative !== null && this.props.narrative.steps[this.state.step]) { const steps = this.props.narrative.steps; const step = steps[this.state.step]; diff --git a/src/reducers/app.js b/src/reducers/app.js index c250582..c8f243b 100644 --- a/src/reducers/app.js +++ b/src/reducers/app.js @@ -12,7 +12,7 @@ import { TOGGLE_LANGUAGE, TOGGLE_MAPVIEW, TOGGLE_FETCHING_DOMAIN, - TOGGLE_FETCHING_EVENTS, + TOGGLE_FETCHING_SOURCES, TOGGLE_INFOPOPUP, TOGGLE_NOTIFICATIONS, FETCH_ERROR, @@ -132,10 +132,10 @@ function toggleFetchingDomain(appState, action) { }); } -function toggleFetchingEvents(appState, action) { +function toggleFetchingSources(appState, action) { return Object.assign({}, appState, { flags: Object.assign({}, appState.flags, { - isFetchingEvents: !appState.flags.isFetchingEvents + isFetchingSources: !appState.flags.isFetchingSources }) }); } @@ -180,8 +180,8 @@ function app(appState = initial.app, action) { return fetchError(appState, action); case TOGGLE_FETCHING_DOMAIN: return toggleFetchingDomain(appState, action); - case TOGGLE_FETCHING_EVENTS: - return toggleFetchingEvents(appState, action); + case TOGGLE_FETCHING_SOURCES: + return toggleFetchingSources(appState, action); case TOGGLE_INFOPOPUP: return toggleInfoPopup(appState, action); case TOGGLE_NOTIFICATIONS: diff --git a/src/store/initial.js b/src/store/initial.js index 1be1c04..a56685a 100644 --- a/src/store/initial.js +++ b/src/store/initial.js @@ -88,7 +88,7 @@ const initial = { }, flags: { isFetchingDomain: false, - isFetchingEvents: false, + isFetchingSources: false, isCardstack: true, isInfopopup: false,