pipe_rocket 0.0.8 → 0.0.9

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
  SHA256:
3
- metadata.gz: 5ef4380618e71039b04168a9d1b42048356f73d874c127b84130703ec02cff3d
4
- data.tar.gz: 8815dd93220d4e9942487df88b38bfa307e7f16faeeebe3112919885c462fb02
3
+ metadata.gz: 2e5612761b5d65167233f7f48549a4de1bb6d242c3f9c055e605e3db64e8c899
4
+ data.tar.gz: da1d113d2ffd7b29d43dba286c99e94aa1c3777fd1ef4fe7ac5d53bf68100821
5
5
  SHA512:
6
- metadata.gz: 1e26b97d8acad5f9dd52a0deb5708e038caacccb0a2aacaf14a8c6343ad2169c1f0fd80290ed8767914fec500abcd253185b45834d66334000dceca708abceb1
7
- data.tar.gz: 3493e839c3ff80715ed55a2a6125549a704aa1d7d80cb3955201f98cbab206cf9fca99b038bf0dc13db402bdd296d1c46c38abe897c4795b17af03af5946230f
6
+ metadata.gz: ad0dd3b964eca8065b6a1fb5d6c6a521c7f094f860faa28284929b0d2be5a35eaa382435a388bcbd4dc631c3b4f4fefb6399b82a4ebfb2a3ef242834b40aca9b
7
+ data.tar.gz: 52ed8ee4f5b9dc19d7265aefd678c659554f658c8a79f914b99bb6fa5efa5ed00be55dde573eaf214a90dc38e92b841791feb84d5edf6c8f6df2f4aadd1891b7
@@ -52,7 +52,10 @@ module PipeRocket
52
52
  end
53
53
 
54
54
  def files
55
- Pipedrive.deals.deal_files(self.id)
55
+ mail_files = Pipedrive.deals.deal_mail_messages(self.id).inject([]) do |res, message|
56
+ res + message.files
57
+ end
58
+ Pipedrive.deals.deal_files(self.id) + mail_files
56
59
  end
57
60
  end
58
61
  end
@@ -18,5 +18,21 @@ module PipeRocket
18
18
  raise PipeRocket::Error.new(408)
19
19
  end
20
20
 
21
+ def deal_mail_messages(deal_id)
22
+ uri = build_uri({}, deal_id, 'mailMessages')
23
+ response = HTTP.get(uri)
24
+
25
+ case response.code
26
+ when 200
27
+ json_array = ::JSON.parse(response)['data']
28
+ return [] unless json_array
29
+ json_array.map{|raw|build_entity(raw['data'], 'mailMessage')}
30
+ else
31
+ raise PipeRocket::Error.new(response.code)
32
+ end
33
+ rescue HTTP::ConnectionError
34
+ raise PipeRocket::Error.new(408)
35
+ end
36
+
21
37
  end
22
38
  end
@@ -0,0 +1,11 @@
1
+ module PipeRocket
2
+ class MailMessage < Entity
3
+ attr_accessor :files
4
+ def initialize(hash)
5
+ super(hash)
6
+ @files = hash['attachments'].map do |file|
7
+ PipeRocket::File.new(file)
8
+ end
9
+ end
10
+ end
11
+ end
@@ -2,6 +2,7 @@ require 'http'
2
2
  require 'pipe_rocket/deal'
3
3
  require 'pipe_rocket/deal_field'
4
4
  require 'pipe_rocket/file'
5
+ require 'pipe_rocket/mail_message'
5
6
  require 'pipe_rocket/note'
6
7
  require 'pipe_rocket/organization'
7
8
  require 'pipe_rocket/organization_field'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pipe_rocket
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8
4
+ version: 0.0.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Agafonov Maksim
@@ -48,6 +48,7 @@ files:
48
48
  - lib/pipe_rocket/field_service.rb
49
49
  - lib/pipe_rocket/file.rb
50
50
  - lib/pipe_rocket/file_service.rb
51
+ - lib/pipe_rocket/mail_message.rb
51
52
  - lib/pipe_rocket/note.rb
52
53
  - lib/pipe_rocket/organization.rb
53
54
  - lib/pipe_rocket/organization_field.rb