fix recrutement
authorOlivier Larchevêque <olivier.larcheveque@auf.org>
Thu, 19 Jul 2012 15:04:40 +0000 (11:04 -0400)
committerOlivier Larchevêque <olivier.larcheveque@auf.org>
Thu, 19 Jul 2012 15:04:40 +0000 (11:04 -0400)
project/dashboard.py
project/recrutement/admin.py

index 2c53d4f..97a9b70 100644 (file)
@@ -26,20 +26,44 @@ class CustomIndexDashboard(Dashboard):
         request = context['request']
 
         # append an app list module for "Applications"
-        self.children.append(modules.AppList(
+        self.children.append(modules.Group(
             _('Applications'),
-            models=(
-                'project.dae.models.*',
-                'project.recrutement.models.*',
-                'project.rh.models.AyantDroit',
-                'project.rh.models.Dossier',
-                'project.rh.models.DossierInactif',
-                'project.rh.models.Employe',
-                'project.rh.models.EmployeInactif',
-                'project.rh.models.Poste',
-            ),
+            display='stacked',
+            children=[
+                modules.ModelList(
+                    title='Demande d\'autorisation d\'engagement',
+                    models=(
+                        'project.dae.models.*',
+                    )
+                ),
+                modules.ModelList(
+                    title='Gestion des candidatures',
+                    models=(
+                        'auf.django.emploi.models.OffreEmploi',
+                        'project.recrutement.models.ProxyOffreEmploi',
+                        'auf.django.emploi.models.Candidat',
+                        'project.recrutement.models.ProxyCandidat',
+                        'project.recrutement.models.CandidatEvaluation',
+                        'project.recrutement.models.MesCandidatEvaluation',
+                        'project.recrutement.models.Evaluateur',
+                        'project.recrutement.models.CourrielTemplate',
+                    )
+                ),
+                modules.ModelList(
+                    title='Gestion des personnels',
+                    models=(
+                        'project.rh.models.AyantDroit',
+                        'project.rh.models.Dossier',
+                        'project.rh.models.DossierInactif',
+                        'project.rh.models.Employe',
+                        'project.rh.models.EmployeInactif',
+                        'project.rh.models.Poste',
+                    )
+                ),
+            ]
         ))
 
+
         if in_drh_or_admin(request.user):
             revisions = get_active_revisions()[:10]
             children = []
index d578270..160f5f9 100644 (file)
@@ -61,7 +61,7 @@ class OffreEmploiAdminMixin(BaseAdmin):
 
     ### Actions à afficher
     def get_actions(self, request):
-        actions = super(OffreEmploiAdmin, self).get_actions(request)
+        actions = super(OffreEmploiAdminMixin, self).get_actions(request)
         del actions['delete_selected']
         return actions
 
@@ -80,7 +80,7 @@ class OffreEmploiAdminMixin(BaseAdmin):
     ### Afficher la liste des candidats pour l'offre d'emploi
     def _candidatsList(self, obj):
         return "<a href='%s?offre_emploi__id__exact=%s'>Voir les candidats \
-            </a>" % (reverse('admin:recrutement_candidat_changelist'), obj.id)
+            </a>" % (reverse('admin:recrutement_proxycandidat_changelist'), obj.id)
     _candidatsList.allow_tags = True
     _candidatsList.short_description = "Afficher la liste des candidats"
 
@@ -140,7 +140,7 @@ class OffreEmploiAdminMixin(BaseAdmin):
     def queryset(self, request):
         qs = self.model._default_manager.get_query_set() \
                 .select_related('offre_emploi')
-        user_groupes = request.user.groups.all()
+        user_groupes = [g.name for g in request.user.groups.all()]
         if groups.DRH_NIVEAU_1 in user_groupes or \
             groups.DRH_NIVEAU_2 in user_groupes or \
             groups.HAUTE_DIRECTION in user_groupes: