griddler 1.0.0.pre.alpha.1 → 1.0.0.pre.alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e799f0b0004bfe2b6628c40f370f2f16eab17223
4
- data.tar.gz: b82b19547ba1ed0280e2e16460c54d4c22ed6cd0
3
+ metadata.gz: 14d0542f8b3e4760904cd0cae896aa2f2b38bfef
4
+ data.tar.gz: ce6967089ef0171910af88f294a6a6aafba876fc
5
5
  SHA512:
6
- metadata.gz: 240c7e9eda058081f8ee93e55f564f4c2a2683506c40d929cfc8fba43fbcbd7787fd91eef94871c272062ba9ae683a144e50cbcc442ddb2f3d22555c6762d35d
7
- data.tar.gz: b5c5a4c2ad91fdaf9816178409cb12daca799ba9dd6be5e7311adf758bc879dfd14cf62e8fa0c7742a79e6c18a00c76b6581ae8ad929daa33af8fa46bc3839e7
6
+ metadata.gz: b4163d740d3bccefdb2339663331a3ffa8a3bb7e5caa7687188a21446a143a2670588b2c4b3654a35e99455f64a4c843d2ace43ebc60e0fb1ef9b6ad40ef1067
7
+ data.tar.gz: 88a91945c578a51cda0f769715533ab6fa66431d7f9e7ccc59dd4f195a19e7936a20c6873df444b35c81a37eca3866cf4b64065f5939dbfdabe726820adc8d46
data/README.md CHANGED
@@ -166,9 +166,11 @@ adapter gem in addition to `griddler`.
166
166
  | ------- | -------
167
167
  | sendgrid | [griddler-sendgrid]
168
168
  | mandrill | [griddler-mandrill]
169
+ | mailgun | [griddler-mailgun]
169
170
 
170
171
  [griddler-sendgrid]: https://github.com/thoughtbot/griddler-sendgrid
171
172
  [griddler-mandrill]: https://github.com/wingrunr21/griddler-mandrill
173
+ [griddler-mailgun]: https://github.com/bradpauly/griddler-mailgun
172
174
 
173
175
  Writing an Adapter
174
176
  ------------------
data/lib/griddler.rb CHANGED
@@ -9,11 +9,10 @@ require 'griddler/route_extensions'
9
9
  require 'griddler/adapter_registry'
10
10
  require 'griddler/adapters/cloudmailin_adapter'
11
11
  require 'griddler/adapters/postmark_adapter'
12
- require 'griddler/adapters/mailgun_adapter'
13
12
 
14
13
  require 'griddler/sendgrid'
15
14
  require 'griddler/mandrill'
15
+ require 'griddler/mailgun'
16
16
 
17
17
  Griddler.adapter_registry.register(:cloudmailin, Griddler::Adapters::CloudmailinAdapter)
18
18
  Griddler.adapter_registry.register(:postmark, Griddler::Adapters::PostmarkAdapter)
19
- Griddler.adapter_registry.register(:mailgun, Griddler::Adapters::MailgunAdapter)
@@ -1,3 +1,3 @@
1
1
  module Griddler
2
- VERSION = "1.0.0-alpha.1"
2
+ VERSION = "1.0.0-alpha.2"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: griddler
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.pre.alpha.1
4
+ version: 1.0.0.pre.alpha.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Caleb Thompson
@@ -100,7 +100,6 @@ files:
100
100
  - lib/griddler.rb
101
101
  - lib/griddler/adapter_registry.rb
102
102
  - lib/griddler/adapters/cloudmailin_adapter.rb
103
- - lib/griddler/adapters/mailgun_adapter.rb
104
103
  - lib/griddler/adapters/postmark_adapter.rb
105
104
  - lib/griddler/configuration.rb
106
105
  - lib/griddler/email.rb
@@ -1,65 +0,0 @@
1
- module Griddler
2
- module Adapters
3
- class MailgunAdapter
4
- def initialize(params)
5
- @params = params
6
- end
7
-
8
- def self.normalize_params(params)
9
- adapter = new(params)
10
- adapter.normalize_params
11
- end
12
-
13
- def normalize_params
14
- params.merge(
15
- to: tos,
16
- cc: ccs,
17
- text: params['body-plain'],
18
- html: params['body-html'],
19
- headers: params['message-headers'],
20
- attachments: attachment_files
21
- )
22
- end
23
-
24
- private
25
-
26
- attr_reader :params
27
-
28
- def tos
29
- to = param_or_header(:To)
30
- to = params[:recipient] unless to
31
- to.split(',').map(&:strip)
32
- end
33
-
34
- def ccs
35
- cc = param_or_header(:Cc)
36
- cc.split(',').map(&:strip)
37
- end
38
-
39
- def extract_header(key)
40
- return nil unless params['message-headers'].present?
41
-
42
- headers = params['message-headers'].select do |h|
43
- h.first.to_s == key.to_s
44
- end
45
- headers.flatten.last
46
- end
47
-
48
- def param_or_header(key)
49
- if params[key].present?
50
- params[key]
51
- else
52
- extract_header(key)
53
- end
54
- end
55
-
56
- def attachment_files
57
- attachment_count = params['attachment-count'].to_i
58
-
59
- attachment_count.times.map do |index|
60
- params.delete("attachment-#{index+1}")
61
- end
62
- end
63
- end
64
- end
65
- end