]> source.dussan.org Git - redmine.git/commitdiff
Exporting issue as PDF fails when the issue has private journal (#32858).
authorGo MAEDA <maeda@farend.jp>
Sat, 25 Jan 2020 03:07:00 +0000 (03:07 +0000)
committerGo MAEDA <maeda@farend.jp>
Sat, 25 Jan 2020 03:07:00 +0000 (03:07 +0000)
Patch by Kouhei Sutou.

git-svn-id: http://svn.redmine.org/redmine/trunk@19458 e93f8b46-1217-0410-a6f0-8f06a7374b81

lib/redmine/export/pdf/issues_pdf_helper.rb
test/functional/issues_controller_test.rb

index 15c0b43ccb5f593a12c2c6e67405a5f1e605c32d..81f1a817496c3ee8876f3d39c8a50f18568fffff 100644 (file)
@@ -212,7 +212,7 @@ module Redmine
             assoc[:journals].each do |journal|
               pdf.SetFontStyle('B',8)
               title = "##{journal.indice} - #{format_time(journal.created_on)} - #{journal.user}"
-              title << " (#{l(:field_private_notes)})" if journal.private_notes?
+              title += " (#{l(:field_private_notes)})" if journal.private_notes?
               pdf.RDMCell(190,5, title)
               pdf.ln
               pdf.SetFontStyle('I',8)
index cf2a819315eeffa1c754ecd6f8530125355c5fc3..9c793fdeb8fab33a7df883032bae3b68c914f99d 100644 (file)
@@ -2738,6 +2738,26 @@ class IssuesControllerTest < Redmine::ControllerTest
     assert @response.body.starts_with?('%PDF')
   end
 
+  def test_show_export_to_pdf_with_private_journal
+    Journal.create!(
+      :journalized => Issue.find(1),
+      :notes => 'Private notes',
+      :private_notes => true,
+      :user_id => 3
+    )
+    @request.session[:user_id] = 3
+    get(
+      :show,
+      :params => {
+        :id => 1,
+        :format => 'pdf'
+      }
+    )
+    assert_response :success
+    assert_equal 'application/pdf', @response.content_type
+    assert @response.body.starts_with?('%PDF')
+  end
+
   def test_show_export_to_pdf_with_changesets
     [[100], [100, 101], [100, 101, 102]].each do |cs|
       issue1 = Issue.find(3)