Recherche par domaine dans chercheurs
authorAli Jetha <ali@U-AJ.(none)>
Wed, 20 Oct 2010 16:34:09 +0000 (12:34 -0400)
committerAli Jetha <ali@U-AJ.(none)>
Wed, 20 Oct 2010 16:34:09 +0000 (12:34 -0400)
auf_savoirs_en_partage/chercheurs/forms.py
auf_savoirs_en_partage/chercheurs/views.py
auf_savoirs_en_partage/savoirs/views.py

index 122da3b..86a491a 100644 (file)
@@ -56,6 +56,7 @@ class PersonneEditForm(forms.ModelForm):
 class RepertoireSearchForm (forms.Form):
       mots_cles = forms.CharField (required = False, label="Mots-clés")
       discipline = forms.ModelChoiceField(queryset=Discipline.objects.all(), required=False, label="Discipline", empty_label="Tous")
+      domaine = forms.ModelChoiceField(queryset=Groupe.objects.all(), required=False, label="Domaine de recherche", empty_label="Tous")
       fonction = forms.ChoiceField(choices=(('','Tous'),)+FONCTION_CHOICES, required=False, label="Fonction")
       pays = forms.ModelChoiceField(queryset=Pays.objects.all().order_by("nom"), required=False, label="Localisation", empty_label="Tous")
       genre = forms.ChoiceField(choices=(('','Tous'),)+GENRE_CHOICES, required=False, label="Genre")
index 19a7930..f319722 100644 (file)
@@ -54,16 +54,19 @@ def chercheur_queryset (request):
     if simpleForm.is_valid ():
         pays = simpleForm.cleaned_data["pays"]
         if pays:
-            list = list.filter (nationalite = pays.pk)
+            list = list.filter(nationalite = pays.pk)
         fonction = simpleForm.cleaned_data["fonction"]
         if fonction:
-            list = list.filter (fonction = fonction)
+            list = list.filter(fonction = fonction)
         genre = simpleForm.cleaned_data["genre"]
         if genre:
-            list = list.filter (personne__genre=genre)
+            list = list.filter(personne__genre=genre)
         discipline = simpleForm.cleaned_data["discipline"]
         if discipline:
-            list = list.filter (discipline=discipline)
+            list = list.filter(discipline=discipline)
+        domaine = simpleForm.cleaned_data["domaine"]
+        if domaine:
+            list = list.filter(groupes=domaine)
         mots_cles = simpleForm.cleaned_data["mots_cles"]
         if mots_cles:
             list = list.filter (Q(personne__nom__icontains=mots_cles) | Q(personne__prenom__icontains=mots_cles))
index cf74250..3b56821 100644 (file)
@@ -30,6 +30,8 @@ def index (request):
     except:
         erreur_caldav = u"Problème de connexion à l'agenda"
         events = []
+    
+    
     ressources = Record.objects.all().order_by('?')[:configuration['accueil_ressource']]
     chercheurs = Chercheur.objects.all().order_by('?')[:configuration['accueil_chercheur']]
     sites = Site.objects.all().order_by('?')[:configuration['accueil_sites']]