1 # -*- coding: utf-8 -*-
4 This file was generated with the custommenu management command, it contains
5 the classes for the admin menu, you can customize this class as you want.
7 To activate your custom menu add the following to your settings.py::
8 ADMIN_TOOLS_MENU = 'project.menu.CustomMenu'
11 from django
.core
.urlresolvers
import reverse
12 from django
.utils
.translation
import ugettext_lazy
as _
14 from admin_tools
.menu
import items
, Menu
15 from project
.rh
.decorators
import in_drh_or_admin
16 from project
.rh
import groups
18 class CustomMenu(Menu
):
20 Custom Menu for project admin site.
22 def __init__(self
, **kwargs
):
23 Menu
.__init__(self
, **kwargs
)
25 items
.MenuItem(_('Dashboard'), reverse('admin:index')),
29 exclude
=('django.contrib.*', 'project.rh.models.EmployeProxy')
33 models
=('django.contrib.*',)
37 def init_with_context(self
, context
):
39 Use this method if you need to access the request context.
41 request
= context
['request']
42 user_groups
= request
.user
.groups
.all()
43 if in_drh_or_admin(request
.user
) or\
44 groups
.grp_correspondants_rh
in user_groups
or\
45 groups
.grp_administrateurs
in user_groups
or\
46 groups
.grp_directeurs_bureau
in user_groups
:
48 items
.MenuItem('Rapports',
50 #items.MenuItem('Rapport des postes', reverse('rhr_postes')),
51 items
.MenuItem('Rapport des contrats', reverse('rhr_contrats')),
52 items
.MenuItem(u
'Rapport des employés sans contrat', reverse('rhr_employe_sans_contrat')),
53 #items.MenuItem('Rapport de rémunération', reverse('rhr_remuneration')),
56 #items.MenuItem('Rapport des postes par service', reverse('rhr_postes_service')),
57 #items.MenuItem('Rapport des postes par implantation', reverse('rhr_postes_implantation')),
59 #items.MenuItem('Modelisation des postes', reverse('rhr_postes_modelisation')),
60 #items.MenuItem('Rapport hiérarchique des postes', reverse('rhr_postes_hierarchie')),
61 items
.MenuItem('Rapport de masse salariale', reverse('rhr_masse_salariale')),
64 items
.MenuItem('Organigrammes',
66 items
.MenuItem('Organigramme par employé', reverse('admin:rh_employeproxy_changelist')),
67 items
.MenuItem('Organigramme par service', reverse('admin:rh_serviceproxy_changelist')),
68 items
.MenuItem('Organigramme par implantation', reverse('admin:rh_implantationproxy_changelist')),
69 items
.MenuItem('Organigramme par bureau', reverse('admin:rh_regionproxy_changelist')),
73 super(CustomMenu
, self
).init_with_context(context
)