Add auto-filter hyperlinks for batch row status breakdown

This commit is contained in:
Lance Edgar 2022-02-20 19:40:32 -06:00
parent 5b697cdf26
commit 4d404cb20b
6 changed files with 93 additions and 17 deletions

View file

@ -40,6 +40,13 @@
% endif
>
</a>
% elif grid.has_click_handler(column['field']):
<span>
<a href="#"
@click.prevent="${grid.click_handlers[column['field']]}"
v-html="props.row.${column['field']}">
</a>
</span>
% else:
<span v-html="props.row.${column['field']}"></span>
% endif

View file

@ -434,6 +434,41 @@
this.applyFilters()
},
// explicitly set filters for the grid, to the given set.
// this totally overrides whatever might be current. the
// new filter set should look like:
//
// [
// {key: 'status_code',
// verb: 'equal',
// value: 1},
// {key: 'description',
// verb: 'contains',
// value: 'whatever'},
// ]
//
setFilters(newFilters) {
for (let key in this.filters) {
let filter = this.filters[key]
let active = false
for (let newFilter of newFilters) {
if (newFilter.key == key) {
active = true
filter.active = true
filter.visible = true
filter.verb = newFilter.verb
filter.value = newFilter.value
break
}
}
if (!active) {
filter.active = false
filter.visible = false
}
}
this.applyFilters()
},
saveDefaults() {
// apply current filters as normal, but add special directive