diff options
author | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2012-12-14 21:39:55 +0200 |
---|---|---|
committer | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2012-12-14 21:39:55 +0200 |
commit | f2db188dbe26b93e76eb3536f1a972a4a9e01f66 (patch) | |
tree | de924b6769965cbd7fb096ac74ed6f0f6d97daed /app/observers | |
parent | 678e5355a3e43aa2a13d109fe5d75de231eef413 (diff) | |
download | gitlab-ce-f2db188dbe26b93e76eb3536f1a972a4a9e01f66.tar.gz |
Processing with note events. reformated dashboard for more events to handle
Diffstat (limited to 'app/observers')
-rw-r--r-- | app/observers/activity_observer.rb | 25 |
1 files changed, 17 insertions, 8 deletions
diff --git a/app/observers/activity_observer.rb b/app/observers/activity_observer.rb index fa39bbfbd34..6fb10423eb7 100644 --- a/app/observers/activity_observer.rb +++ b/app/observers/activity_observer.rb @@ -2,17 +2,26 @@ class ActivityObserver < ActiveRecord::Observer observe :issue, :merge_request, :note, :milestone def after_create(record) - Event.create( - project: record.project, - target_id: record.id, - target_type: record.class.name, - action: Event.determine_action(record), - author_id: record.author_id - ) + event_author_id = record.author_id || record.author_id_of_changes + + # Skip status notes + if record.kind_of?(Note) && record.note.include?("_Status changed to ") + return true + end + + if event_author_id + Event.create( + project: record.project, + target_id: record.id, + target_type: record.class.name, + action: Event.determine_action(record), + author_id: event_author_id + ) + end end def after_save(record) - if record.changed.include?("closed") + if record.changed.include?("closed") && record.author_id_of_changes Event.create( project: record.project, target_id: record.id, |