Class: AuthLh::Api

Inherits:
Object
  • Object
show all
Defined in:
lib/auth_lh/api.rb

Instance Method Summary collapse

Constructor Details

#initialize(args = {}) ⇒ Api

Returns a new instance of Api.



3
4
5
6
7
# File 'lib/auth_lh/api.rb', line 3

def initialize(args={})
  @endpoint = (args[:endpoint] || 'https://usuarios.lhconfort.com.ar')
  @application_code = args[:application_code]
  @access_token = args[:access_token]
end

Instance Method Details

#change_password_url(return_url = nil) ⇒ Object



74
75
76
77
78
79
80
# File 'lib/auth_lh/api.rb', line 74

def change_password_url(return_url=nil)
  if return_url.present?
    "#{@endpoint}/current_user/password/edit?return_url=#{CGI::escape(return_url)}"
  else
    "#{@endpoint}/current_user/password/edit"
  end
end

#get_current_shop(ip_address = nil) ⇒ Object



52
53
54
55
56
# File 'lib/auth_lh/api.rb', line 52

def get_current_shop(ip_address=nil)
  attrs = { ip: ip_address }
  response = get_request('/api/current_shop', attrs)
  response.nil? ? nil : Shop.new(response)
end

#get_current_user(session_token, remote_ip, return_url = nil) ⇒ Object



41
42
43
44
45
46
47
48
49
50
# File 'lib/auth_lh/api.rb', line 41

def get_current_user(session_token, remote_ip, return_url=nil)
  result = get_request '/api/current_user', {
    app_code: @application_code,
    session_token: session_token,
    remote_ip: remote_ip,
    return_url: return_url
  }

  SessionResponse.new(result)
end

#get_external_appsObject



27
28
29
30
# File 'lib/auth_lh/api.rb', line 27

def get_external_apps
  results = get_request('/api/external_apps')
  results.map { |r| ExternalAppExtended.new(r) }
end

#get_role(role_id) ⇒ Object



37
38
39
# File 'lib/auth_lh/api.rb', line 37

def get_role(role_id)
  Role.new(get_request("/api/roles/#{role_id}"))
end

#get_rolesObject



32
33
34
35
# File 'lib/auth_lh/api.rb', line 32

def get_roles
  results = get_request('/api/roles')
  results.map { |r| Role.new(r) }
end

#get_user(login) ⇒ Object



9
10
11
# File 'lib/auth_lh/api.rb', line 9

def get_user()
  User.new(get_request("/api/users/#{CGI::escape()}"))
end

#get_users(filters = {}) ⇒ Object



17
18
19
20
# File 'lib/auth_lh/api.rb', line 17

def get_users(filters={})
  results = get_request('/api/users', filters)
  results.map { |r| User.new(r) }
end

#get_users_extended(filters = {}) ⇒ Object



22
23
24
25
# File 'lib/auth_lh/api.rb', line 22

def get_users_extended(filters={})
  results = get_request('/api/users/extended', filters)
  results.map { |r| UserExtended.new(r) }
end

#login_url(return_url = nil) ⇒ Object



58
59
60
61
62
63
64
# File 'lib/auth_lh/api.rb', line 58

def (return_url=nil)
  if return_url.present?
    "#{@endpoint}/login?return_url=#{CGI::escape(return_url)}"
  else
    "#{@endpoint}/login"
  end
end

#logout_url(return_url = nil) ⇒ Object



66
67
68
69
70
71
72
# File 'lib/auth_lh/api.rb', line 66

def logout_url(return_url=nil)
  if return_url.present?
    "#{@endpoint}/logout?return_url=#{CGI::escape(return_url)}"
  else
    "#{@endpoint}/logout"
  end
end

#update_user(login, attrs = {}) ⇒ Object



13
14
15
# File 'lib/auth_lh/api.rb', line 13

def update_user(, attrs={})
  User.new(put_request("/api/users/#{CGI::escape()}", attrs))
end