-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathsessions_controller.rb
More file actions
39 lines (30 loc) · 1.17 KB
/
sessions_controller.rb
File metadata and controls
39 lines (30 loc) · 1.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
class ShopkeeperAuth::SessionsController < DeviseTokenAuth::SessionsController
def create
super
return if @resource.blank?
source = request.headers["source"]
return if source.blank?
@resource.current_platform = source
@resource.save!(validate: false)
end
protected
def render_create_success
@resource.token = @token.token
@resource.client = @token.client
@resource.expiry = @token.expiry
@resource.account_id = current_shopkeeper.personal_account.id
render json: ShopkeeperSignInSerializer.new(@resource).serializable_hash, status: :ok
end
def render_create_error_not_confirmed
render json: {code: 401, error_message: I18n.t("devise_token_auth.sessions.not_confirmed", email: @resource.email)}, status: :unauthorized
end
def render_create_error_bad_credentials
render json: {code: 401, error_message: I18n.t("devise_token_auth.sessions.bad_credentials")}, status: :unauthorized
end
def render_destroy_success
render json: {status: 200}, status: :ok
end
def render_destroy_error
render json: {code: 404, error_message: I18n.t("devise_token_auth.sessions.user_not_found")}, status: :not_found
end
end