class AuthLh::Api
Public Class Methods
new(args={})
click to toggle source
# 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
Public Instance Methods
change_password_url(return_url=nil)
click to toggle source
# 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)
click to toggle source
# 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)
click to toggle source
# 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_apps()
click to toggle source
# 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)
click to toggle source
# File lib/auth_lh/api.rb, line 37 def get_role(role_id) Role.new(get_request("/api/roles/#{role_id}")) end
get_roles()
click to toggle source
# 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)
click to toggle source
# File lib/auth_lh/api.rb, line 9 def get_user(login) User.new(get_request("/api/users/#{CGI::escape(login)}")) end
get_users(filters={})
click to toggle source
# 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={})
click to toggle source
# 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)
click to toggle source
# File lib/auth_lh/api.rb, line 58 def login_url(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)
click to toggle source
# 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={})
click to toggle source
# File lib/auth_lh/api.rb, line 13 def update_user(login, attrs={}) User.new(put_request("/api/users/#{CGI::escape(login)}", attrs)) end
Protected Instance Methods
auth_headers()
click to toggle source
# File lib/auth_lh/api.rb, line 104 def auth_headers { authorization: "Token token=\"#{@access_token}\"" } end
get_request(action, params={})
click to toggle source
# File lib/auth_lh/api.rb, line 84 def get_request(action, params={}) response = RestClient.get("#{@endpoint}#{action}", {params: params}.merge(auth_headers)) if response.body == 'null' nil else JSON.parse(response.body) end end
put_request(action, params={})
click to toggle source
# File lib/auth_lh/api.rb, line 94 def put_request(action, params={}) response = RestClient.put("#{@endpoint}#{action}", params, auth_headers) if response.body == 'null' nil else JSON.parse(response.body) end end