auf.django.references = 0.4
auf.django.skin = 0.17dev
auf.django.workflow = 0.14dev
-auf.django.emploi = 0.6dev
+auf.django.emploi = 0.7dev
auf.recipe.django = 0.20dev
django-reversion = 1.3.3
django-ajax-selects = 1.1.4
--- /dev/null
+# -*- encoding: utf-8 -*-
+
+import datamaster_modeles.models as ref
+import rh.models as rh
+from operator import itemgetter
+
+def get_employe_from_user(user):
+ """
+ Retourne un employé AUF (rh.Employe) à partir de son user Django.
+ """
+ try:
+ ref_employe = ref.Authentification.objects.get(courriel=user.email).id
+ employe = rh.Employe.objects.get(id=ref_employe.id)
+ ref_employe = ref.Employe.objects.get(id=employe.id)
+ employe.courriel = ref_employe.courriel
+ employe.tel_pro_poste = ref_employe.telephone_poste
+ employe.tel_pro_ip = ref_employe.telephone_ip
+ except:
+ #raise Exception(u"L'employé avec le courriel %s n'a pas été trouvé dans le référentiel." % user.email)
+ employe = rh.Employe.objects.none()
+ return employe
+
+def get_employe_from_id(id):
+ """
+ Retourne un employé AUF (rh.Employe) à partir de son id.
+ """
+ try:
+ employe = rh.Employe.objects.get(id=id)
+ employe.courriel = ref.Employe.objects.get(id=employe.id).courriel
+ except:
+ employe = rh.Employe.objects.none()
+ return employe
+
+def safe_create_groupe(name=None, id=None):
+ """
+ Création d'un groupe prédéfini. Retourne None, quand la création
+ ne peut se faire. (C'est le cas au syncdb, quand la table de groupe
+ n'a pas été créée encore).
+ """
+ try:
+ if name:
+ grp, created = Group.objects.get_or_create(name=name)
+ elif id :
+ grp, created = Group.objects.get_or_create(id=id)
+ except:
+ return None
+ return grp
+