aboutsummaryrefslogtreecommitdiff
path: root/asset-sources
diff options
context:
space:
mode:
Diffstat (limited to 'asset-sources')
-rw-r--r--asset-sources/fietsboek.ts25
1 files changed, 18 insertions, 7 deletions
diff --git a/asset-sources/fietsboek.ts b/asset-sources/fietsboek.ts
index c34e3d4..3682f5f 100644
--- a/asset-sources/fietsboek.ts
+++ b/asset-sources/fietsboek.ts
@@ -475,30 +475,38 @@ function toggleTrackFavourite(event: MouseEvent) {
addHandler(".favourite-star", "click", toggleTrackFavourite);
/**
- * Load and plot the user's summary.
+ * Returns an array of localized month names (Jan-Dec).
*/
-function loadProfileStats() {
- let monthNames: string[] = [];
- let date = new Date(2000, 0);
+function getLocalizedMonthNames(): string[] {
+ const monthNames: string[] = [];
+ const date = new Date(2000, 0);
for (let i = 0; i < 12; i++) {
monthNames.push(date.toLocaleString(LOCALE, {month: 'long'}));
date.setMonth(i + 1);
}
+ return monthNames;
+}
+
+/**
+ * Load and plot the user's summary.
+ */
+function loadProfileStats() {
+ const monthNames = getLocalizedMonthNames();
const url = new URL("/me/summary.json", window.location.href);
fetch(url)
.then(response => response.json())
.then((response: YearSummary) => {
- let datasets = [];
+ const datasets = [];
for (const [year, months] of Object.entries(response)) {
- let data = [];
+ const data = [];
for (let i = 1; i <= 12; ++i) {
data.push((i in months) ? (months[i] / 1000) : 0);
}
datasets.push({
data: data,
label: year,
- })
+ });
}
new Chart(
@@ -514,6 +522,9 @@ function loadProfileStats() {
});
}
+/* Used via in-page scripts, so make eslint happy */
+loadProfileStats;
+
document.addEventListener('DOMContentLoaded', function() {
window.fietsboekImageIndex = 0;