# HG changeset patch # User Marcin Kuzminski # Date 1277836569 -7200 # Node ID 0d26d46bd37034fa08de58219b62df8b83913543 # Parent eb378708377e5a944eed6950d3078ce3a3334f0f protected againts changing default user. diff -r eb378708377e -r 0d26d46bd370 pylons_app/model/user_model.py --- a/pylons_app/model/user_model.py Tue Jun 29 13:51:03 2010 +0200 +++ b/pylons_app/model/user_model.py Tue Jun 29 20:36:09 2010 +0200 @@ -26,9 +26,12 @@ from pylons_app.model.db import User from pylons_app.model.meta import Session +from pylons.i18n.translation import _ import logging log = logging.getLogger(__name__) +class DefaultUserException(Exception):pass + class UserModel(object): def __init__(self): @@ -53,6 +56,10 @@ def update(self, id, form_data): try: new_user = self.sa.query(User).get(id) + if new_user.username == 'default': + raise DefaultUserException( + _("You can't Edit this user since it's" + " crucial for entire application")) for k, v in form_data.items(): if k == 'new_password' and v != '': @@ -68,8 +75,15 @@ raise def delete(self, id): + try: - self.sa.delete(self.sa.query(User).get(id)) + + user = self.sa.query(User).get(id) + if user.username == 'default': + raise DefaultUserException( + _("You can't remove this user since it's" + " crucial for entire application")) + self.sa.delete(user) self.sa.commit() except Exception as e: log.error(e)