X-Git-Url: https://git.mdrn.pl/redakcja_redmine.git/blobdiff_plain/3cd0bfe5475b72e64c26b534e388f772878a408d..ffc56b3a497cd796fa405e1b785cc141076ac6b4:/lib/issue_publication_hook.rb
diff --git a/lib/issue_publication_hook.rb b/lib/issue_publication_hook.rb
index 9c97233..77fa215 100644
--- a/lib/issue_publication_hook.rb
+++ b/lib/issue_publication_hook.rb
@@ -3,7 +3,7 @@ class IssuesPublicationHook < Redmine::Hook::ViewListener
def view_issues_show_details_bottom(context)
# TODO: zÅapaÄ wyjÄ
tek konwersji
- if context[:issue].tracker_id == Setting.plugin_redmine_publications['tracker'].to_i
+ if context[:issue].tracker_id == Setting.plugin_redmine_publications[:tracker].to_i
result = "
Publication(s): | "
names = context[:issue].publication_names {|name| "" + name + ""}
result << names.join(', ')
@@ -12,11 +12,25 @@ class IssuesPublicationHook < Redmine::Hook::ViewListener
end
def controller_issues_edit_before_save(context)
- if context[:issue].tracker_id == Setting.plugin_redmine_publications['tracker'].to_i
- pub_field = context[:params][:publications]
- context[:issue].publication_names = pub_field.split(',').map { |n| n.strip }
+ if context[:issue].tracker.id == Setting.plugin_redmine_publications[:tracker].to_i
+ old_value = context[:issue].publication_names
+ new_value = context[:params][:publications].split(',').map { |n| n.strip }
+ context[:journal].details << JournalDetail.new(
+ :property => 'attr', :prop_key => "publications",
+ :old_value => old_value.join(', '),
+ :value => new_value.join(', ') ) unless new_value==old_value
+ context[:issue].publication_names = new_value
end
end
+
+ def controller_issues_new_after_save(context)
+ if context[:issue].tracker.id == Setting.plugin_redmine_publications[:tracker].to_i
+ value = context[:params][:publications].split(',').map { |n| n.strip }
+ context[:issue].publication_names = value
+ context[:issue].save
+ end
+ end
+
render_on :view_issues_form_details_bottom, :partial => 'issue_form_pub'
end
|