lib/auth_lh.rb in auth-lh-0.3.2 vs lib/auth_lh.rb in auth-lh-0.4.0
- old
+ new
@@ -1,9 +1,8 @@
module AuthLh
def self.configure(args={})
- @endpoint = (args[:endpoint] || 'https://auth.lhconfort.com.ar')
- @return_url = args[:return_url]
+ @endpoint = (args[:endpoint] || 'https://usuarios.lhconfort.com.ar')
@application_code = args[:application_code]
@access_token = args[:access_token]
end
def self.get_user(code_or_login)
@@ -18,20 +17,10 @@
def self.get_users_extended
results = get_request('/api/users/extended')
results.map { |r| UserExtended.new(r) }
end
- def self.get_current_user(session_token, remote_ip)
- result = get_request '/api/current_user', {
- app_code: @application_code,
- session_token: session_token,
- remote_ip: remote_ip
- }
-
- SessionResponse.new(result)
- end
-
def self.get_external_apps
results = get_request('/api/external_apps')
results.map { |r| ExternalApp.new(r) }
end
@@ -42,42 +31,58 @@
def self.get_role(code)
Role.new(get_request("/api/roles/#{code}"))
end
- def self.login_url
- login_attempt = create_login_attempt
- "#{@endpoint}/login?attempt=#{login_attempt.token}"
+ def self.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
- def self.logout_url
- "#{@endpoint}/logout?return_url=#{CGI::escape(@return_url)}"
+ def self.get_current_shop(ip_address=nil)
+ attrs = { ip: ip_address }
+ get_request('/api/whatsmyshop', attrs)['shop_codes']
end
- def self.change_password_url
- "#{@endpoint}/change_password?return_url=#{CGI::escape(@return_url)}"
+ def self.login_url(return_url=nil)
+ if return_url.present?
+ "#{@endpoint}/login?return_url=#{CGI::escape(return_url)}"
+ else
+ "#{@endpoint}/login"
+ end
end
- def self.whatsmyshop(ip_address=nil)
- attrs = { ip: ip_address }
- get_request('/api/whatsmyshop', attrs)['shop_codes']
+ def self.logout_url(return_url=nil)
+ if return_url.present?
+ "#{@endpoint}/logout?return_url=#{CGI::escape(return_url)}"
+ else
+ "#{@endpoint}/logout"
+ end
end
- protected
+ def self.change_password_url(return_url=nil)
+ if return_url.present?
+ "#{@endpoint}/change_password?return_url=#{CGI::escape(return_url)}"
+ else
+ "#{@endpoint}/change_password"
+ end
+ end
- def self.create_login_attempt
- LoginAttempt.new(post_request('/api/login_attempts', {
- return_url: @return_url
- }))
+ def self.my_apps_url
+ "#{@endpoint}"
end
+ protected
+
def self.get_request(action, params={})
response = RestClient.get("#{@endpoint}#{action}", {params: params}.merge(auth_headers))
JSON.parse(response.body)
- end
-
- def self.post_request(action, params={})
- JSON.parse(RestClient.post("#{@endpoint}#{action}", params, auth_headers))
end
def self.auth_headers
{ authorization: "Token token=\"#{@access_token}\"" }
end