From e331b4ed3b58d169b2763bd8d8ad387fdebff378 Mon Sep 17 00:00:00 2001 From: Eemeli Kukkonen Date: Tue, 23 Sep 2025 14:25:26 +0300 Subject: [PATCH] KAAV-2313 encode search terms in url --- .../projectList/OwnProjectFilters.jsx | 17 ++++++++--------- src/sagas/projectSaga.js | 14 ++++++-------- 2 files changed, 14 insertions(+), 17 deletions(-) diff --git a/src/components/projectList/OwnProjectFilters.jsx b/src/components/projectList/OwnProjectFilters.jsx index ff4645f82..4eadafb2d 100644 --- a/src/components/projectList/OwnProjectFilters.jsx +++ b/src/components/projectList/OwnProjectFilters.jsx @@ -63,16 +63,15 @@ function OwnProjectFilters({ filters, ...props }) { //State need to be up to date if changing other filters, //pressing clear buton only removes value from hds input but does not change it otherwise //control is not reachable for buttons clear property - let val = filter - - if(val[0] !== "" && value === ""){ - val[0] = value - setFilter(val) - onSubmit(value) + const previousValue = filter[0]; + if (previousValue === value) { + return; } - else{ - val[0] = value - setFilter(val) + const newFilter = [...filter]; + newFilter[0] = value + setFilter(newFilter); + if (value === "") { + onSubmit(value) } } diff --git a/src/sagas/projectSaga.js b/src/sagas/projectSaga.js index b2037c715..75af6abd1 100644 --- a/src/sagas/projectSaga.js +++ b/src/sagas/projectSaga.js @@ -326,27 +326,25 @@ function* getProject({ payload: projectId }) { } function getQueryValues(page_size,page,searchQuery,sortField,sortDir,status){ - let query - - query = { + const query = { page: page + 1, ordering: sortDir === 1 ? sortField : '-'+sortField, status: status, page_size: page_size ? page_size : 10 - } + }; if (searchQuery.length > 0) { if(searchQuery[0] !== ""){ - query.search = searchQuery[0] + query.search = encodeURIComponent(searchQuery[0]); } if(searchQuery[1] !== ""){ - query.department = searchQuery[1] + query.department = encodeURIComponent(searchQuery[1]); } if(searchQuery[2].length > 0){ - query.includes_users = searchQuery[2] + query.includes_users = searchQuery[2].map(user => encodeURIComponent(user)); } } - return query + return query; } function* fetchOnholdProjects({ payload }) {