rallio 0.4.5 → 0.5.0

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: 173b2cc079841141428af0d262190965338cf565
4
- data.tar.gz: eb80eed426664e0e41b7959fdf6052e31d80ca0a
3
+ metadata.gz: ade13b37179b9aae4933fb452929369d2d3ef1b0
4
+ data.tar.gz: d5465b01ab5f24df3070bf1c3b29fc3fafe66a7b
5
5
  SHA512:
6
- metadata.gz: 9d0e892a1f8692f05565e994680e5e3024054ac1ef50422bce25243c5e322f6627d0d7b06229728c12c5560a5a6f71b29fd8ff5b70ce9fee8c2a3ad55b3fa5f4
7
- data.tar.gz: 2ddced76f1d321a8863449803cda3ce4ee351b2562915d09c99d79f995fa94c141c1a78d625e6981e690f36fed91108854a80322e9adfc8ea692805d038b0a6c
6
+ metadata.gz: 85e9e0598dc5497503604455d420479c5a6ea90088672054d2ffc75a4d22515c0594fe5e1db8dde75ff54b483fa8da672a4bcd10fdf1c48a7ce6b6696cf71280
7
+ data.tar.gz: 97ff5215c8fcdad9de133810d4a359d9987eeb848d5ff5f841ace63fd29555e50462b97ecff899a81d28f5d0313e821f729f880d6a23f4bec395816fe1745385
data/README.md CHANGED
@@ -111,10 +111,7 @@ user.franchisor_ownerships
111
111
  # => [#<Rallio::FranchisorOwnership:0x007f93d8986340 @user_id=100, @franchisor_id=300, @franchisor_name="Awesome Haircuts Franchisor 1">]
112
112
  ```
113
113
 
114
- #### #me
115
-
116
- **NOTE:** This endpoint is in the docs but it appears it may not be implemented.
117
- This will remain here until that is cleared up.
114
+ #### #dashboard
118
115
 
119
116
  This calls out and gets the user info for a given id. All that is needed is to
120
117
  instantiate an instance with a valid user id an calling me will pull the rest
@@ -124,7 +121,7 @@ of the information.
124
121
  user = Rallio::User.new(id: 100)
125
122
  # => <Rallio::User @id=100, @email=nil, @first_name=nil, @last_name=nil, @accounts=[], @franchisors=[]>
126
123
 
127
- user.me
124
+ user.dashboard
128
125
  # => <Rallio::User @id=100, @email="bob@yourcompany.com", @first_name="Bob", @last_name="Anderson", @accounts=[], @franchisors=[]>
129
126
  ```
130
127
 
@@ -301,10 +298,10 @@ account.reviews(access_token: user.access_token)
301
298
  This calls out to get all reviews for a given account or franchisor.
302
299
 
303
300
  ```ruby
304
- # type: can be either of :accounts or :franchisors
305
- # id: is the id for the account or franchisor
301
+ # query_params: possible keys are: :page, :account_id, :franchisor_id, :network
302
+ # :start_date, :end_date, :rating
306
303
  # access_token: is the access token for a Rallio::User
307
- reviews = Rallio::Review.all(type: :accounts, id: 9397, access_token: user.access_token)
304
+ reviews = Rallio::Review.all(query_params: {}, access_token: user.access_token)
308
305
  # => [<Rallio::Review:0x007fcf402de8f0 @access_token="4a25dd89e50bd0a0db1eeae65864fe6b", @id=227704, @account_id=9397, @account_name="Rally-O Tires New York", @network="facebook", @posted_at=#<DateTime: 2017-02-21T23:12:33+00:00 ((2457806j,83553s,0n),+0s,2299161j)>, @user_name="Andy Bobson", @user_image="https://graph.facebook.com/100009872044695/picture", @rating=5.0, @message="This is my favourite place to buy tires!", @comments=[{:user_name=>"Rally-O Tires New York", :user_image=>"https://graph.facebook.com/113397275345614/picture", :message=>"Thanks for the 5 star review!", :created_at=>"2017-02-22T00:49:53.000+00:00"}], @liked=true, @url="https://www.facebook.com/123123123", @can_reply=true, @location_name="Visiting Angels Newburyport MA", @location_image_url="https://scontent.xx.fbcdn.net/v/t1.0-1/p200x200/16266055_1428821143803214_8378119243787669723_n.jpg?oh=3268e6e30474a0aa488cfd896a6d6c06&oe=59357742", @review_reply=nil, @review_reply_at=nil>]
309
306
  ```
