activeadmin-exporter 0.0.2 → 0.0.3

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
- SHA1:
3
- metadata.gz: d41bab04aa0559e53eec7455e8faaa02ebfa5a38
4
- data.tar.gz: c1a6ccc6419428f41e5b0baf9a5a5bc46dd4c7f8
2
+ SHA256:
3
+ metadata.gz: '0419a7f8744f2fdf47941b1f1536d51f54a2e48f6f92f9f7978e430f60d66b7a'
4
+ data.tar.gz: 9702118cd4a63d45e120fb96159f911d3b962988c06cd4d7d4d5214fb8fe8b72
5
5
  SHA512:
6
- metadata.gz: 0d1b11b2a104c5b43081e0715917ca93b643b0ea053513095ebefc6be5078fa7d71997449154edc8730fdc0f3b0380a16f259d3c6706f7f6fe6de725bd9706e3
7
- data.tar.gz: 740e76c53b2da615dae32579b761a8064f70d28c63a0a73891d873a749fc5dacc9678c3ec19537b3d8b62dad2e8cf431af62201e0ae414a46603e0875a73b32b
6
+ metadata.gz: d47a8a43bf235000b540e0b06b49d0e2195fcc0a5987126ec603b73811a6901674f45b9c12090b19bc027ce8196c49d3cbc8b062039682fda499cd55a1e2246b
7
+ data.tar.gz: 27f460d1c1e7bf1ef83709f04e48651b5f2461126866003ed87cf424ebb10507f8db29b331dfa6f1ec16b4d8b3231468b2b2ec98e2b2bbc5f205aaf7b3f49e08
@@ -6,9 +6,9 @@ Gem::Specification.new do |gem|
6
6
  gem.version = ActiveAdmin::Exporter::VERSION
7
7
  gem.authors = ['Nikita Anistratenko']
8
8
  gem.email = ['steverovsky@gmail.com']
9
- gem.description = %q{ActiveAdmin plugin for expanding export possibilities.}
9
+ gem.description = %q(ActiveAdmin plugin for expanding export possibilities.)
10
10
  gem.summary = %q{Allows to asynchronously pack export result in ZIP and send it to email.}
11
- gem.homepage = "https://github.com/steverovsky/activeadmin-exporter"
11
+ gem.homepage = 'https://github.com/steverovsky/activeadmin-exporter'
12
12
 
13
13
  gem.files = `git ls-files`.split("\n")
14
14
  gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
@@ -1,23 +1,29 @@
1
1
  module ActiveAdmin
2
2
  module Exporter
3
3
  class ExporterMailer < ActionMailer::Base
4
+ DEFAULT_TEMPLATE_PATH = '/admin_mailer'.freeze
5
+ DEFAULT_TEMPLATE_NAME = 'message_export'.freeze
6
+
7
+ layout 'mailer'
8
+
4
9
  def csv_export(recipient_email, class_name, params_json)
5
10
  params = JSON.parse(params_json)
6
11
  controller = class_name.constantize.new
7
- controller.send('params=', params)
12
+ controller.send('params=', params.merge(email: recipient_email))
8
13
 
9
14
  config = controller.send(:active_admin_config)
10
15
  csv_filename = controller.send(:csv_filename)
16
+ entity_name = controller.send(:resource_collection_name)
11
17
  zip_filename = csv_filename.sub('.csv', '.zip')
12
18
 
13
19
  def controller.find_collection(options = {})
14
- options[:only] = [
15
- :sorting,
16
- :filtering,
17
- :scoping,
18
- :includes,
19
- :pagination,
20
- :collection_decorator
20
+ options[:only] = %i[
21
+ sorting
22
+ filtering
23
+ scoping
24
+ includes
25
+ pagination
26
+ collection_decorator
21
27
  ]
22
28
 
23
29
  collection = scoped_collection
@@ -33,12 +39,19 @@ module ActiveAdmin
33
39
  end
34
40
 
35
41
  attachments[zip_filename] = zip.string
42
+ subject = I18n.t(
43
+ 'message.active_admin_export_subject',
44
+ entity_name: entity_name.to_s.humanize,
45
+ default: zip_filename
46
+ )
36
47
 
37
48
  mail(
49
+ layout: 'mailer',
38
50
  to: recipient_email,
39
- subject: zip_filename,
40
- body: 'See attached.',
41
- from: ActiveAdmin::Exporter.from_email_address
51
+ subject: subject,
52
+ from: ActiveAdmin::Exporter.from_email_address,
53
+ template_path: DEFAULT_TEMPLATE_PATH,
54
+ template_name: DEFAULT_TEMPLATE_NAME
42
55
  )
43
56
  end
44
57
  end
@@ -1,5 +1,5 @@
1
1
  module ActiveAdmin
2
2
  module Exporter
3
- VERSION = '0.0.2'
3
+ VERSION = '0.0.3'.freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activeadmin-exporter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nikita Anistratenko
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-12-15 00:00:00.000000000 Z
11
+ date: 2018-08-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activeadmin
@@ -90,7 +90,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
90
90
  version: '0'
91
91
  requirements: []
92
92
  rubyforge_project:
93
- rubygems_version: 2.6.11
93
+ rubygems_version: 2.7.7
94
94
  signing_key:
95
95
  specification_version: 4
96
96
  summary: Allows to asynchronously pack export result in ZIP and send it to email.