diff --git a/observations/forms.py b/observations/forms.py
new file mode 100644
index 0000000000000000000000000000000000000000..2b8c8a02315043c06437c2a1f26019b954d8f7ae
--- /dev/null
+++ b/observations/forms.py
@@ -0,0 +1,5 @@
+from django import forms
+
+class ObservationTimeFilterForm(forms.Form):
+ timeOfObservationFrom = forms.DateField(required=False)
+ timeOfObservationTo = forms.DateField(required=False)
\ No newline at end of file
diff --git a/observations/templates/observations/index.html b/observations/templates/observations/index.html
index 81ac2e2f00d2002fe187570927aa224cd3b4dc69..8ed4fb67d7336c046785317fb4daadecba07fbff 100755
--- a/observations/templates/observations/index.html
+++ b/observations/templates/observations/index.html
@@ -44,7 +44,17 @@
</div>
</div>
<div class="col-xs-6">
- </div>
+ <form class="form-inline" method="get" action="/observations">
+ <div class="form-group">
+ <input class="form-control" type="date" name="{{form.timeOfObservationFrom.html_name}}" value="{{form.timeOfObservationFrom.value | default_if_none:""}}" placeholder="{% trans "From" %}"/>
+ </div>
+ -
+ <div class="form-group">
+ <input class="form-control" type="date" name="{{form.timeOfObservationTo.html_name}}" value="{{form.timeOfObservationTo.value | default_if_none:""}}" placeholder="{% trans "To" %}"/>
+ </div>
+ <button type="submit" class="btn btn-primary">{% trans "Date search" %}</button>
+ </form>
+ </div>
</div>
<table class="table">
<thead>
@@ -80,7 +90,11 @@
};
$(document).ready(function() {
$(".chosen-select").chosen({placeholder_text_multiple:"{% trans "Crops" %}"});
- $.getJSON("/vipslogicproxy/rest/observation/broadcast/list/" + settings.vipsOrganizationId, function( json ) {
+ {% if form.timeOfObservationFrom.value or form.timeOfObservationTo.value %}
+ $.getJSON("/vipslogicproxy/rest/observation/broadcast/list/" + settings.vipsOrganizationId+ "?timeOfObservationFrom={{form.timeOfObservationFrom.value | default_if_none:""}}&timeOfObservationTo={{form.timeOfObservationTo.value | default_if_none:""}}", function( json ) {
+ {% else %}
+ $.getJSON("/vipslogicproxy/rest/observation/broadcast/list/" + settings.vipsOrganizationId+ "?season=" + getCurrentYear(), function( json ) {
+ {% endif %}
allObservations = json;
allObservations.sort(sortObservationMessages).reverse();
for(var i in allObservations)
diff --git a/observations/views.py b/observations/views.py
index 091827f5333ecc2ca7431283c24d7e1fe52f3e62..86da364bd4d4eaa6b53336f2924bfec69a21de44 100755
--- a/observations/views.py
+++ b/observations/views.py
@@ -19,16 +19,21 @@
from django.shortcuts import render
from django.utils import translation
+from observations.forms import ObservationTimeFilterForm
from organisms.models import CropCategory
def index(request):
+ form = ObservationTimeFilterForm(request.GET)
+ if form == None:
+ form = ObservationTimeFilterForm()
context = {
- 'crop_categories': CropCategory.get_crop_categories(translation.get_language())
+ "crop_categories": CropCategory.get_crop_categories(translation.get_language()),
+ "form" : form
}
return render(request, 'observations/index.html', context)
def detail(request, observation_id):
context = {
- "observation_id" : observation_id
+ "observation_id" : observation_id,
}
return render(request, 'observations/detail.html', context)