Fix django ajax selects
[auf_rh_dae.git] / project / menu.py
CommitLineData
e2c0b1ac
PP
1# -*- coding: utf-8 -*-
2
6f38ca31
PP
3"""
4This file was generated with the custommenu management command, it contains
5the classes for the admin menu, you can customize this class as you want.
6
7To activate your custom menu add the following to your settings.py::
8 ADMIN_TOOLS_MENU = 'project.menu.CustomMenu'
9"""
10
11from django.core.urlresolvers import reverse
12from django.utils.translation import ugettext_lazy as _
13
14from admin_tools.menu import items, Menu
a12ddd52 15from project.rh.decorators import in_drh_or_admin
f96ec25c 16from project.rh import groups
6f38ca31
PP
17
18class CustomMenu(Menu):
19 """
20 Custom Menu for project admin site.
21 """
22 def __init__(self, **kwargs):
23 Menu.__init__(self, **kwargs)
24 self.children += [
25 items.MenuItem(_('Dashboard'), reverse('admin:index')),
d53e80f7 26 #items.Bookmarks(),
6f38ca31
PP
27 items.AppList(
28 _('Applications'),
f187a10f 29 exclude=('django.contrib.*', 'project.rh.models.EmployeProxy')
6f38ca31 30 ),
6f38ca31
PP
31 items.AppList(
32 _('Administration'),
33 models=('django.contrib.*',)
34 )
35 ]
36
37 def init_with_context(self, context):
38 """
39 Use this method if you need to access the request context.
40 """
595ad88d 41 request = context['request']
f96ec25c
OL
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:
595ad88d
OL
47 self.children += [
48 items.MenuItem('Rapports',
49 children=[
aed17d86 50 #items.MenuItem('Rapport des postes', reverse('rhr_postes')),
595ad88d 51 items.MenuItem('Rapport des contrats', reverse('rhr_contrats')),
c8b22fd1 52 items.MenuItem(u'Rapport des employés sans contrat', reverse('rhr_employe_sans_contrat')),
aed17d86 53 #items.MenuItem('Rapport de rémunération', reverse('rhr_remuneration')),
fdfa21cc
OL
54
55 # A corriger
56 #items.MenuItem('Rapport des postes par service', reverse('rhr_postes_service')),
57 #items.MenuItem('Rapport des postes par implantation', reverse('rhr_postes_implantation')),
58
9c53414b 59 #items.MenuItem('Modelisation des postes', reverse('rhr_postes_modelisation')),
48487f09 60 #items.MenuItem('Rapport hiérarchique des postes', reverse('rhr_postes_hierarchie')),
d5f16ecd 61 items.MenuItem('Rapport de masse salariale', reverse('rhr_masse_salariale')),
595ad88d
OL
62 ]
63 ),
08faf06e
JPC
64 items.MenuItem('Organigrammes',
65 children=[
5c0f1778
JPC
66 items.MenuItem('Organigramme par employé', reverse('admin:rh_employeproxy_changelist')),
67 items.MenuItem('Organigramme par service', reverse('admin:rh_serviceproxy_changelist')),
82af5c19 68 items.MenuItem('Organigramme par implantation', reverse('admin:rh_implantationproxy_changelist')),
9da4c195 69 items.MenuItem('Organigramme par bureau', reverse('admin:rh_regionproxy_changelist')),
08faf06e
JPC
70 ]
71 ),
595ad88d
OL
72 ]
73 super(CustomMenu, self).init_with_context(context)
74