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 +4 -4
- data/lib/libis/format/tool/msg_to_pdf.rb +19 -4
- data/lib/libis/format/version.rb +1 -1
- data/libis-format.gemspec +1 -1
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a1b5fdec2f726d83572f66f78b361b8500247bcf5bdcce56e633998b88758bc4
|
4
|
+
data.tar.gz: 0b09d4cc45338b9c1060c89d80f94ad171e8d2bc43da17b20cd2357521ef78f4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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,
|
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,
|
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
|
254
|
+
raise unless root_msg
|
240
255
|
msg.close
|
241
256
|
return {
|
242
257
|
command: {status: -1},
|
data/lib/libis/format/version.rb
CHANGED
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 '
|
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.
|
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:
|
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
|