From 712a9b057ff5aacb0b62e1fc2b3394619b4dd865 Mon Sep 17 00:00:00 2001 From: Jonathan Boiser Date: Wed, 2 Dec 2020 13:59:39 -0800 Subject: [PATCH 1/4] =?UTF-8?q?Update=20=E2=80=98page=5Fsize=E2=80=99=20qu?= =?UTF-8?q?ery=20param=20when=20=E2=80=98pagination=E2=80=99=20prop=20is?= =?UTF-8?q?=20updated?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Also, remove redundant ‘rowsPerPage’ from the query params. Fixes #2362 --- .../contentcuration/frontend/administration/mixins.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/contentcuration/contentcuration/frontend/administration/mixins.js b/contentcuration/contentcuration/frontend/administration/mixins.js index 333794dbce..d23da7d8c7 100644 --- a/contentcuration/contentcuration/frontend/administration/mixins.js +++ b/contentcuration/contentcuration/frontend/administration/mixins.js @@ -3,6 +3,7 @@ import difference from 'lodash/difference'; import findKey from 'lodash/findKey'; import intersection from 'lodash/intersection'; import transform from 'lodash/transform'; +import omit from 'lodash/omit'; function _getBooleanVal(value) { return typeof value === 'string' ? value === 'true' : value; @@ -135,7 +136,8 @@ export const tableMixin = { ...this.$route, query: { ...this.$route.query, - ...pagination, + page_size: pagination.rowsPerPage, + ...omit(pagination, ['rowsPerPage']), }, }) .catch(error => { From 13a661cfb04347690cdbb32f43d9939bb817abcc Mon Sep 17 00:00:00 2001 From: Jonathan Boiser Date: Wed, 2 Dec 2020 14:32:04 -0800 Subject: [PATCH 2/4] =?UTF-8?q?Remove=20=E2=80=98totalItems=E2=80=99=20fro?= =?UTF-8?q?m=20query=20params,=20since=20it=20doesn=E2=80=99t=20look=20use?= =?UTF-8?q?d?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../contentcuration/frontend/administration/mixins.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contentcuration/contentcuration/frontend/administration/mixins.js b/contentcuration/contentcuration/frontend/administration/mixins.js index d23da7d8c7..1973a50349 100644 --- a/contentcuration/contentcuration/frontend/administration/mixins.js +++ b/contentcuration/contentcuration/frontend/administration/mixins.js @@ -137,7 +137,7 @@ export const tableMixin = { query: { ...this.$route.query, page_size: pagination.rowsPerPage, - ...omit(pagination, ['rowsPerPage']), + ...omit(pagination, ['rowsPerPage', 'totalItems']), }, }) .catch(error => { From d7850173350494a0a383b56e1d4e2134ab7b586d Mon Sep 17 00:00:00 2001 From: Jonathan Boiser Date: Wed, 2 Dec 2020 14:45:44 -0800 Subject: [PATCH 3/4] =?UTF-8?q?Remove=20unused=20ordering=20param=20and=20?= =?UTF-8?q?null=20=E2=80=98sortBy=E2=80=99=20and=20=E2=80=98descending?= =?UTF-8?q?=E2=80=99=20params?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../frontend/administration/mixins.js | 21 ++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/contentcuration/contentcuration/frontend/administration/mixins.js b/contentcuration/contentcuration/frontend/administration/mixins.js index 1973a50349..474895de6b 100644 --- a/contentcuration/contentcuration/frontend/administration/mixins.js +++ b/contentcuration/contentcuration/frontend/administration/mixins.js @@ -4,6 +4,7 @@ import findKey from 'lodash/findKey'; import intersection from 'lodash/intersection'; import transform from 'lodash/transform'; import omit from 'lodash/omit'; +import pickBy from 'lodash/pickBy'; function _getBooleanVal(value) { return typeof value === 'string' ? value === 'true' : value; @@ -131,14 +132,24 @@ export const tableMixin = { return params; }, set(pagination) { + // Removes null pagination parameters from the URL + const newQuery = pickBy( + { + ...this.$route.query, + page_size: pagination.rowsPerPage, + ...omit(pagination, ['rowsPerPage', 'totalItems']), + }, + value => { + return value !== null; + } + ); + + // TODO prevent 'ordering' from being set since it's not used + delete newQuery.ordering; this.$router .replace({ ...this.$route, - query: { - ...this.$route.query, - page_size: pagination.rowsPerPage, - ...omit(pagination, ['rowsPerPage', 'totalItems']), - }, + query: newQuery, }) .catch(error => { if (error && error.name != 'NavigationDuplicated') { From 7c55c99569302789f25e1bdb078e2bab0840cdd1 Mon Sep 17 00:00:00 2001 From: Jonathan Boiser Date: Tue, 8 Dec 2020 09:27:36 -0800 Subject: [PATCH 4/4] Remove line deleting `newQuery.ordering` --- .../contentcuration/frontend/administration/mixins.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/contentcuration/contentcuration/frontend/administration/mixins.js b/contentcuration/contentcuration/frontend/administration/mixins.js index 474895de6b..c977f33929 100644 --- a/contentcuration/contentcuration/frontend/administration/mixins.js +++ b/contentcuration/contentcuration/frontend/administration/mixins.js @@ -144,8 +144,6 @@ export const tableMixin = { } ); - // TODO prevent 'ordering' from being set since it's not used - delete newQuery.ordering; this.$router .replace({ ...this.$route,