comparison rhodecode/controllers/admin/users.py @ 2375:bc2d8c03c050 beta

Implemented #467 Journal logs comments on changesets - added created/updated user action to journal - added created/updated users group action journal - added ip adresses to most of action_log calls to track IP changes - rewrote action_parser to simpler and more efficient solution
author Marcin Kuzminski <marcin@python-works.com>
date Sun, 03 Jun 2012 00:40:14 +0200
parents 24d906650cc0
children 91fae60bf2b6 751c1c56e080
comparison
equal deleted inserted replaced
2374:be2163ef127e 2375:bc2d8c03c050
40 40
41 from rhodecode.model.db import User, Permission 41 from rhodecode.model.db import User, Permission
42 from rhodecode.model.forms import UserForm 42 from rhodecode.model.forms import UserForm
43 from rhodecode.model.user import UserModel 43 from rhodecode.model.user import UserModel
44 from rhodecode.model.meta import Session 44 from rhodecode.model.meta import Session
45 from rhodecode.lib.utils import action_logger
45 46
46 log = logging.getLogger(__name__) 47 log = logging.getLogger(__name__)
47 48
48 49
49 class UsersController(BaseController): 50 class UsersController(BaseController):
74 user_model = UserModel() 75 user_model = UserModel()
75 user_form = UserForm()() 76 user_form = UserForm()()
76 try: 77 try:
77 form_result = user_form.to_python(dict(request.POST)) 78 form_result = user_form.to_python(dict(request.POST))
78 user_model.create(form_result) 79 user_model.create(form_result)
79 h.flash(_('created user %s') % form_result['username'], 80 usr = form_result['username']
81 action_logger(self.rhodecode_user, 'admin_created_user:%s' % usr,
82 None, self.ip_addr, self.sa)
83 h.flash(_('created user %s') % usr,
80 category='success') 84 category='success')
81 Session.commit() 85 Session.commit()
82 #action_logger(self.rhodecode_user, 'new_user', '', '', self.sa)
83 except formencode.Invalid, errors: 86 except formencode.Invalid, errors:
84 return htmlfill.render( 87 return htmlfill.render(
85 render('admin/users/user_add.html'), 88 render('admin/users/user_add.html'),
86 defaults=errors.value, 89 defaults=errors.value,
87 errors=errors.error_dict or {}, 90 errors=errors.error_dict or {},
113 'email': c.user.email})() 116 'email': c.user.email})()
114 form_result = {} 117 form_result = {}
115 try: 118 try:
116 form_result = _form.to_python(dict(request.POST)) 119 form_result = _form.to_python(dict(request.POST))
117 user_model.update(id, form_result) 120 user_model.update(id, form_result)
121 usr = form_result['username']
122 action_logger(self.rhodecode_user, 'admin_updated_user:%s' % usr,
123 None, self.ip_addr, self.sa)
118 h.flash(_('User updated successfully'), category='success') 124 h.flash(_('User updated successfully'), category='success')
119 Session.commit() 125 Session.commit()
120 except formencode.Invalid, errors: 126 except formencode.Invalid, errors:
121 e = errors.error_dict or {} 127 e = errors.error_dict or {}
122 perm = Permission.get_by_key('hg.create.repository') 128 perm = Permission.get_by_key('hg.create.repository')