fix actif manager DAE
authorOlivier Larchevêque <olivier.larcheveque@auf.org>
Wed, 22 Feb 2012 15:34:45 +0000 (10:34 -0500)
committerOlivier Larchevêque <olivier.larcheveque@auf.org>
Wed, 22 Feb 2012 15:34:45 +0000 (10:34 -0500)
project/dae/views.py
project/rh/managers.py
src/auf.django.metadata/auf/django/metadata/managers.py
src/auf.django.metadata/auf/django/metadata/models.py

index a378ef5..295947e 100644 (file)
@@ -683,9 +683,9 @@ def liste_postes(request):
     data = []
 
     # Voir le code de _poste_choices dans forms.py
-    dae_ = dae.Poste.actifs.filter(id_rh__isnull=True)
+    dae_ = dae.Poste.objects.actifs().filter(id_rh__isnull=True)
     copies = dae.Poste.objects.exclude(id_rh__isnull=True)
-    rh_postes_actifs = rh.Poste.actifs.all()
+    rh_postes_actifs = rh.Poste.objects.actifs()
 
     if 'implantation_id' in params and params.get('implantation_id') is not u"":
         implantation_id = params.get('implantation_id')
index 3e8626c..af71276 100644 (file)
@@ -1,6 +1,7 @@
 
 # -*- encoding: utf-8 -*-
 
+import datetime
 from django.db import models
 from django.db.models import Q
 from auf.django.metadata.managers import NoDeleteManager
@@ -80,7 +81,8 @@ class PosteManager(SecurityManager, NoDeleteManager):
     prefixe_implantation = "implantation__region"
 
     def actifs(self):
-        return super(PosteManager, self).get_query_set().filter(date_fin__gt=datetime.datetime.now())
+        q_actif = Q(date_fin__gt=datetime.datetime.now()) | Q(date_fin__isnull=True)
+        return super(PosteManager, self).get_query_set().filter(q_actif)
 
     def ma_region_ou_service(self, user):
         return super(PosteManager, self).ma_region_ou_service(user)
index 61d7c4d..9e72c29 100755 (executable)
@@ -17,19 +17,3 @@ class NoDeleteManager(models.Manager):
     """
     def get_query_set(self):
         return NoDeleteQuerySet(self.model, using=self._db).filter(supprime=False)
-
-
-class ActifsManager(NoDeleteManager):
-    """
-    Seulement les entrées actives
-    """
-    def get_query_set(self):
-        return super(ActifsManager, self).get_query_set().filter(actif=True)
-
-
-class InactifsManager(NoDeleteManager):
-    """
-    Seulement les entrées inactives
-    """
-    def get_query_set(self):
-        return super(InactifsManager, self).get_query_set().filter(actif=False)
index f66f6ce..20b5c90 100755 (executable)
@@ -1,7 +1,7 @@
 # -*- encoding: utf-8 -*-
 
 from django.db import models
-from managers import NoDeleteManager, ActifsManager, InactifsManager
+from managers import NoDeleteManager
 
 
 class AUFMetadata(models.Model):
@@ -21,8 +21,6 @@ class AUFMetadata(models.Model):
                             null=True, blank=True)
 
     objects = NoDeleteManager()
-    actifs = ActifsManager()
-    inactifs = InactifsManager()
 
     class Meta:
         abstract = True