Merge pull request #11 from finnlabs/refactor/activity_providers
[Refactoring] Activity providerspull/6827/head
commit
aac03511e7
@ -0,0 +1,41 @@ |
||||
#-- copyright |
||||
# OpenProject is a project management system. |
||||
# |
||||
# Copyright (C) 2012-2013 the OpenProject Foundation (OPF) |
||||
# |
||||
# This program is free software; you can redistribute it and/or |
||||
# modify it under the terms of the GNU General Public License version 3. |
||||
# |
||||
# See doc/COPYRIGHT.rdoc for more details. |
||||
#++ |
||||
|
||||
class Activity::DocumentActivityProvider < Activity::BaseActivityProvider |
||||
acts_as_activity_provider type: 'documents', |
||||
permission: :view_documents |
||||
|
||||
def event_query_projection(activity) |
||||
[ |
||||
activity_journal_projection_statement(:title, 'document_title', activity), |
||||
activity_journal_projection_statement(:project_id, 'project_id', activity) |
||||
] |
||||
end |
||||
|
||||
def event_title(event, activity) |
||||
"#{Document.model_name.human}: #{event['document_title']}" |
||||
end |
||||
|
||||
def event_path(event, activity) |
||||
Rails.application.routes.url_helpers.project_document_path(url_helper_parameter(event)) |
||||
end |
||||
|
||||
def event_url(event, activity) |
||||
Rails.application.routes.url_helpers.project_document_url(url_helper_parameter(event), |
||||
host: ::Setting.host_name) |
||||
end |
||||
|
||||
private |
||||
|
||||
def url_helper_parameter(event) |
||||
event['journable_id'] |
||||
end |
||||
end |
Loading…
Reference in new issue