2012-06-20 18:29:10 +02:00
|
|
|
class UserObserver < ActiveRecord::Observer
|
|
|
|
def after_create(user)
|
2012-09-11 22:24:53 +02:00
|
|
|
log_info("User \"#{user.name}\" (#{user.email}) was created")
|
|
|
|
|
2013-03-05 15:48:18 +01:00
|
|
|
# Dont email omniauth created users
|
|
|
|
Notify.delay.new_user_email(user.id, user.password) unless user.extern_uid?
|
2012-06-20 18:29:10 +02:00
|
|
|
end
|
2012-09-11 22:24:53 +02:00
|
|
|
|
|
|
|
def after_destroy user
|
|
|
|
log_info("User \"#{user.name}\" (#{user.email}) was removed")
|
|
|
|
end
|
|
|
|
|
2012-11-23 04:39:09 +01:00
|
|
|
def after_save user
|
2012-11-24 11:25:04 +01:00
|
|
|
if user.username_changed?
|
|
|
|
if user.namespace
|
|
|
|
user.namespace.update_attributes(path: user.username)
|
|
|
|
else
|
2012-12-28 04:14:05 +01:00
|
|
|
user.create_namespace!(path: user.username, name: user.username)
|
2012-11-24 11:25:04 +01:00
|
|
|
end
|
2012-11-23 04:39:09 +01:00
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2012-09-11 22:24:53 +02:00
|
|
|
protected
|
|
|
|
|
|
|
|
def log_info message
|
|
|
|
Gitlab::AppLogger.info message
|
|
|
|
end
|
2012-06-20 18:29:10 +02:00
|
|
|
end
|