amocrm-rails 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
data/lib/amocrm-rails.rb CHANGED
@@ -6,19 +6,27 @@ require 'amocrm-rails/response'
6
6
  module AmocrmRails
7
7
  class << self
8
8
  def generate_access_token(client_id=AmocrmRails.client_id, client_secret=AmocrmRails.client_secret, refresh_token=nil, count=0)
9
+ refresh_token ||= AmocrmRails.try(:refresh_token)
9
10
  params = {
10
11
  client_id: client_id,
11
12
  client_secret: client_secret,
12
- grant_type: 'authorization_code',
13
- redirect_uri: AmocrmRails.redirect_uri
14
13
  }
15
14
  if refresh_token.present?
15
+ params[:grant_type] = 'refresh_token'
16
16
  params[:refresh_token] = refresh_token
17
17
  else
18
+ params[:grant_type] = 'authorization_code'
18
19
  params[:code] = AmocrmRails.code
19
20
  end
21
+ params[:redirect_uri] = AmocrmRails.redirect_uri
20
22
  response = Faraday.post(AmocrmRails.url_token, params.to_json, "Content-Type" => "application/json")
21
- if response.status < 200 || response.status > 204
23
+ if AmocrmRails::Request.debug
24
+ logger = AmocrmRails::Request.logger || ::Logger.new(STDOUT)
25
+ logger.info "---generate_access_token---"
26
+ logger.info "params: #{params}"
27
+ logger.info "Responding with #{response.status.inspect} => #{response.body.inspect}"
28
+ end
29
+ if response.status >= 200 && response.status <= 204
22
30
  response_token = JSON.parse(response.body)
23
31
  data = YAML.load_file("config/amocrm_token.yml")
24
32
  response_token.each do |k, v|
@@ -26,7 +34,7 @@ module AmocrmRails
26
34
  AmocrmRails::register k.underscore.to_sym, v
27
35
  end
28
36
  File.open("config/amocrm_token.yml", 'w') { |f| YAML.dump(data, f) }
29
- elsif count < 3
37
+ elsif count < 3 && AmocrmRails.refresh_token.present?
30
38
  AmocrmRails.generate_access_token(client_id, client_secret, AmocrmRails.refresh_token, count+1)
31
39
  end
32
40
  end
@@ -1,4 +1,4 @@
1
1
  token_type: Bearer
2
2
  expires_in: 86400
3
3
  access_token: '***'
4
- refresh_token: '***'
4
+ refresh_token: ''
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: amocrm-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pavel Osetrov