dspace-angular icon indicating copy to clipboard operation
dspace-angular copied to clipboard

7.x - Clear url parameters for entity search tabs

Open Atmire-Kristof opened this issue 2 years ago • 1 comments

References

  • Fixes #2729
  • Fixes #2739
  • PR for main: #2734

Description

Clears all url parameters when switching search tabs on entity pages to avoid using non-existent filters/sort/configurations/pages etc. on the new search tab. Clears url parameters and component properties when applying startsWith or value on browse-by pages, avoiding a conflict between the two described in #2739

Instructions for Reviewers

How to test entity pages:

  • Visit an entity item page containing more than one search tab, with one search tab containing a filter or sort option not available on the other tab
  • Select a value for that filter/sort option
  • Click the other tab
  • All parameters except the tab identifier should be cleared and search is still functional
  • Perform the same test, but one tab containing more pages of results than the other, selecting the last page and clicking the other tab, you should end up on the first page of the new search tab

How to test browse-by pages:

  • Visit a browse-by metadata page (e.g. subject)
  • Select a value
  • Search for a different value. It should clear the previous value and ONLY display the "startsWith" value you just entered, as well as any results matching it
  • Selecting a value after a search should also clear the "startsWith" parameter, in order for only the clicked value to be visible

Checklist

This checklist provides a reminder of what we are going to look for when reviewing your PR. You need not complete this checklist prior to creating your PR (draft PRs are always welcome). If you are unsure about an item in the checklist, don't hesitate to ask. We're here to help!

  • [x] My PR is small in size (e.g. less than 1,000 lines of code, not including comments & specs/tests), or I have provided reasons as to why that's not possible.
  • [x] My PR passes ESLint validation using yarn lint
  • [x] My PR doesn't introduce circular dependencies (verified via yarn check-circ-deps)
  • [x] My PR includes TypeDoc comments for all new (or modified) public methods and classes. It also includes TypeDoc for large or complex private methods.
  • [x] My PR passes all specs/tests and includes new/updated specs or tests based on the Code Testing Guide.
  • [x] If my PR includes new libraries/dependencies (in package.json), I've made sure their licenses align with the DSpace BSD License based on the Licensing of Contributions documentation.
  • [x] If my PR includes new features or configurations, I've provided basic technical documentation in the PR itself.
  • [x] If my PR fixes an issue ticket, I've linked them together.

Atmire-Kristof avatar Jan 10 '24 10:01 Atmire-Kristof

Applied an additional fix for #2739, since it's related to the same issue of clearing url parameters.

Atmire-Kristof avatar Jan 17 '24 16:01 Atmire-Kristof