klaviyo-rails 0.7.3 → 0.7.5

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: 626e74f9be017b20bf5ac36ca6cd85be887cdafe
4
- data.tar.gz: f2343591fe5f99da6025643f43caaadf653a7390
3
+ metadata.gz: 7aaee5a9710d983eec7b5a4405b0fe811de8c3ca
4
+ data.tar.gz: 4d975308b63e4559e96f79d8c2db9e4600be0aa7
5
5
  SHA512:
6
- metadata.gz: 34b3d7b7914831e5ea7edee4c069bb3c9b79fd7c950cbd8a2b23984119eb26f93ad8296e9e87151314493b6041478bd5860c2ebdbd02483a6a556b1dd2c8b895
7
- data.tar.gz: 9dd398f11dbd139db88b156eecf82e39aaaca51ddd4fec3940d18f81fe9a6e183d4260c2fb5dc0b4bdcb1632724c2a662f0c0bf3a0038a31e5e9dc9e233c71f3
6
+ metadata.gz: 1377a7f0ef0c361783c33b63197e47556ce04ecf3404e88e9389f447de82cc7df16f84e324ce9b08eb43e0a23d7d1b28716aa259496aa52f8ebbeb8b7675040a
7
+ data.tar.gz: 17c1f1e4eaa4c0c0137016307e4cf870aca7a11b83710aee7c7595e05b5e57a3a21765a22fb68a6c307af8fd6d4c0d1c164725eba50dbd96378a6ae7677f46ef
@@ -18,7 +18,7 @@ Gem::Specification.new do |spec|
18
18
  spec.require_paths = ["lib"]
19
19
 
20
20
 
21
- spec.add_runtime_dependency('parallel588-klaviyo', "~> 0.12.0")
21
+ spec.add_runtime_dependency('parallel588-klaviyo', "~> 0.13.0")
22
22
  spec.add_runtime_dependency('actionmailer', ['>= 3.1', '< 6.0'])
23
23
 
24
24
  spec.add_development_dependency "bundler", "~> 1.11"
@@ -11,8 +11,29 @@ module KlaviyoRails
11
11
  end
12
12
 
13
13
  def deliver!(mail)
14
-
15
- response = client.templates.render_and_send(klaviyo_message(mail))
14
+ if mail['as_event'] && mail['as_event'].value.to_s == 'true'
15
+ response = client.event.track(
16
+ event_name: mail['event_name'].value,
17
+ customer_properties: {
18
+ '$email': mail['to'].to_s
19
+ },
20
+ properties: {
21
+ email: mail['to'].to_s,
22
+ '$event_id': mail.object_id,
23
+ date: Time.current,
24
+ #context: { e: 1 },
25
+ context: mail['context'].value,
26
+ subject: mail['subject'].to_s,
27
+ to: mail['to'].to_s,
28
+ from:{
29
+ name: from_name(mail),
30
+ email: from_email(mail)
31
+ }
32
+ }
33
+ )
34
+ else
35
+ response = client.templates.render_and_send(klaviyo_message(mail))
36
+ end
16
37
 
17
38
  if settings[:return_response]
18
39
  response
@@ -26,22 +47,32 @@ module KlaviyoRails
26
47
  def klaviyo_message(message)
27
48
  @klaviyo_message = {
28
49
  id: message['template_id'].value,
29
- context: message['context'].value,
50
+ context: JSON.dump(message['context'].value),
30
51
  service: settings.fetch(:service) { 'klaviyo' },
31
52
  subject: message['subject'].to_s,
32
53
  to: message['to'].to_s
33
54
  }
34
55
 
35
- if message['from']
36
- @klaviyo_message[:from_email] = message['from'].addresses.first
37
- unless message['from'].display_names.compact.empty?
38
- @klaviyo_message[:from_name] = message['from'].display_names.compact.first
39
- end
40
- end
56
+ @klaviyo_message[:from_email] = from_email(message) if from_email(message)
57
+ @klaviyo_message[:from_name] = from_name(message) if from_name(message)
41
58
 
42
59
  @klaviyo_message
43
60
  end
44
61
 
62
+ def from_email(message)
63
+ @from_email ||= message['from'] && message['from'].addresses.first
64
+ end
65
+
66
+ def from_name(message)
67
+ @from_name ||
68
+ begin
69
+ unless message['from'].display_names.compact.empty?
70
+ @from_name = message['from'].display_names.compact.first
71
+ end
72
+ end
73
+ @from_name
74
+ end
75
+
45
76
  def client
46
77
  @client ||= ::Klaviyo::Client.new(settings[:secret_key], settings[:token])
47
78
  end
@@ -1,3 +1,3 @@
1
1
  module KlaviyoRails
2
- VERSION = "0.7.3"
2
+ VERSION = "0.7.5"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: klaviyo-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.3
4
+ version: 0.7.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Maxim Pechnikov
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-06-22 00:00:00.000000000 Z
11
+ date: 2016-06-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: parallel588-klaviyo
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.12.0
19
+ version: 0.13.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.12.0
26
+ version: 0.13.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: actionmailer
29
29
  requirement: !ruby/object:Gem::Requirement