Uber Filter

As more developer documentation for concrete5.7 becomes available and time permits, I will be porting more of my addons. I have a lot of addons in the marketplace and it will take a while to update them all to 5.7.

Uber Filter adds highly configurable dynamic filtering to an associated Uber List. This creates a really slick in-page search and filter experience that responds as users select options, enter text and tick check boxes based on page, file and user properties and attributes.

You can see Uber Filter in action on the Search page of my support site, where Uber List is used to list pages and Uber Filter is then used to reduce the list according to various filter controls.

How it works

Uber Filter provides a suite of blocks that co-operate with Uber List to provide filter controls or widgets on the page and a range of related functionality. This all works within a page without any reloading. The filter data is loaded, the filter controls are enabled and from then on the filtering is all within the visitor s web browser.

You can place the filter widget blocks in any page area, laying out the widgets about the Uber List to work with your design.

Uber Filter comes with built in filter indexing for PagesUsers and Files. Filter indexing for form data including any CSV data can be added with Magic Data Forms and you can even develop your own filter sources through a plugin mechanism.

Want to provide a text search of the Uber List? Simply add a text filter widget to the page, choosing what data fields it should filter on. Want to filter by a tags attribute? Here you have a choice of select, mult-select and checkbox filter widgets. They all work in a similar way, you choose the data field, such as tags, to attach the filter to and the intelligence of Uber Filter does the rest.

A variation of the checkbox filter widget can be used to filter by multiple boolean columns, so you can quickly set up a single filter to work with a list of boolean attributes. Sometimes a straightforward match is not enough and you need to filter by looking at a range. Range filter blocks using checkboxes or select controls allow ranges to be specified and matched. A similar interface is provided by a sort control, to provide a dropdown select and sort of the filtered results.

Getting away from actual filtering, specialised widget blocks provide a URL for linking into the page with filters already selected, show a loading overlay and make filter settings sticky between visits. A Clear All filter widget block does just that, clears all the filters.

See the documentation and have a look at my support pages for some examples of what you can do.

See more addons by JohntheFish.

Uber Filter Boolean Columns
Treat a selection of columns as boolean values and filter them with a list of checkboxes.
Uber Filter Checkbox List
Match one or more checked values for dynamic filtering of an associated Uber List.
Uber Filter Checkbox Range
Match one or more checked ranges for dynamic filtering of an associated Uber List block. Handles numeric, sql-date or text ranges.
Uber Filter Clear All
Provide a link or button to clear all filters.
Uber Filter Connect Search
Place on a core search results page to transfer a search to Uber List / Uber Filter page.
Uber Filter External Connect
Create a link or button that connects to an Uber List / Uber Filter page with pre-set filter controls.
Uber Filter Linking Overlay
Provides a modal overlay for pages linking into an Uber List / Uber Filter page, to be shown immediately until the Uber Filter page loads.
Uber Filter Loading Overlay
Provides a modal overlay for the page while Uber Filter data is loading.
Uber Filter Query Parameters
Provide query parameters that can be used for linking to a specific Uber Filter
Uber Filter Require Fields/Columns
Select columns to be included in filter data.
Uber Filter Search to Text Connect
Place on any page to enter a text search and transfer the search to an Uber List / Uber Filter page.
Uber Filter Select Limit
Match a selected limit for dynamic filtering of an associated Uber List block. Handles maximum and minimum numeric, sql-date or text limits.
Uber Filter Select Match
Match a selected value for dynamic filtering of an associated Uber List.
Uber Filter Select Multi
Match one or more selected values for dynamic filtering of an associated Uber List.
Uber Filter Sort
Sort control for sorting an associated Uber List.
Uber Filter Sticky
Makes the filter values associated with an Uber List sticky.
Uber Filter Text
Text input filter control for dynamic filtering with an associated Uber List.

Dynamically filtering Uber List

You can see Uber Filter in action on the Search page of this site, where Uber List is used to list pages and Uber Filter is then used to reduce the list according to various filter controls.

A simple filtered list of pages

Uber filter is built as a series of blocks, each of which adds a filter widget to an associated  Uber List. Currently there are filter blocks for:

Filters use the concrete5 core search data for Pages, Files or Users. If you need to list or filter anything else, the filter data uses a similar plugin mechanism to many of my other addons, so with a little knowledge of how your data is stored with some SQL and php, you can interface Uber Filter to anything that you can list with Uber List.

The individual filter blocks are easy to set up. In the edit dialog you simply pick a property or attribute to filter on from a select or checkbox list.

Please see the Filter Widget Documentation for details of each of the Uber Filter blocks.

Last updated: over a year ago