From e6282ddc79d05ee4bf72402cf3e4042bfbccac1e Mon Sep 17 00:00:00 2001 From: Tomasz Subik Date: Fri, 8 Nov 2024 17:44:09 +0100 Subject: [PATCH] decrease the amount of data loaded --- modules/documents-database.js | 2 +- modules/observations.js | 22 +++++++++------------- pages/observations.js | 16 ++-------------- pages/sitemap.xml.js | 2 +- 4 files changed, 13 insertions(+), 29 deletions(-) diff --git a/modules/documents-database.js b/modules/documents-database.js index 78abc78d..bd185c4b 100644 --- a/modules/documents-database.js +++ b/modules/documents-database.js @@ -154,7 +154,7 @@ export function getDocumentsDatabase(options = { reload: false }) { 'page[size]': pageSize, include: includes.join(','), 'fields[fmus]': 'name,forest-type', - 'fields[operator]': 'name', + 'fields[operators]': 'name', ...Object.keys(filters).reduce((acc, key) => { if (isEmpty(filters[key])) return acc; return { diff --git a/modules/observations.js b/modules/observations.js index 1001f064..21693401 100644 --- a/modules/observations.js +++ b/modules/observations.js @@ -34,18 +34,7 @@ const initialState = { }, cluster: {}, filters: { - data: { - observation_type: [], - country_id: [], - fmu_id: [], - years: [], - observer_id: [], - category_id: [], - subcategory_id: [], - severity_level: [], - validation_status: [], - hidden: [] - }, + data: {}, options: {}, loading: false, error: false @@ -132,7 +121,14 @@ export function getObservations() { 'page[size]': OBS_MAX_SIZE, include: includes.join(','), 'fields[fmus]': 'name', - 'fields[operator]': 'name', + 'fields[operators]': 'name,operator-type', + 'fields[severities]': 'details,level', + 'fields[subcategories]': 'name,category', + 'fields[categories]': 'name', + 'fields[countries]': 'iso,name', + 'fields[observers]': 'name,observer-type', + 'fields[observation-reports]': 'attachment,title,publication-date', + 'fields[observation-documents]': 'attachment,name', ...Object.keys(filters).reduce((acc, key) => { if (isEmpty(filters[key])) return acc; return { diff --git a/pages/observations.js b/pages/observations.js index deb26cce..0b34a2d4 100644 --- a/pages/observations.js +++ b/pages/observations.js @@ -83,8 +83,7 @@ class ObservationsPage extends React.Component { this.state = { tab: 'observations-list', - popup: null, - page: 1, + popup: null }; this.triggerChangeTab = this.triggerChangeTab.bind(this); @@ -127,17 +126,6 @@ class ObservationsPage extends React.Component { } } - getPageSize() { - const { observations } = this.props; - - if (observations.data && observations.data.length) { - // What if the page only have 5 results... - return observations.data.length > 50 ? 50 : observations.data.length; - } - - return 1; - } - onCustomAttribute = (e) => { e.preventDefault(); modal.toggleModal(true, { @@ -397,7 +385,7 @@ class ObservationsPage extends React.Component { columns: columnHeaders.filter((header) => observations.columns.includes(header.accessor) ), - pageSize: this.getPageSize(), + pageSize: 50, pagination: true, previousText: '<', nextText: '>', diff --git a/pages/sitemap.xml.js b/pages/sitemap.xml.js index 95b2679e..62ac865c 100644 --- a/pages/sitemap.xml.js +++ b/pages/sitemap.xml.js @@ -54,7 +54,7 @@ function generateSiteMap(operators, countries) { export async function getServerSideProps({ res }) { const { data: operators } = await API - .get('operators', { locale: 'en', 'page[size]': 3000, 'fields[operator]': 'slug' }) + .get('operators', { locale: 'en', 'page[size]': 3000, 'fields[operators]': 'slug' }) let countries = []; if (process.env.FEATURE_COUNTRY_PAGES) {