Browse Source

Allow superuser to log in even if doesn't liked to a member

Fabs 11 years ago
parent
commit
95baedf934
1 changed files with 11 additions and 10 deletions
  1. 11 10
      coin/members/models.py

+ 11 - 10
coin/members/models.py

@@ -287,18 +287,19 @@ def remove_ldap_user_from_coin_group_when_deleting_member(sender,
 def define_member_user(sender, request, user, **kwargs):
     """
     Lorsqu'un utilisateur se connect avec succes, fait le lien entre le membre
-    et l'utilisateur en définissant le champ user du model membre ayant le 
+    et l'utilisateur en définissant le champ user du model membre ayant le
     ldap_cn utilisé pour la connexion
     """
-    member = Member.objects.get(ldap_cn=user.username)
-    if not member.user:
-        member.user = user
-        member.save()
-    elif member.user.username != user.username:
-        raise Exception('Un membre avec cet ldap_cn existe en base de donnée '
-                        'mais l\'utilisateur auquel il est rattaché ne '
-                        'correspond pas.')
-    
+    if not user.is_superuser:
+        member = Member.objects.get(ldap_cn=user.username)
+        if not member.user:
+            member.user = user
+            member.save()
+        elif member.user.username != user.username:
+            raise Exception('Un membre avec cet ldap_cn existe en base de donnée '
+                            'mais l\'utilisateur auquel il est rattaché ne '
+                            'correspond pas.')
+
 
 #==============================================================================
 # @receiver(pre_save, sender = LdapUser)