310
307
 
data/lib/rallio/review.rb CHANGED
@@ -54,15 +54,25 @@ module Rallio
54
54
  attribute :review_reply, String
55
55
  attribute :review_reply_at, DateTime
56
56
 
57
- # Retreives reviews.
57
+ # Retreives reviews. All query_params are optional. If no query_params are
58
+ # passed in all reviews accessible to user are returned.
58
59
  #
59
- # @param type [String] one of accounts or franchisors to get reviews for
60
- # @param id [Integer] account or franchisor id to get reviews for
60
+ # @param query_params [Hash] params to filter results
61
+ # @option query_params [String] :page results page
62
+ # @option query_params [String] :account_id filter results to one or more
63
+ # accounts, should be seperated by commas
64
+ # @option query_params [String] :franchisor_id filter results to a single
65
+ # franchisor
66
+ # @option query_params [String] :network filter results to one network,
67
+ # possible choices are facebook, google_places, yelp
68
+ # @option query_params [String] :start_date iso8601 date to start on
69
+ # @option query_params [String] :end_date iso8601 date to end on
70
+ # @option query_params [String] :rating filter by rating
61
71
  # @param access_token [String] user access token to use for authorization
62
72
  # @return [Array<Rallio::Review>]
63
- def self.all(type:, id:, access_token:)
73
+ def self.all(query_params: {}, access_token:)
64
74
  headers = { 'Authorization' => "Bearer #{access_token}" }
65
- response = self.get("/#{type}/#{id}/reviews", headers: headers)
75
+ response = self.get("/reviews", query: query_params, headers: headers)
66
76
  response.parsed_response['reviews'].map { |r| new(r) }
67
77
  end
68
78
 
data/lib/rallio/user.rb CHANGED
@@ -14,9 +14,8 @@ module Rallio
14
14
  attribute :email, String
15
15
  attribute :first_name, String
16
16
  attribute :last_name, String
17
- # This may not be needed anymore, API still in flux
18
- #attribute :accounts, Array[Account]
19
- #attribute :franchisors, Array[Franchisor]
17
+ attribute :accounts, Array[Account]
18
+ attribute :franchisors, Array[Franchisor]
20
19
 
21
20
  attr_writer :access_token
22
21
 
@@ -75,13 +74,21 @@ module Rallio
75
74
  FranchisorOwnership.for(access_token: access_token.access_token)
76
75
  end
77
76
 
78
- # Initially this endpoint was in the API docs but it appears it may not be
79
- # implemented. This is here until that gets cleared up.
77
+ # Retreives current data for user.
80
78
  #
81
- # def me
82
- # response = self.class.get('/users/me', headers: user_credentials)
83
- # self.attributes = response.parsed_response
84
- # self
85
- # end
79
+ # @return [Rallio::User]
80
+ def dashboard
81
+ response = self.class.get('/dashboard', headers: user_credentials)
82
+ self.attributes = response.parsed_response
83
+ self
84
+ end
85
+
86
+ private
87
+
88
+ def user_credentials
89
+ {
90
+ 'Authorization' => "Bearer #{access_token.access_token}"
91
+ }
92
+ end
86
93
  end
87
94
  end
@@ -1,3 +1,3 @@
1
1
  module Rallio
2
- VERSION = "0.4.5"
2
+ VERSION = "0.5.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rallio
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.5
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - JD Guzman
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-03-15 00:00:00.000000000 Z
11
+ date: 2017-03-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: virtus