Incorrect URL for paging in Event search
|Assignee:||Jan Mach||% Done:|
|Category:||Development - GUI|
For event searches using multiple choice dropdowns with multiple options selected, the URL for Next and Previous pages only contains the first selected option.How to reproduce:
- Set up query: SELECT * FROM events WHERE “category” && ARRAY['Abusive.Spam’, 'Information.UnauthorizedAccess’] ORDER BY “detecttime” DESC LIMIT 100;
- The URL for result page is: https://mentat-alt.cesnet.cz/mentat/events/search?dt_from=&dt_to=&source_addrs=&source_ports=&categories=Abusive.Spam&categories=Information.UnauthorizedAccess&description=&submit=Search
- The URL for Next page is: https://mentat-alt.cesnet.cz/mentat/events/search?page=2&submit=Search&categories=Abusive.Spam
- This is not correct, multiple categories params should be present, just like in 2.
- This was confirmed for all multichoice dropdowns, for each only the first selected option is included (it does not matter whether they are combined or isolated for the query).
As a consequence, results diplayed for Next/Previous pages do not match the original criteria.
Fix: Fixed the incorrectly rendered next and previous pager buttons in event search view.
Multivalue request arguments must be handled separately to get the list of all request argument values with the same name.
(Redmine issue: #4090)
Fix: Permanently resolved all existing issues with incorrect pager links in forms with multivalues.
Previous revision f3c669ae did not fully resolve the issue with incorrect pager links. It was necessary to implement generic mechanism for storing information about which fields can contain multiple values directly in the form object. I have used static class method to solve this issue. (Redmine issue: #4090)