Skip to content

Commit

Permalink
feat(names): Name all scenarios
Browse files Browse the repository at this point in the history
  • Loading branch information
trevorgerhardt committed Mar 10, 2017
1 parent 4edd274 commit 9cac9ba
Show file tree
Hide file tree
Showing 4 changed files with 31 additions and 19 deletions.
17 changes: 9 additions & 8 deletions src/actions/browsochrones.js
Original file line number Diff line number Diff line change
Expand Up @@ -33,10 +33,10 @@ export default function initialize ({
incrementFetches(),
setStartLabel(qs.start), // may not exist
setEndLabel(qs.end), // may not exist
...browsochrones.origins
.map((_, index) => qs.start
? setAccessibilityToLoadingFor(index)
: setAccessibilityToEmptyFor(index)),
...origins
.map((origin, index) => qs.start
? setAccessibilityToLoadingFor({index, name: origin.name})
: setAccessibilityToEmptyFor({index, name: origin.name})),
geocodeQs({geocoder, qs})
.then(([start, end]) => {
const actions = []
Expand Down Expand Up @@ -103,13 +103,14 @@ function loadAllOrigins ({
return Promise.all(origins.map((origin) => load(origin, grids)))
}

async function load (url, grids) {
async function load (origin, grids) {
const bs = new Browsochrones()
bs.originsUrl = url
bs.name = origin.name
bs.originsUrl = origin.url
bs.grids = grids.map((g) => g.name)
const fetches = [
fetch(`${url}/query.json`).then((res) => res.json()),
fetch(`${url}/stop_trees.dat`).then((res) => res.arrayBuffer())
fetch(`${origin.url}/query.json`).then((res) => res.json()),
fetch(`${origin.url}/stop_trees.dat`).then((res) => res.arrayBuffer())
]
const [query, stopTrees] = await Promise.all(fetches)
await bs.setQuery(query)
Expand Down
6 changes: 3 additions & 3 deletions src/actions/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -90,8 +90,8 @@ export function updateStart ({
addActionLogItem('Generating origins...'),
clearIsochrone(),
...browsochronesInstances
.map((_, index) =>
setAccessibilityToLoadingFor(index))
.map((instance, index) =>
setAccessibilityToLoadingFor({index, name: instance.name}))
]

// TODO: Remove this!
Expand Down Expand Up @@ -213,7 +213,7 @@ function generateAccessiblityFor ({browsochrones, index, latlng, timeCutoff}) {
storedAccessibility[key] = accessibility[grid]
}
return [
setAccessibilityFor({accessibility, index}),
setAccessibilityFor({accessibility, index, name: browsochrones.name}),
decrementWork()
]
})()
Expand Down
7 changes: 3 additions & 4 deletions src/components/application.js
Original file line number Diff line number Diff line change
Expand Up @@ -202,21 +202,20 @@ export default class Application extends Component {
selectedTimeCutoff={timeCutoff.selected}
/>
{destinations.accessibility
.filter((accessibility) => !!accessibility)
.map((accessibility, index) =>
<RouteCard
accessibility={accessibility}
accessibility={accessibility.accessibility}
active={browsochrones.active === index}
alternate={index !== 0}
key={`${index}-route-card`}
oldAccessibility={destinations.accessibility[0]}
oldAccessibility={destinations.accessibility[0].accessibility}
oldTravelTime={map.travelTimes[0]}
onClick={() => setActiveBrowsochronesInstance(index)}
transitiveData={map.transitives[index]}
travelTime={map.travelTimes[index]}
waitTime={map.waitTimes[index]}
>
{index !== 0 ? `${messages.Systems.BaseTitle} ${index}` : messages.Systems.ComparisonTitle}
{accessibility.name}
</RouteCard>
)}
{ui.showLog && actionLog && actionLog.length > 0 &&
Expand Down
20 changes: 16 additions & 4 deletions src/reducers/destinations.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,23 +8,32 @@ import {
export default handleActions({
'set accessibility for' (state, {payload}) {
const accessibility = [...state.accessibility]
accessibility[payload.index] = payload.accessibility
accessibility[payload.index] = {
accessibility: payload.accessibility,
name: payload.name
}
return {
...state,
accessibility
}
},
'set accessibility to empty for' (state, {payload}) {
const accessibility = [...state.accessibility]
accessibility[payload] = ACCESSIBILITY_IS_EMPTY
accessibility[payload.index] = {
accessibility: ACCESSIBILITY_IS_EMPTY,
name: payload.name
}
return {
...state,
accessibility
}
},
'set accessibility to loading for' (state, {payload}) {
const accessibility = [...state.accessibility]
accessibility[payload] = ACCESSIBILITY_IS_LOADING
accessibility[payload.index] = {
accessibility: ACCESSIBILITY_IS_LOADING,
name: payload.name
}
return {
...state,
accessibility
Expand All @@ -33,7 +42,10 @@ export default handleActions({
'clear start' (state, action) {
return {
...state,
accessibility: []
accessibility: state.accessibility.map((a) => ({
accessibility: ACCESSIBILITY_IS_EMPTY,
name: a.name
}))
}
}
}, {
Expand Down

0 comments on commit 9cac9ba

Please sign in to comment.