From 969df198d55f4eaa50f925c9c394c30b83952560 Mon Sep 17 00:00:00 2001 From: Mehak Nasir Date: Fri, 7 Oct 2022 15:52:32 +0500 Subject: [PATCH] fix: text search rewrite text added --- src/components/SearchInfo.jsx | 21 ++++++++++++------- src/discussions/posts/PostsView.jsx | 2 ++ src/discussions/posts/data/slices.js | 2 ++ src/discussions/posts/data/thunks.js | 2 +- .../posts/post-actions-bar/messages.js | 5 +++++ 5 files changed, 24 insertions(+), 8 deletions(-) diff --git a/src/components/SearchInfo.jsx b/src/components/SearchInfo.jsx index fc766cbd..3fd628b8 100644 --- a/src/components/SearchInfo.jsx +++ b/src/components/SearchInfo.jsx @@ -14,18 +14,23 @@ function SearchInfo({ text, loadingStatus, onClear, + textSearchRewrite, }) { return (
- -
@@ -37,11 +42,13 @@ SearchInfo.propTypes = { count: PropTypes.number.isRequired, text: PropTypes.string.isRequired, loadingStatus: PropTypes.string.isRequired, + textSearchRewrite: PropTypes.string, onClear: PropTypes.func, }; SearchInfo.defaultProps = { onClear: () => {}, + textSearchRewrite: null, }; export default injectIntl(SearchInfo); diff --git a/src/discussions/posts/PostsView.jsx b/src/discussions/posts/PostsView.jsx index 9f4ce117..4ac0c2fc 100644 --- a/src/discussions/posts/PostsView.jsx +++ b/src/discussions/posts/PostsView.jsx @@ -46,6 +46,7 @@ function PostsView() { const dispatch = useDispatch(); const searchString = useSelector(({ threads }) => threads.filters.search); const resultsFound = useSelector(({ threads }) => threads.totalThreads); + const textSearchRewrite = useSelector(({ threads }) => threads.textSearchRewrite); const loadingStatus = useSelector(({ threads }) => threads.status); let postsListComponent; @@ -80,6 +81,7 @@ function PostsView() { text={searchString} loadingStatus={loadingStatus} onClear={() => dispatch(setSearchQuery(''))} + textSearchRewrite={textSearchRewrite} /> )} diff --git a/src/discussions/posts/data/slices.js b/src/discussions/posts/data/slices.js index 291213bc..ba61f128 100644 --- a/src/discussions/posts/data/slices.js +++ b/src/discussions/posts/data/slices.js @@ -40,6 +40,7 @@ const threadsSlice = createSlice({ nextPage: null, totalPages: null, totalThreads: null, + textSearchRewrite: null, postStatus: RequestStatus.SUCCESSFUL, filters: { status: PostsStatusFilter.ALL, @@ -80,6 +81,7 @@ const threadsSlice = createSlice({ state.nextPage = (payload.page < payload.pagination.numPages) ? payload.page + 1 : null; state.totalPages = payload.pagination.numPages; state.totalThreads = payload.pagination.count; + state.textSearchRewrite = payload.textSearchRewrite; }, fetchThreadsFailed: (state) => { state.status = RequestStatus.FAILED; diff --git a/src/discussions/posts/data/thunks.js b/src/discussions/posts/data/thunks.js index bfb45363..9599d3c6 100644 --- a/src/discussions/posts/data/thunks.js +++ b/src/discussions/posts/data/thunks.js @@ -138,7 +138,7 @@ export function fetchThreads(courseId, { const data = await getThreads(courseId, options); const normalisedData = normaliseThreads(camelCaseObject(data), topicIds); dispatch(fetchThreadsSuccess({ - ...normalisedData, page, author, + ...normalisedData, page, author, textSearchRewrite: data.text_search_rewrite, })); } catch (error) { if (getHttpErrorStatus(error) === 403) { diff --git a/src/discussions/posts/post-actions-bar/messages.js b/src/discussions/posts/post-actions-bar/messages.js index b97d321e..325c808a 100644 --- a/src/discussions/posts/post-actions-bar/messages.js +++ b/src/discussions/posts/post-actions-bar/messages.js @@ -26,6 +26,11 @@ const messages = defineMessages({ defaultMessage: 'Showing {count} results for "{text}"', description: 'Message displayed when user performs a search', }, + searchRewriteInfo: { + id: 'discussions.actionBar.searchRewriteInfo', + defaultMessage: 'No results found for "{searchString}". Showing {count} results for "{textSearchRewrite}".', + description: 'Message displayed when user performs a search and search query is rewritten because matching results are not found', + }, searchInfoSearching: { id: 'discussions.actionBar.searchInfoSearching', defaultMessage: 'Searching...',