summaryrefslogtreecommitdiff
path: root/app/observers
diff options
context:
space:
mode:
authorAndrew8xx8 <avk@8xx8.ru>2013-02-20 14:53:15 +0400
committerAndrew8xx8 <avk@8xx8.ru>2013-02-20 14:53:15 +0400
commitaa1780d03c7ceb916c2e122b841d3d4ebc5ce597 (patch)
treef0e0ebd956199cc5d81c4e63e14555a4e46bb6a9 /app/observers
parent468c8c5f0a66a9ebf1489926ba32c19db71d821a (diff)
downloadgitlab-ce-aa1780d03c7ceb916c2e122b841d3d4ebc5ce597.tar.gz
System hooks execution moved to System hook service
Diffstat (limited to 'app/observers')
-rw-r--r--app/observers/system_hook_observer.rb59
1 files changed, 2 insertions, 57 deletions
diff --git a/app/observers/system_hook_observer.rb b/app/observers/system_hook_observer.rb
index 195a6b127ee..be2594b4916 100644
--- a/app/observers/system_hook_observer.rb
+++ b/app/observers/system_hook_observer.rb
@@ -2,65 +2,10 @@ class SystemHookObserver < ActiveRecord::Observer
observe :user, :project, :users_project
def after_create(model)
- case model
- when Project
- SystemHook.all_hooks_fire({
- event_name: "project_create",
- name: model.name,
- path: model.path,
- project_id: model.id,
- owner_name: model.owner.name,
- owner_email: model.owner.email,
- created_at: model.created_at
- })
- when User
- SystemHook.all_hooks_fire({
- event_name: "user_create",
- name: model.name,
- email: model.email,
- created_at: model.created_at
- })
- when UsersProject
- SystemHook.all_hooks_fire({
- event_name: "user_add_to_team",
- project_name: model.project.name,
- project_path: model.project.path,
- project_id: model.project_id,
- user_name: model.user.name,
- user_email: model.user.email,
- project_access: model.repo_access_human,
- created_at: model.created_at
- })
- end
+ SystemHooksService.execute_hooks_for(model, :create)
end
def after_destroy(model)
- case model
- when Project
- SystemHook.all_hooks_fire({
- event_name: "project_destroy",
- name: model.name,
- path: model.path,
- project_id: model.id,
- owner_name: model.owner.name,
- owner_email: model.owner.email,
- })
- when User
- SystemHook.all_hooks_fire({
- event_name: "user_destroy",
- name: model.name,
- email: model.email
- })
- when UsersProject
- SystemHook.all_hooks_fire({
- event_name: "user_remove_from_team",
- project_name: model.project.name,
- project_path: model.project.path,
- project_id: model.project_id,
- user_name: model.user.name,
- user_email: model.user.email,
- project_access: model.repo_access_human
- })
- end
+ SystemHooksService.execute_hooks_for(model, :destroy)
end
end