Semi-persistent local filtering on table/view data through URL parameters
Is your feature request related to a problem? Please describe.
Don't create for all possible contexts different view. Thats also limited by thinking about sharing and dynamical adding needed views.
Describe the solution you'd like
Define a filter setup for views that can access filter data from the url and add it dynamically to the views filter.
Example: Assume you have a list of assets maybe a software inventory. Now you want to know everything about one engine, so you would like to filter for that engine ID given by the url.
Filter setup for that view could look like: Filters: -> state = active // show only active assets -> engineID begins-with urlValue(engine)
url could look like: domain.tld/index.php/apps/tables/api/1/views/rows?engine=ABCDEF
This would also add a selection option next to the search input in the web ui. It will offer all possible values for this filter, preselected with the url given value.
Describe alternatives you've considered
No response
Additional context
No response
As a first step we should make sure that:
- Local filters are applied and read from URL parameters
- A user can copy the URL and when opening it the currently selected local filters are applied
In a second step we can think about storing them more permantently, but the above would already be a huge improvement.
A good example of how this can work is github projects, consider this example flow (parameter structure can be rethought):
- Have a view open that has a server side filtered list of rows
- A user searches for some text "test"
- The local browser filter is adjusted in the URL (e.g.
?search=test)
- The local browser filter is adjusted in the URL (e.g.
- A user filters a column title (column id 11) to contain "word"
- The local browser filter is adjusted in the URL (e.g.
?search=test&filter[]=11:contains:word)
- The local browser filter is adjusted in the URL (e.g.
- A user add sorting for the priority column (column id 12)
- The local browser sorting is adjusted in the URL (e.g.
?search=test&filter[]=title:contains:word&sort=12:asc)
- The local browser sorting is adjusted in the URL (e.g.
@enjeck I think this would be a nice task to take some time learning more about vue-router
Nothing urgent but you could line that one up to read up a bit on it already and look into on the side.