closeio 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
2
  SHA1:
3
- metadata.gz: 1600ceff9b8b8494a591515b366f7424113acbae
4
- data.tar.gz: b626c8c44011b2a2935070ba53121548a8f44248
3
+ metadata.gz: ea6a4a1f762b4139125b1fc84086e9daaadc347f
4
+ data.tar.gz: e11a5d85462411c9193bc89fe6f76efaea38e277
5
5
  SHA512:
6
- metadata.gz: c67cb359a41f27b33d733c0d83a25e26395271e69d8b676e4832da091a2b5e6da40df7edaf20c7b05fe21fc061474081f682094485ff7c20d8cbde09e5a4f0a5
7
- data.tar.gz: c94d6409db8dc05a739ea8c98308433f8b9320f2e5fed69a90bd213f1903584fbfb1a896ba2f046d825a5f0e51131bdee3e2aa39e0edc9e4d1b1d9c6eebe4935
6
+ metadata.gz: da7ce63b158ff8efb8ecbd11d78fcf5bab73ce7930d38cf949774e772b336058b27063d899a52eb5808f5bd83de6f2ac99eba12e3fcde11da8b0933710226872
7
+ data.tar.gz: c444b4a271959194a30eb71393e5f02a8a089f2eceb7442af910b8143d3f25c247777ffe0079fcbd75a7a65f40851b1ec3fb2a4bc1cc2ac3bd9e86a6acec1f27
data/lib/closeio.rb CHANGED
@@ -3,8 +3,8 @@ require 'ostruct'
3
3
  require 'forwardable'
4
4
 
5
5
  require 'closeio/base'
6
- require 'closeio/activity'
7
6
  require 'closeio/contact'
7
+ require 'closeio/email_activity'
8
8
  require 'closeio/email_template'
9
9
  require 'closeio/lead'
10
10
  require 'closeio/organization'
data/lib/closeio/base.rb CHANGED
@@ -21,6 +21,11 @@ module Closeio
21
21
  end
22
22
  end
23
23
 
24
+ def save
25
+ res = put("#{resource_path}#{self.id}", body: opts.to_json)
26
+ res.ok? ? res : bad_response(res)
27
+ end
28
+
24
29
  class << self
25
30
  def bad_response response
26
31
  if response.class == HTTParty::Response
@@ -45,24 +50,36 @@ module Closeio
45
50
  res.success? ? new(res) : bad_response(res)
46
51
  end
47
52
 
53
+ #
54
+ # Closeio::Lead.update '39292', name: "Bluth Company", contacts: [{name: "Buster Bluth", emails: [{email: "cartographer@bluthcompany.com"}]}]
55
+ #
48
56
  def update id, opts={}
49
- put "#{resource_path}#{id}", body: opts.to_json
57
+ put "#{resource_path}#{id}/", body: opts.to_json
50
58
  end
51
59
 
52
- def destroy
60
+ def destroy id
53
61
  if res['data'].is_a? Array
54
62
  raise "Yo I'm an array"
55
63
  else
56
- delete "#{resource_path}#{id}"
64
+ delete "#{resource_path}#{id}/"
57
65
  end
58
-
59
66
  end
60
67
 
61
68
  def find id
62
- res = get "#{resource_path}#{id}"
69
+ res = get "#{resource_path}#{id}/"
63
70
  res.ok? ? new(res) : bad_response(res)
64
71
  end
65
72
 
73
+ def where opts={}
74
+ res = get(resource_path, query: opts)
75
+
76
+ if res.success?
77
+ res['data'].nil? ? [] : res['data'].map{|obj| new(obj)}
78
+ else
79
+ bad_response res
80
+ end
81
+ end
82
+
66
83
  def resource_path
67
84
  klass = name.split('::').last.gsub(/([a-z\d])([A-Z])/,'\1_\2').downcase
68
85
  return "/#{klass}/"
data/lib/closeio/lead.rb CHANGED
@@ -13,6 +13,10 @@ module Closeio
13
13
  end
14
14
  end
15
15
 
16
+ def emails
17
+ Closeio::EmailActivity.where lead_id: self.id
18
+ end
19
+
16
20
  def contact
17
21
  self.contacts.first
18
22
  end
@@ -1,3 +1,3 @@
1
1
  module Closeio
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: closeio
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
  - Taylor Brooks
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-11-22 00:00:00.000000000 Z
11
+ date: 2013-12-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: crack
@@ -96,7 +96,6 @@ files:
96
96
  - Rakefile
97
97
  - closeio.gemspec
98
98
  - lib/closeio.rb
99
- - lib/closeio/activity.rb
100
99
  - lib/closeio/base.rb
101
100
  - lib/closeio/contact.rb
102
101
  - lib/closeio/email_template.rb
@@ -1,3 +0,0 @@
1
- module Closeio
2
- class Activity < Base; end
3
- end