mirror of
https://github.com/nottinghamtec/PyRIGS.git
synced 2026-01-23 08:22:15 +00:00
Filter for active training items
Can't easily filter by supervisor, its not a database field, argh...
This commit is contained in:
@@ -78,6 +78,9 @@ class SecureAPIRequest(generic.View):
|
|||||||
fields = request.GET.get('fields', None)
|
fields = request.GET.get('fields', None)
|
||||||
if fields:
|
if fields:
|
||||||
fields = fields.split(",")
|
fields = fields.split(",")
|
||||||
|
filters = request.GET.get('filters', [])
|
||||||
|
if filters:
|
||||||
|
filters = filters.split(",")
|
||||||
|
|
||||||
# Supply data for one record
|
# Supply data for one record
|
||||||
if pk:
|
if pk:
|
||||||
@@ -98,6 +101,9 @@ class SecureAPIRequest(generic.View):
|
|||||||
for field in fields:
|
for field in fields:
|
||||||
q = Q(**{field + "__icontains": part})
|
q = Q(**{field + "__icontains": part})
|
||||||
qs.append(q)
|
qs.append(q)
|
||||||
|
for filter in filters:
|
||||||
|
q = Q(**{field: True})
|
||||||
|
qs.append(q)
|
||||||
queries.append(reduce(operator.or_, qs))
|
queries.append(reduce(operator.or_, qs))
|
||||||
|
|
||||||
# Build the data response list
|
# Build the data response list
|
||||||
|
|||||||
@@ -30,7 +30,7 @@
|
|||||||
{% render_field form.trainee|attr:'hidden' value=form.trainee.initial %}
|
{% render_field form.trainee|attr:'hidden' value=form.trainee.initial %}
|
||||||
<div class="form-group form-row">
|
<div class="form-group form-row">
|
||||||
<label for="item_id" class="col-sm-2 col-form-label">Item</label>
|
<label for="item_id" class="col-sm-2 col-form-label">Item</label>
|
||||||
<select name="item" id="item_id" class="form-control selectpicker custom-select col-sm-4" data-live-search="true" data-sourceurl="{% url 'api_secure' model='training_item' %}?fields=reference_number,name" required>
|
<select name="item" id="item_id" class="form-control selectpicker custom-select col-sm-4" data-live-search="true" data-sourceurl="{% url 'api_secure' model='training_item' %}?fields=reference_number,name&filters=active" required>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group form-row">
|
<div class="form-group form-row">
|
||||||
@@ -38,15 +38,9 @@
|
|||||||
{% render_field form.depth|add_class:'form-control custom-select col-sm-4' %}
|
{% render_field form.depth|add_class:'form-control custom-select col-sm-4' %}
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group form-row">
|
<div class="form-group form-row">
|
||||||
{% if external %}
|
|
||||||
<label for="supervisor" class="col-sm-2 col-form-label">Supervising Organisation</label>
|
|
||||||
<select name="supervisor" id="supervising_organisation_id" class="form-control selectpicker custom-select col-sm-10" data-live-search="true" data-sourceurl="{% url 'api_secure' model='organisation' %}" required>
|
|
||||||
</select>
|
|
||||||
{% else %}
|
|
||||||
<label for="supervisor" class="col-sm-2 col-form-label">Supervisor</label>
|
<label for="supervisor" class="col-sm-2 col-form-label">Supervisor</label>
|
||||||
<select name="supervisor" id="supervisor_id" class="form-control selectpicker custom-select col-sm-10" data-live-search="true" data-sourceurl="{% url 'api_secure' model='profile' %}?fields=first_name,last_name,initials" required>
|
<select name="supervisor" id="supervisor_id" class="form-control selectpicker custom-select col-sm-10" data-live-search="true" data-sourceurl="{% url 'api_secure' model='profile' %}?fields=first_name,last_name,initials" required>
|
||||||
</select>
|
</select>
|
||||||
{% endif %}
|
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group form-row">
|
<div class="form-group form-row">
|
||||||
<label for="date" class="col-sm-2 col-form-label">Training Date</label>
|
<label for="date" class="col-sm-2 col-form-label">Training Date</label>
|
||||||
|
|||||||
Reference in New Issue
Block a user