Enlevé le critère "thématique" de la recherche dans les sites.
[auf_savoirs_en_partage_django.git] / auf_savoirs_en_partage / sitotheque / views.py
CommitLineData
01a9197e 1# -*- encoding: utf-8 -*-
2from django.shortcuts import render_to_response
3from django.template import Context, RequestContext
54ab837c 4from django.db.models import Q
01a9197e 5
6from models import Site
54ab837c
AJ
7from forms import SiteSearchForm
8
9def search_queryset(request):
10 list = Site.objects.order_by("titre")
11 pays = ""
12
13 simpleForm = SiteSearchForm(request.GET)
14 if simpleForm.is_valid ():
15 pays = simpleForm.cleaned_data["pays"]
16 if pays:
17 list = list.filter(pays = pays.pk)
18 discipline = simpleForm.cleaned_data["discipline"]
19 if discipline:
20 list = list.filter(discipline=discipline)
b39b9367
EMS
21
22 # XXX: On ne veut pas chercher par thématique pour l'instant
23 # thematique = simpleForm.cleaned_data["thematique"]
24 # if thematique:
25 # list = list.filter(thematique=thematique)
54ab837c
AJ
26
27 mots_cles = simpleForm.cleaned_data["mots_cles"]
28 if mots_cles:
29 list = list.filter( Q(titre__icontains=mots_cles)
30 | Q(description__icontains=mots_cles)
31 | Q(editeur__icontains=mots_cles)
32 | Q(auteur__icontains=mots_cles)
33 | Q(mots_cles__icontains=mots_cles) )
34 return list
35
01a9197e 36
37def index(request):
54ab837c
AJ
38 sites = search_queryset(request)
39 site_form = SiteSearchForm(request.GET)
40 nb_sites = sites.count()
01a9197e 41 variables = { 'sites': sites,
54ab837c
AJ
42 'site_form': site_form,
43 'nb_sites': nb_sites,
01a9197e 44 }
45 return render_to_response ("sites/index.html", \
54ab837c 46 Context(variables),
01a9197e 47 context_instance = RequestContext(request))
6e001443 48
49def retrieve(request, id):
50 """Fiche du site"""
51 site = Site.objects.get(id=id)
52 variables = { 'site': site,
53 }
54 return render_to_response ("sites/retrieve.html", \
55 Context (variables),
56 context_instance = RequestContext(request))