Bug: la sauvegarde d'une recherche d'appels d'offres créait une recherche
authorEric Mc Sween <eric.mcsween@gmail.com>
Tue, 15 Mar 2011 21:05:21 +0000 (17:05 -0400)
committerEric Mc Sween <eric.mcsween@gmail.com>
Tue, 15 Mar 2011 21:05:21 +0000 (17:05 -0400)
d'actualités.

auf_savoirs_en_partage/savoirs/forms.py
auf_savoirs_en_partage/savoirs/views.py

index dcdc324..8a8ba14 100644 (file)
@@ -7,7 +7,8 @@ from django.db import models
 from django.contrib.admin import widgets
 from django.utils.safestring import mark_safe
 from datamaster_modeles.models import Thematique, Pays, Region
-from savoirs.models import Evenement, Discipline, Record, Actualite, RessourceSearch, ActualiteSearch, EvenementSearch, Search
+from savoirs.models import Evenement, Discipline, Record, Actualite, RessourceSearch, ActualiteSearch, \
+                           AppelSearch, EvenementSearch, Search
 from savoirs.lib.recherche import build_search_regexp
 from savoirs.admin import EvenementAdminForm
 import settings
@@ -78,6 +79,20 @@ class ActualiteSearchEditForm(ActualiteSearchForm):
     class Meta(ActualiteSearchForm.Meta):
         fields = ['nom'] + ActualiteSearchForm.Meta.fields
 
+class AppelSearchForm(forms.ModelForm):
+    """Formulaire de recherche pour les actualités."""
+    date_min = SEPDateField(required=False, label="Depuis le") 
+    date_max = SEPDateField(required=False, label="Jusqu'au") 
+
+    class Meta:
+        model = AppelSearch
+        fields = ['q', 'date_min', 'date_max', 'discipline', 'region']
+    
+class AppelSearchEditForm(AppelSearchForm):
+
+    class Meta(AppelSearchForm.Meta):
+        fields = ['nom'] + AppelSearchForm.Meta.fields
+
 class EvenementSearchForm(forms.ModelForm):
     """Formulaire de recherche pour les évènements."""
     date_min = SEPDateField(required=False, label="Depuis le") 
index a47c03b..6eb6994 100644 (file)
@@ -269,8 +269,10 @@ def sauvegarder_recherche(request, type):
     """Sauvegarde une recherche"""
     if type == 'ressources':
         form_class = RessourceSearchEditForm
-    elif type in ['actualites', 'appels']:
+    elif type == 'actualites':
         form_class = ActualiteSearchEditForm
+    elif type == 'appels':
+        form_class = AppelSearchEditForm
     elif type == 'sites':
         form_class = SiteSearchEditForm
     elif type == 'chercheurs':
@@ -300,8 +302,10 @@ def editer_recherche(request, id):
     recherche = get_object_or_404(Search, id=id, user=request.user).as_leaf_class()
     if isinstance(recherche, RessourceSearch):
         form_class = RessourceSearchEditForm
-    elif isinstance(recherche, ActualiteSearchBase):
+    elif isinstance(recherche, ActualiteSearch):
         form_class = ActualiteSearchEditForm
+    elif isinstance(recherche, AppelSearch):
+        form_class = AppelSearchEditForm
     elif isinstance(recherche, SiteSearch):
         form_class = SiteSearchEditForm
     elif isinstance(recherche, ChercheurSearch):