#1883
[auf_rh_dae.git] / project / rh / lib.py
index 0df33fc..1d7098b 100644 (file)
@@ -2,6 +2,7 @@
 
 from django.db import models
 from django.contrib import admin
+from django.conf import settings
 from auf.django.metadata.admin import AUFMetadataAdminMixin, AUFMetadataInlineAdminMixin, AUF_METADATA_READONLY_FIELDS
 from project.rh import models as rh
 
@@ -144,7 +145,6 @@ class ClassementAdmin(AUFMetadataAdminMixin, admin.ModelAdmin):
     )
 
 
-
 class CommentaireAdmin(admin.ModelAdmin):
     pass
 
@@ -179,7 +179,7 @@ class DeviseAdmin(AUFMetadataAdminMixin, admin.ModelAdmin):
 class DossierAdmin(AUFMetadataAdminMixin, admin.ModelAdmin,):
     alphabet_filter = 'employe__nom'
     search_fields = ('employe__nom', 'employe__prenom', 'poste__nom', 'poste__nom_feminin')
-    list_display = ('_employe', '_poste', 'date_debut', 'date_fin', )
+    list_display = ('_employe', '_poste', 'date_debut', 'date_fin', '_actif')
     inlines = (DossierPieceInline, ContratInline,
                RemunerationInline,
                #EvenementInline,
@@ -201,9 +201,18 @@ class DossierAdmin(AUFMetadataAdminMixin, admin.ModelAdmin,):
     )
 
     def lookup_allowed(self, key, value):
-        if key in ('employe__nom__istartswith',  ):
+        if key in ('employe__nom__istartswith', 'actif__exact', ):
             return True
 
+    def _actif(self, dossier):
+        if dossier.employe.actif:
+          html = """<img alt="True" src="%simg/admin/icon-yes.gif">"""
+        else:
+          html = """<img alt="False" src="%simg/admin/icon-no.gif">"""
+        return html % settings.ADMIN_MEDIA_PREFIX 
+    _actif.allow_tags = u'Employé actif'
+    _actif.short_description = u'Employé actif'
+    _actif.admin_order_field = 'employe__actif'
 
     def _poste(self, dossier):
         return unicode(dossier.poste.nom)
@@ -232,7 +241,11 @@ class DossierCommentaireAdmin(admin.ModelAdmin):
 
 class EmployeAdmin(AUFMetadataAdminMixin, admin.ModelAdmin):
     alphabet_filter = 'nom'
-    search_fields = ('id', 'nom', 'prenom', 'nom_affichage', )
+    search_fields = ('id', 'nom', 'prenom', 'nom_affichage', 'actif', )
+    list_filter = ('actif', )
+    ordering = ('nom', )
+    actions = ('desactiver', )
+    list_display = ('nom', 'prenom', 'actif', )
     inlines = (AyantDroitInline,
                DossierROInline,
                EmployePieceInline,