fixup
authorOlivier Larchevêque <olivier.larcheveque@auf.org>
Tue, 10 Jan 2012 16:31:17 +0000 (11:31 -0500)
committerOlivier Larchevêque <olivier.larcheveque@auf.org>
Tue, 10 Jan 2012 16:31:17 +0000 (11:31 -0500)
project/dae/context_processors.py [new file with mode: 0644]
project/lib.py [new file with mode: 0644]
project/settings.py

diff --git a/project/dae/context_processors.py b/project/dae/context_processors.py
new file mode 100644 (file)
index 0000000..40dce68
--- /dev/null
@@ -0,0 +1,8 @@
+# -*- encoding: utf-8 -*-
+from dae.decorators import user_in_dae_groupes as in_dae_groupes
+
+# Ajout de variables accessibles dans les templates (pour tester permissions dans templates)
+   
+def user_in_dae_groupes(request):
+    return {'user_in_dae_groupes': in_dae_groupes(request.user)}
+
diff --git a/project/lib.py b/project/lib.py
new file mode 100644 (file)
index 0000000..e73b3a1
--- /dev/null
@@ -0,0 +1,46 @@
+# -*- encoding: utf-8 -*-
+
+import datamaster_modeles.models as ref
+import rh.models as rh
+
+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
index aa898ff..e0a929e 100644 (file)
@@ -109,11 +109,6 @@ AUTHENTICATION_BACKENDS = (
 LOGIN_URL = "/connexion"
 LOGIN_REDIRECT_URL = "/"
 
-TEMPLATE_LOADERS = (
-    'django.template.loaders.filesystem.load_template_source',
-    'django.template.loaders.app_directories.load_template_source',
-)
-
 TEMPLATE_DIRS = (
     os.path.join(os.path.dirname(__file__), "templates"),
 )