X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/adbf44aae48c2a84efaf214b2541dc44f962ae44..97aa78da4fbb0c6acec66ac04ef5aa6121cbc913:/redmine/redmine_publications/lib/issue_publication_hook.rb?ds=sidebyside

diff --git a/redmine/redmine_publications/lib/issue_publication_hook.rb b/redmine/redmine_publications/lib/issue_publication_hook.rb
index 4cfc3ba5..77fa215e 100644
--- a/redmine/redmine_publications/lib/issue_publication_hook.rb
+++ b/redmine/redmine_publications/lib/issue_publication_hook.rb
@@ -1,16 +1,36 @@
 # Provides a link to the document on the platform
 class IssuesPublicationHook < Redmine::Hook::ViewListener
+
   def view_issues_show_details_bottom(context)
-        result = "<tr><td><b>Source File(s):</b></td><td>"
-	names = context[:issue].source_files.map {|name| "<span>" + name + "</span>"} 
-	result << names.join(', ')
-	result + "</td></tr>"
+	# TODO: złapać wyjątek konwersji
+	if context[:issue].tracker_id == Setting.plugin_redmine_publications[:tracker].to_i
+          result = "<tr><td><b>Publication(s):</b></td><td>"
+  	  names = context[:issue].publication_names {|name| "<span>" + name + "</span>"} 
+	  result << names.join(', ')
+	  result << "</td></tr>"
+	end
   end
 
   def controller_issues_edit_before_save(context)
-	pub_field = context[:params][:issue_source_files]
-	context[:issue].source_files = pub_field
+	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