From cc5a5780e6759553b00bd1181c55ad94fbcfcb46 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marius=20B=C4=82LTEANU?= Date: Tue, 10 Dec 2024 01:51:53 +0200 Subject: [PATCH] WIP diff --git a/app/views/activities/_activities.html.erb b/app/views/activities/_activities.html.erb index 6e830ed72..927e7bc5b 100644 --- a/app/views/activities/_activities.html.erb +++ b/app/views/activities/_activities.html.erb @@ -4,7 +4,7 @@
<% sort_activity_events(events_by_day[day]).each do |e, 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.plugins_event_types[e.activity_provider_options.keys[0]] %> <%= avatar(e.event_author) if e.respond_to?(:event_author) %> <%= format_time(e.event_datetime, false) %> <%= content_tag('span', e.project, :class => 'project') if @project.nil? || @project != e.project %> diff --git a/lib/redmine/activity.rb b/lib/redmine/activity.rb index 36663db6b..344c1e420 100644 --- a/lib/redmine/activity.rb +++ b/lib/redmine/activity.rb @@ -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,12 +41,14 @@ 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 end -- 2.39.5 (Apple Git-154)