libis-format 1.2.6 → 1.2.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 703d88e70d66ce9cc627d87f933393c63fd73d02e39c747ffe35233286d88bdc
4
- data.tar.gz: a11d05c5f03dae0fcfd31c1c38511febf2344decc2c7e548e521afa6ffd5c54f
3
+ metadata.gz: a1b5fdec2f726d83572f66f78b361b8500247bcf5bdcce56e633998b88758bc4
4
+ data.tar.gz: 0b09d4cc45338b9c1060c89d80f94ad171e8d2bc43da17b20cd2357521ef78f4
5
5
  SHA512:
6
- metadata.gz: 1d4b2ec090f1e03330926040c8238da70b77c4af578b81a82456507a46bceeef7a9edbc91919191f6928f4903e2e6b81862ae4fd6b21221d73848039e7ad3bea
7
- data.tar.gz: 2b6d4040121d50e088566a878439ce2dde1b0805f06fcb727e9b58812f8ab9751b2747c01187025d0baa0582e9b40f853f21474531a58de2ee83827f365d9265
6
+ metadata.gz: 5ad4a140bfa6bedf2d7b915ec1a51b23fd9b4efdacf468e1cae1505a54c72b0733c6ee3d20981347da3f9fae8a8656416a953754bdc893decb8021f40a58b499
7
+ data.tar.gz: '0854af4151b126b6d2cb3d8fdd04c2186dcd5dac294b9a800db0256ed0955c3f1d86d54853ea39fbb295fdf5f71d7a016e6e49e71988e3c7f7c595f5a1c9a33e'
@@ -5,7 +5,10 @@ require 'rfc_2047'
5
5
  require 'cgi'
6
6
  require 'pdfkit'
7
7
 
8
+ require 'time'
9
+
8
10
  require 'fileutils'
11
+ require 'pathname'
9
12
 
10
13
  require 'libis/format/config'
11
14
 
@@ -52,7 +55,7 @@ module Libis
52
55
  result
53
56
  end
54
57
 
55
- def msg_to_pdf(msg, target, target_format, pdf_options, reraise: false)
58
+ def msg_to_pdf(msg, target, target_format, pdf_options, root_msg: true)
56
59
 
57
60
  # Make sure the target directory exists
58
61
  outdir = File.dirname(target)
@@ -116,6 +119,11 @@ module Libis
116
119
  end
117
120
  end
118
121
 
122
+ [:date].each do |key|
123
+ next unless headers[key]
124
+ headers[key] = DateTime.parse(headers[key]).to_time.localtime.iso8601
125
+ end
126
+
119
127
  # Add header section to the HTML body
120
128
  unless hdr_html.empty?
121
129
  # Insert header block styles
@@ -204,9 +212,9 @@ module Libis
204
212
  if sub_msg = a.instance_variable_get(:@embedded_msg)
205
213
  # puts "Embedded email message ..."
206
214
  subject = a.properties[:display_name] || sub_msg.subject || ""
207
- file = File.join(outdir, "#{prefix}#{subject}.#{target_format.to_s.downcase}")
215
+ file = File.join(outdir, "#{prefix}#{subject}.msg.#{target_format.to_s.downcase}")
208
216
 
209
- result = msg_to_pdf(sub_msg, file, target_format, pdf_options, reraise: true)
217
+ result = msg_to_pdf(sub_msg, file, target_format, pdf_options, root_msg: false)
210
218
  if e = result[:error]
211
219
  raise
212
220
  end
@@ -225,6 +233,13 @@ module Libis
225
233
  end
226
234
  i += 1
227
235
  end
236
+
237
+ if root_msg
238
+ p = Pathname(File.dirname(files.first))
239
+ files[1..].each do |f|
240
+ (headers[:attachments] ||= []) << Pathname.new(f).relative_path_from(p).to_s
241
+ end
242
+ end
228
243
 
229
244
  {
230
245
  command: {status: 0},
@@ -236,7 +251,7 @@ module Libis
236
251
  rescue Exception => e
237
252
  # puts "ERROR: Exception #{e.class} raised: #{e.message}"
238
253
  # e.backtrace.each {|t| puts " - #{t}"}
239
- raise if reraise
254
+ raise unless root_msg
240
255
  msg.close
241
256
  return {
242
257
  command: {status: -1},
@@ -1,5 +1,5 @@
1
1
  module Libis
2
2
  module Format
3
- VERSION = '1.2.6'
3
+ VERSION = '1.2.7'
4
4
  end
5
5
  end
data/libis-format.gemspec CHANGED
@@ -40,7 +40,7 @@ Gem::Specification.new do |spec|
40
40
  spec.add_runtime_dependency 'chromaprint', '~> 0.0.2'
41
41
  spec.add_runtime_dependency 'naturally', '~> 2.1'
42
42
  spec.add_runtime_dependency 'pdfinfo', '~> 1.4'
43
- spec.add_runtime_dependency 'ruby-msg-nx'
43
+ spec.add_runtime_dependency 'libis-mapi', '~> 0.3'
44
44
  spec.add_runtime_dependency 'new_rfc_2047'
45
45
  spec.add_runtime_dependency 'pdfkit'
46
46
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: libis-format
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.6
4
+ version: 1.2.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kris Dekeyser
@@ -179,19 +179,19 @@ dependencies:
179
179
  - !ruby/object:Gem::Version
180
180
  version: '1.4'
181
181
  - !ruby/object:Gem::Dependency
182
- name: ruby-msg-nx
182
+ name: libis-mapi
183
183
  requirement: !ruby/object:Gem::Requirement
184
184
  requirements:
185
- - - ">="
185
+ - - "~>"
186
186
  - !ruby/object:Gem::Version
187
- version: '0'
187
+ version: '0.3'
188
188
  type: :runtime
189
189
  prerelease: false
190
190
  version_requirements: !ruby/object:Gem::Requirement
191
191
  requirements:
192
- - - ">="
192
+ - - "~>"
193
193
  - !ruby/object:Gem::Version
194
- version: '0'
194
+ version: '0.3'
195
195
  - !ruby/object:Gem::Dependency
196
196
  name: new_rfc_2047
197
197
  requirement: !ruby/object:Gem::Requirement