Add filter for revoked devices (#2372)

Co-authored-by: Raphael Michel <michel@rami.io>
This commit is contained in:
Martin Gross
2021-12-13 12:47:43 +01:00
committed by GitHub
parent 533939cae4
commit f69e270e4d
2 changed files with 18 additions and 1 deletions

View File

@@ -2018,6 +2018,15 @@ class DeviceFilterForm(FilterForm):
],
required=False,
)
state = forms.ChoiceField(
label=_('Device status'),
choices=[
('', _('All devices')),
('active', _('Active devices')),
('revoked', _('Revoked devices'))
],
required=False
)
def __init__(self, *args, **kwargs):
request = kwargs.pop('request')
@@ -2047,6 +2056,11 @@ class DeviceFilterForm(FilterForm):
if fdata.get('gate'):
qs = qs.filter(gate=fdata['gate'])
if fdata.get('state') == 'active':
qs = qs.filter(revoked=False)
elif fdata.get('state') == 'revoked':
qs = qs.filter(revoked=True)
if fdata.get('ordering'):
qs = qs.order_by(self.get_order_by())
else:

View File

@@ -30,7 +30,7 @@
</div>
<form class="panel-body filter-form" action="" method="get">
<div class="row">
<div class="col-md-6 col-sm-6 col-xs-12">
<div class="col-md-4 col-sm-6 col-xs-12">
{% bootstrap_field filter_form.query %}
</div>
<div class="col-md-3 col-sm-6 col-xs-12">
@@ -39,6 +39,9 @@
<div class="col-md-3 col-sm-6 col-xs-12">
{% bootstrap_field filter_form.software_brand %}
</div>
<div class="col-md-2 col-sm-6 col-xs-12">
{% bootstrap_field filter_form.state %}
</div>
</div>
<div class="text-right">
<button class="btn btn-primary btn-lg" type="submit">