Skip to content
Snippets Groups Projects
Verified Commit a00cb0b5 authored by Owen Graham's avatar Owen Graham
Browse files

Change "name" keyword to "station" on frontend

parent 86f7d9c2
Branches
No related tags found
No related merge requests found
......@@ -8,8 +8,8 @@ const fetchedYears = {};
*/
function getYears(n) {
clearYears(n);
const name = selectVal(suffixID('name', n));
fetchYears(name, years => {
const station = selectVal(suffixID('station', n));
fetchYears(station, years => {
appendYears(years, n);
});
}
......@@ -20,8 +20,8 @@ function getYears(n) {
function boxplotGetYears() {
clearYears(1);
clearYears(2);
const name = selectVal('name');
fetchYears(name, years => {
const station = selectVal('station');
fetchYears(station, years => {
appendYears(years, 1);
appendYears(years, 2);
});
......@@ -54,14 +54,14 @@ function clearYears(n) {
/**
* Call `callback(years)` after fetching years for the given station.
*/
function fetchYears(name, callback) {
if (fetchedYears.hasOwnProperty(name)) {
callback(fetchedYears[name]);
function fetchYears(station, callback) {
if (fetchedYears.hasOwnProperty(station)) {
callback(fetchedYears[station]);
} else {
fetch(`${$SCRIPT_ROOT}/record/years${paramString({name})}`)
fetch(`${$SCRIPT_ROOT}/record/years${paramString({station})}`)
.then(response => response.json())
.then(years => {
fetchedYears[name] = years;
fetchedYears[station] = years;
callback(years);
});
}
......@@ -69,36 +69,36 @@ function fetchYears(name, callback) {
function indexVisualize() {
const params = {
name: selectVal('name'),
station: selectVal('station'),
year: selectVal('year'),
measurement: selectVal('measurement'),
};
if (!allParams(params)) {
return;
}
setSources(sourceLink(params.name, params.year));
setSources(sourceLink(params.station, params.year));
visualize(`${$SCRIPT_ROOT}/plot`, params);
}
function overlayVisualize() {
const params = {
name1: selectVal('name-1'),
station1: selectVal('station-1'),
year1: selectVal('year-1'),
name2: selectVal('name-2'),
station2: selectVal('station-2'),
year2: selectVal('year-2'),
measurement: selectVal('measurement'),
};
if (!allParams(params)) {
return;
}
setSources(sourceLink(params.name1, params.year1, 1),
sourceLink(params.name2, params.year2, 2));
setSources(sourceLink(params.station1, params.year1, 1),
sourceLink(params.station2, params.year2, 2));
visualize(`${$SCRIPT_ROOT}/plot/overlay`, params);
}
function boxplotVisualize() {
const params = {
name: selectVal('name'),
station: selectVal('station'),
year1: selectVal('year-1'),
year2: selectVal('year-2'),
measurement: selectVal('measurement'),
......@@ -106,7 +106,7 @@ function boxplotVisualize() {
if (!allParams(params)) {
return;
}
setSources(sourceLink(params.name, params.year1));
setSources(sourceLink(params.station, params.year1));
// XXX No year 2?
visualize(`${$SCRIPT_ROOT}/plot/boxplot`, params);
}
......@@ -126,13 +126,13 @@ function visualize(path, params) {
/**
* Generate a source link element.
*/
function sourceLink(name, year, n) {
function sourceLink(station, year, n) {
const div = document.createElement('div');
const a = document.createElement('a');
a.text = `${suffixTitle('Source', n)}: AMRDC Data Repository`;
a.title = 'AMRDC Data Repository';
div.appendChild(a);
fetch(`${$SCRIPT_ROOT}/record/link${paramString({name, year})}`)
fetch(`${$SCRIPT_ROOT}/record/link${paramString({station, year})}`)
.then(response => response.json())
.then(response => {
a.href = response;
......
......@@ -6,7 +6,7 @@
<div id="controls">
<div>
<select id="name" onchange="boxplotGetYears()">
<select id="station" onchange="boxplotGetYears()">
<option value="">Select Station</option>
{% include 'station-options.html' %}
</select>
......
......@@ -6,7 +6,7 @@
<div id="controls">
<div>
<select id="name" onchange="getYears()">
<select id="station" onchange="getYears()">
<option value="">Select Station</option>
{% include 'station-options.html' %}
</select>
......
......@@ -6,7 +6,7 @@
<div id="controls">
<div>
<select id="name-1" onchange="getYears(1)">
<select id="station-1" onchange="getYears(1)">
<option value="">Select Station #1</option>
{% include 'station-options.html' %}
</select>
......@@ -39,7 +39,7 @@
<br>
<div>
<select id="name-2" onchange="getYears(2)">
<select id="station-2" onchange="getYears(2)">
<option value="">Select Station #2</option>
{% include 'station-options.html' %}
</select>
......
......@@ -115,14 +115,14 @@ def get_records():
@app.route('/record/years')
def get_record_years():
"""Return a JSON list of years for the selected station."""
station = get_station_record(get_query('name'))
station = get_station_record(get_query('station'))
years = [i['year'] for i in station['records']]
return jsonify(years)
@app.route('/plot/boxplot')
def plot_boxplot():
station_id = get_query('name')
station_id = get_query('station')
year1 = get_query('year1', to=year_type)
year2 = get_query('year2', to=year_type)
meas = get_query('measurement', to=meas_type)
......@@ -171,7 +171,7 @@ def plot_boxplot():
@app.route('/plot')
def plot():
station_id = get_query('name')
station_id = get_query('station')
year = get_query('year', to=year_type)
meas = get_query('measurement', to=meas_type)
station = get_station_record(station_id)
......@@ -207,7 +207,7 @@ def plot_overlay():
datasets = tuple(SimpleNamespace() for _ in range(num_datasets))
stations = get_records()
for n, dset in enumerate(datasets, start=1):
dset.station_id = get_query(f'name{n}')
dset.station_id = get_query(f'station{n}')
dset.year = get_query(f'year{n}', to=year_type)
dset.station = get_station_record(dset.station_id, stations=stations)
dset.name = dset.station['name']
......@@ -309,7 +309,7 @@ def get_link(station, year):
@app.route('/record/link')
def get_record_link():
station = get_station_record(get_query('name'))
station = get_station_record(get_query('station'))
year = get_query('year', to=year_type)
return jsonify(get_link(station, year))
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment