Chatwoot/app/controllers/application_controller.rb
2022-09-14 21:18:26 +05:30

39 lines
947 B
Ruby

class ApplicationController < ActionController::Base
include DeviseTokenAuth::Concerns::SetUserByToken
include RequestExceptionHandler
include Pundit::Authorization
include SwitchLocale
skip_before_action :verify_authenticity_token
before_action :set_current_user, unless: :devise_controller?
around_action :switch_locale
around_action :handle_with_exception, unless: :devise_controller?
private
def set_current_user
@user ||= current_user
Current.user = @user
end
def pundit_user
{
user: Current.user,
account: Current.account,
account_user: Current.account_user
}
end
def append_info_to_payload(payload)
super
payload[:level] = case payload[:status]
when 200
'INFO'
when 302
'WARN'
else
'ERROR'
end
end
end