From 6ec400aa371497f1d3bb5f946ede646e8f19e378 Mon Sep 17 00:00:00 2001 From: mathieu Date: Tue, 19 Apr 2016 10:33:27 +0200 Subject: [PATCH] Debut recherche booleenne instru Former-commit-id: cd964ada747b0ed3cd5398f0234f0c3a45264c5d --- modif telemeta | 6 ++ telemeta/forms/boolean_form.py | 8 ++ telemeta/templates/search/advanceSearch.html | 100 ++++++++++++++++--- telemeta/views/search.py | 3 + 4 files changed, 104 insertions(+), 13 deletions(-) create mode 100644 telemeta/forms/boolean_form.py diff --git a/modif telemeta b/modif telemeta index 0f0bdeca..7d6d3163 100644 --- a/modif telemeta +++ b/modif telemeta @@ -27,3 +27,9 @@ autocompletion sur instruments/collecteur (listes fermees) VERIF PROD : filtre inedits/edites pour les items : passer par la collection puis sa cote (I : inedit, E : edites) + +DERNIER COMMIT : +11 avril : Merge branch 'dev' into feature/ts-server +Prob : resolution url (commit 18 avril Merge branch 'dev' of github.com:Parisson/Telemeta into dev ) + + diff --git a/telemeta/forms/boolean_form.py b/telemeta/forms/boolean_form.py new file mode 100644 index 00000000..e7fc94ed --- /dev/null +++ b/telemeta/forms/boolean_form.py @@ -0,0 +1,8 @@ +from django import forms + +class BooleanSearch(forms.Form): + + boolean = forms.ChoiceField(choices=[('ET', 'ET',), ('OU', 'OU',)], label='') + startBracket = forms.BooleanField(initial=False, label='') + textField = forms.CharField(label='') + endBracket = forms.BooleanField(initial=False, label='') \ No newline at end of file diff --git a/telemeta/templates/search/advanceSearch.html b/telemeta/templates/search/advanceSearch.html index 49611ed7..e000e74d 100644 --- a/telemeta/templates/search/advanceSearch.html +++ b/telemeta/templates/search/advanceSearch.html @@ -11,6 +11,17 @@ + {% endblock %} {% block content %}
@@ -38,8 +49,9 @@
{{form.instruments.errors}} - {% trans form.instruments.label_tag %}
+ {% trans form.instruments.label_tag %} {{form.instruments}} + Recherche booléenne
@@ -234,6 +246,35 @@
{# Show some example queries to run, maybe query syntax, something else? #} {% endif %} +
+ + + + {{ booleanForm.management_form}} + {% for form in booleanForm %} + {% if forloop.counter0 == 0 %} + {{ form.startBracket }} + {{ form.textField }} + {{ form.endBracket }} + {% else %} + {% if forloop.counter0 == 1 %} +
+ {% endif %} + {{ form.as_p }} + {% if forloop.counter0 == 1 %} +
+ {% endif %} + {% endif %} + + {% endfor %} + Ajouter champ +
+ + + + +
+ {% endblock %} {% block extra_javascript %} @@ -252,30 +293,63 @@ {% endblock %} diff --git a/telemeta/views/search.py b/telemeta/views/search.py index bda81d6b..b5920c1d 100644 --- a/telemeta/views/search.py +++ b/telemeta/views/search.py @@ -25,6 +25,8 @@ from telemeta.forms.haystack_form import * from saved_searches.views import SavedSearchView import simplejson as json from django.http import HttpResponse +from telemeta.forms.boolean_form import * +from django.forms.formsets import formset_factory class HaystackSearch(FacetedSearchView, SavedSearchView): @@ -159,6 +161,7 @@ class HaystackAdvanceSearch(SavedSearchView): extra['type'] = 'collection' extra['results_page'] = self.results_per_page + extra['booleanForm'] = formset_factory(BooleanSearch, extra=2) return extra def autocomplete(request): -- 2.39.5