fixup
[auf_rh_dae.git] / project / lib.py
CommitLineData
58e9fdc2
OL
1# -*- encoding: utf-8 -*-
2
3import datamaster_modeles.models as ref
4import rh.models as rh
5
6def get_employe_from_user(user):
7 """
8 Retourne un employé AUF (rh.Employe) à partir de son user Django.
9 """
10 try:
11 ref_employe = ref.Authentification.objects.get(courriel=user.email).id
12 employe = rh.Employe.objects.get(id=ref_employe.id)
13 ref_employe = ref.Employe.objects.get(id=employe.id)
14 employe.courriel = ref_employe.courriel
15 employe.tel_pro_poste = ref_employe.telephone_poste
16 employe.tel_pro_ip = ref_employe.telephone_ip
17 except:
18 #raise Exception(u"L'employé avec le courriel %s n'a pas été trouvé dans le référentiel." % user.email)
19 employe = rh.Employe.objects.none()
20 return employe
21
22def get_employe_from_id(id):
23 """
24 Retourne un employé AUF (rh.Employe) à partir de son id.
25 """
26 try:
27 employe = rh.Employe.objects.get(id=id)
28 employe.courriel = ref.Employe.objects.get(id=employe.id).courriel
29 except:
30 employe = rh.Employe.objects.none()
31 return employe
32
33def safe_create_groupe(name=None, id=None):
34 """
35 Création d'un groupe prédéfini. Retourne None, quand la création
36 ne peut se faire. (C'est le cas au syncdb, quand la table de groupe
37 n'a pas été créée encore).
38 """
39 try:
40 if name:
41 grp, created = Group.objects.get_or_create(name=name)
42 elif id :
43 grp, created = Group.objects.get_or_create(id=id)
44 except:
45 return None
46 return grp