mirror of
https://github.com/redmine/redmine.git
synced 2026-01-22 23:43:01 +01:00
Merge r23377 from trunk to 6.0-stable (#41880).
git-svn-id: https://svn.redmine.org/redmine/branches/6.0-stable@23380 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
<dl>
|
||||
<% sort_activity_events(events_by_day[day]).each do |e, in_group| -%>
|
||||
<dt class="<%= e.event_type %> icon icon-<%= e.event_type %> <%= "grouped" if in_group %> <%= User.current.logged? && e.respond_to?(:event_author) && User.current == e.event_author ? 'me' : nil %>">
|
||||
<%= activity_event_type_icon e.event_type %>
|
||||
<%= activity_event_type_icon e.event_type, plugin: Redmine::Activity.plugin_name(e.activity_provider_options.keys[0]) %>
|
||||
<%= avatar(e.event_author) if e.respond_to?(:event_author) %>
|
||||
<span class="time"><%= format_time(e.event_datetime, false) %></span>
|
||||
<%= content_tag('span', e.project, :class => 'project') if @project.nil? || @project != e.project %>
|
||||
|
||||
@@ -19,10 +19,11 @@
|
||||
|
||||
module Redmine
|
||||
module Activity
|
||||
mattr_accessor :available_event_types, :default_event_types, :providers
|
||||
mattr_accessor :available_event_types, :default_event_types, :plugins_event_types, :providers
|
||||
|
||||
@@available_event_types = []
|
||||
@@default_event_types = []
|
||||
@@plugins_event_types = {}
|
||||
@@providers = Hash.new {|h, k| h[k]=[]}
|
||||
|
||||
class << self
|
||||
@@ -32,7 +33,7 @@ module Redmine
|
||||
|
||||
# Registers an activity provider
|
||||
def register(event_type, options={})
|
||||
options.assert_valid_keys(:class_name, :default)
|
||||
options.assert_valid_keys(:class_name, :default, :plugin)
|
||||
|
||||
event_type = event_type.to_s
|
||||
providers = options[:class_name] || event_type.classify
|
||||
@@ -40,14 +41,20 @@ module Redmine
|
||||
|
||||
@@available_event_types << event_type unless @@available_event_types.include?(event_type)
|
||||
@@default_event_types << event_type unless options[:default] == false
|
||||
@@plugins_event_types = { event_type => options[:plugin].to_s } unless options[:plugin].nil?
|
||||
@@providers[event_type] += providers
|
||||
end
|
||||
|
||||
def delete(event_type)
|
||||
@@available_event_types.delete event_type
|
||||
@@default_event_types.delete event_type
|
||||
@@plugins_event_types.delete(event_type)
|
||||
@@providers.delete(event_type)
|
||||
end
|
||||
|
||||
def plugin_name(event_type)
|
||||
@@plugins_event_types[event_type]
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user