From 20adb8321f002e08f8b3b610d0b373e4a3acd663 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Fri, 17 Feb 2017 17:06:52 +0100 Subject: Fix password initialization on user creation (refs #3478) --- ishtar_common/models.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'ishtar_common/models.py') diff --git a/ishtar_common/models.py b/ishtar_common/models.py index fa2b348bf..7185bfda6 100644 --- a/ishtar_common/models.py +++ b/ishtar_common/models.py @@ -73,17 +73,20 @@ logger = logging.getLogger(__name__) def post_save_user(sender, **kwargs): user = kwargs['instance'] + try: q = IshtarUser.objects.filter(username=user.username) if not q.count(): ishtaruser = IshtarUser.create_from_user(user) else: ishtaruser = q.all()[0] - ADMINISTRATOR, created = PersonType.objects.get_or_create( + ''' + administrator, created = PersonType.objects.get_or_create( txt_idx='administrator') if ishtaruser.is_superuser \ and not ishtaruser.has_right('administrator'): - ishtaruser.person.person_types.add(ADMINISTRATOR) + ishtaruser.person.person_types.add(administrator) + ''' except DatabaseError: # manage when db is not synced pass post_save.connect(post_save_user, sender=User) @@ -2805,8 +2808,10 @@ class IshtarUser(User): name=name, email=email, history_modifier=user) person.person_types.add(person_type) - return IshtarUser.objects.create(user_ptr=user, username=default, - person=person) + password = user.password + isht_user = IshtarUser.objects.create( + user_ptr=user, username=default, person=person, password=password) + return isht_user def has_right(self, right_name, session=None): return self.person.has_right(right_name, session=session) -- cgit v1.2.3