Remplacer boutons d'édition par bouton aperçu
authorJean-Philippe Caissy <jean-philippe.caissy@auf.org>
Mon, 30 Jan 2012 20:06:35 +0000 (14:06 -0600)
committerJean-Philippe Caissy <jean-philippe.caissy@auf.org>
Mon, 30 Jan 2012 20:06:35 +0000 (14:06 -0600)
project/rh/admin.py

index 4142c10..cadbbb7 100644 (file)
@@ -224,6 +224,7 @@ class DossierAdmin(AUFMetadataAdminMixin, ProtectRegionMixin, admin.ModelAdmin,
     alphabet_filter = 'employe__nom'
     search_fields = ('employe__nom', 'employe__prenom', 'poste__nom', 'poste__nom_feminin')
     list_display = (
+        '_apercu',
         '_id',
         '_poste',
         '_employe',
@@ -277,12 +278,20 @@ class DossierAdmin(AUFMetadataAdminMixin, ProtectRegionMixin, admin.ModelAdmin,
             ):
             return True
 
+    def _apercu(self, d):
+        link = u"""<a title="Aperçu du dossier" onclick="return showAddAnotherPopup(this);" href='%s'><img src="%simg/loupe.png" /></a>""" % \
+                (reverse('dossier_apercu', args=(d.id,)),
+                 settings.MEDIA_URL,
+                 )
+        return link
+    _apercu.allow_tags = True
+    _apercu.short_description = u''
+    _apercu.admin_order_field = ''
+
     def _id(self, d):
-        link = u"""<a onclick="return showAddAnotherPopup(this);" href='%s'>%s</a> <a href="%s" title="Modifier le dossier"><img src="%simg/page_edit.png" /></a>""" % \
-            (reverse('dossier_apercu', args=(d.id,)),
+        link = u"""<a href="%s" title="Modifier le dossier"><strong>%s</strong></a>""" % \
+             (reverse('admin:rh_dossier_change', args=(d.id,)),
              d.id,
-             reverse('admin:rh_dossier_change', args=(d.id,)),
-             settings.MEDIA_URL,
              )
         return link
     _id.allow_tags = True
@@ -311,7 +320,7 @@ class DossierAdmin(AUFMetadataAdminMixin, ProtectRegionMixin, admin.ModelAdmin,
     _date_fin.admin_order_field = 'date_fin'
 
     def _poste(self, dossier):
-        link = u"""<a onclick="return showAddAnotherPopup(this);" href='%s'>%s</a> <a href="%s" title="Modifier le poste"><img src="%simg/page_edit.png" /></a>""" % \
+        link = u"""<a title="Aperçu du poste" onclick="return showAddAnotherPopup(this);" href='%s'>%s</a> <a href="%s" title="Modifier le poste"><img src="%simg/page_edit.png" /></a>""" % \
                 (reverse('poste_apercu', args=(dossier.poste.id,)),
                  dossier.poste,
                  reverse('admin:rh_poste_change', args=(dossier.poste.id,)),
@@ -362,7 +371,7 @@ class EmployeAdmin(AUFMetadataAdminMixin, ProtectRegionMixin, admin.ModelAdmin):
     search_fields = ('id', 'nom', 'prenom', 'nom_affichage', )
     ordering = ('nom', )
     form = EmployeAdminForm
-    list_display = ('_nom', '_dossiers', 'date_modification',  'user_modification', 'actif',)
+    list_display = ('_apercu', '_nom', '_dossiers', 'date_modification',  'user_modification', 'actif',)
     list_filter = ('rh_dossiers__poste__implantation__region',  'rh_dossiers__poste__implantation', 'actif', )
     inlines = (AyantDroitInline,
                DossierROInline,
@@ -380,12 +389,17 @@ class EmployeAdmin(AUFMetadataAdminMixin, ProtectRegionMixin, admin.ModelAdmin):
         }),
         )
 
+    def _apercu(self, obj):
+        return u"""<a title="Aperçu de l'employé" onclick="return showAddAnotherPopup(this);" href='%s'><img src="%simg/loupe.png" /></a>""" % \
+                (reverse('employe_apercu', args=(obj.id,)), settings.MEDIA_URL)
+    _apercu.allow_tags = True
+    _apercu.short_description = u""
+    _apercu.admin_order_field = ""
+
     def _nom(self, obj):
-        view_link = reverse('employe_apercu', args=(obj.id,))
         edit_link = reverse('admin:rh_employe_change', args=(obj.id,))
-        return u"""<a onclick="return showAddAnotherPopup(this);" href='%s'>[%s] %s %s</a>
-                  <a href="%s" title="Modifier l'employé"><img src="%simg/user_edit.png" /></a>""" % \
-        (view_link, obj.id, obj.nom.upper(), obj.prenom.title(), edit_link, settings.MEDIA_URL,)
+        return u"""<a href='%s'><strong>[%s] %s %s</strong></a>""" % \
+        (edit_link, obj.id, obj.nom.upper(), obj.prenom.title(),)
     _nom.allow_tags = True
     _nom.short_description = u"Employé ([code] NOM Prénom)"
     _nom.admin_order_field = "nom"
@@ -394,16 +408,18 @@ class EmployeAdmin(AUFMetadataAdminMixin, ProtectRegionMixin, admin.ModelAdmin):
         l = []
         for d in obj.rh_dossiers.all().order_by('-date_debut'):
             style = ""
-            edit = u"""<a href="%s" title="Modifier le dossier"><img src="%simg/page_edit.png" /></a>""" % (reverse('admin:rh_dossier_change', args=(d.id,)), settings.MEDIA_URL,)
+            apercu = u"""<a title="Aperçu du dossier" href="%s" onclick="return showAddAnotherPopup(this);" title="Aperçu du dossier"><img src="%simg/loupe.png" /></a>""" % \
+                (reverse('dossier_apercu', args=(d.id,)), settings.MEDIA_URL,)
+
             if d.date_fin is not None:
-                edit = ""
+                apercu = ""
                 style = u"color: grey";
-            link = u"""<li><a style="%s;" onclick="return showAddAnotherPopup(this);" href='%s'>%s : %s</a>%s</li>""" % \
-                (style,
-                 reverse('dossier_apercu', args=(d.id,)),
+            link = u"""<li>%s<a style="%s;" href='%s'>%s : %s</a></li>""" % \
+                (apercu,
+                 style,
+                 reverse('admin:rh_dossier_change', args=(d.id,)),
                  d.date_debut.year,
                  d.poste,
-                 edit,
                  )
             l.append(link)
         return "<ul>%s</ul>" % "\n".join(l)
@@ -527,7 +543,7 @@ class PosteAdmin(AUFMetadataAdminMixin, ProtectRegionMixin, admin.ModelAdmin, Aj
 
     
     def _apercu(self, poste):
-        link = u"""<a onclick="return showAddAnotherPopup(this);" href='%s'><img src="%simg/loupe.png" /></a>""" % \
+        link = u"""<a onclick="return showAddAnotherPopup(this);" title="Aperçu du poste" href='%s'><img src="%simg/loupe.png" /></a>""" % \
                 (reverse('poste_apercu', args=(poste.id,)),
                  settings.MEDIA_URL,
                  )
@@ -540,7 +556,7 @@ class PosteAdmin(AUFMetadataAdminMixin, ProtectRegionMixin, admin.ModelAdmin, Aj
         return obj.service
 
     def _nom(self, poste):
-        link = u"""<a href="%s" title="Modifier le poste">%s</a>""" % \
+        link = u"""<a href="%s" title="Modifier le poste"><strong>%s</strong></a>""" % \
                  (reverse('admin:rh_poste_change', args=(poste.id,)),
                  poste.nom,
                  )
@@ -558,9 +574,12 @@ class PosteAdmin(AUFMetadataAdminMixin, ProtectRegionMixin, admin.ModelAdmin, Aj
         if employes:
             l = []
             for e in employes:
-                link = "<a href='%s'>%s</a>" % \
-                    (reverse('admin:rh_employe_change', args=(e.id,)),
-                     e)
+                link = "<a href='%s' title='Aperçu de l\'employer' onclick='return showAddAnotherPopup(this)'><img src='%simg/loupe.png' /></a> <a href='%s'>%s</a>" % \
+                     (reverse('employe_apercu', args=(e.id,)),
+                     settings.MEDIA_URL,
+                     reverse('admin:rh_employe_change', args=(e.id,)),
+                     e
+                     )
                 l.append(link)
             output = "\n<br />".join(l)
         return output