From fd7ee08eefdf7085f5da1411c61be8f622d7e38c Mon Sep 17 00:00:00 2001 From: Marcin Kuzminski Date: Wed, 25 Jul 2012 00:38:05 +0200 Subject: fixed api issue with changing username during update_user --HG-- branch : beta --- rhodecode/model/user.py | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'rhodecode/model/user.py') diff --git a/rhodecode/model/user.py b/rhodecode/model/user.py index d9c98bea..8b5e3297 100644 --- a/rhodecode/model/user.py +++ b/rhodecode/model/user.py @@ -278,6 +278,28 @@ class UserModel(BaseModel): log.error(traceback.format_exc()) raise + def update_user(self, user, **kwargs): + from rhodecode.lib.auth import get_crypt_password + try: + user = self._get_user(user) + if user.username == 'default': + raise DefaultUserException( + _("You can't Edit this user since it's" + " crucial for entire application") + ) + + for k, v in kwargs.items(): + if k == 'password' and v: + v = get_crypt_password(v) + user.api_key = generate_api_key(user.username) + + setattr(user, k, v) + self.sa.add(user) + return user + except: + log.error(traceback.format_exc()) + raise + def update_my_account(self, user_id, form_data): from rhodecode.lib.auth import get_crypt_password try: -- cgit v1.2.3