Skip to content

Filtering Elements in Tables

matamorphosis edited this page Jan 30, 2022 · 7 revisions

General

Filtering is available on all common web pages in Scrummage to better extract data from the backend database. At most Scrummage only retrieves a maximum of 1000 results per table, and by default these are the 1000 most recent items from the table. This means that anything added over 1000 rows ago, will not be displayed by default. Filtering will extract the 1000 most recent items from the table with the filter applied. But with a specific-enough filter nothing goes missed.

Backend queries for all strings (not numbers nor booleans) supplied in the filter request, use the PostgreSQL LIKE operator. This means if you provide a substring, such as just the year for a timestamp, the database will return records with that year in the timestamp, compared to specifying a full timestamp, which only returns records at that exact time. This provides greater flexibility and a better user experience.

You can use the wildcard (*) to filter for columns that have a value. Most columns require a value so this for the most part doesn't provide that much help; however, columns like middlename and username in the identities database can be null, so this is when the wildcard comes in handy.

You will also note on all pages with tables that there is a box called "Quick Search". This provides you with the ability to quickly search through the loaded results; however, this is different to filtering as filtering controls the results that are loaded from the database.

All filters are accessible by low privileged users and administrator users alike, except for accounts, as low-privilege users lack the rights to view any details about other Scrummage accounts whatsoever.

Tasks

The following options are available to filter results:

Field Name Value Type
Task ID Integer
Query String
Plugin String
Description String
Frequency String
Task Limit String
Status String
Created At String
Updated At String

The following screenshot shows how this can be accessed on the /tasks endpoint: Filter

Results

The following options are available to filter results:

Field Name Value Type
Result ID Integer
Task ID Integer
Title String
Plugin String
Status String
Domain String
Link String
Created At String
Updated At String
Result Type String

Events

The following options are available to filter results:

Field Name Value Type
Event ID Integer
Description String
Created At String

Users/Accounts (Only available to administrative users within the Settings page)

The following options are available to filter results:

Field Name Value Type
User ID Integer
Username String
Blocked Boolean
Is Admin Boolean

Identities (Only available to administrative users)

The following options are available to filter results:

Field Name Value Type
Identity ID Integer
Firstname String
Middlename String
Surname String
Fullname String
Username String
Email String
Phone String

Clone this wiki locally