Sha256: 0a80ddd46e939b8dcec0533b5f0051ebc17c4bc3e3e14f43e891926b31a26b56

Contents?: true

Size: 936 Bytes

Versions: 153

Compression:

Stored size: 936 Bytes

Contents

# frozen_string_literal: true

module Motor
  class ApiBaseController < ActionController::API
    include Motor::CurrentUserMethod
    include Motor::CurrentAbility

    if defined?(ActionText::Content)
      before_action do
        ActionText::Content.renderer = Motor::ApplicationController.renderer.new(request.env)
      end
    end

    unless Rails.env.test?
      rescue_from StandardError do |e|
        Rails.logger.error(e)
        Rails.logger.error(e.backtrace.join("\n"))

        render json: { errors: [e.message] }, status: :internal_server_error
      end

      rescue_from CanCan::AccessDenied do |e|
        Rails.logger.error(e)

        if params[:action].in?(%w[create update destroy])
          render json: { errors: [I18n.t('motor.not_authorized_to_perform_action')] }, status: :forbidden
        else
          render json: { errors: [e.message] }, status: :forbidden
        end
      end
    end
  end
end

Version data entries

153 entries across 153 versions & 7 rubygems

Version Path
motor-admin-0.4.36 app/controllers/motor/api_base_controller.rb
motor-admin-0.4.35 app/controllers/motor/api_base_controller.rb
motor-admin-0.4.34 app/controllers/motor/api_base_controller.rb
motor-admin-0.4.33 app/controllers/motor/api_base_controller.rb
motor-admin-0.4.32 app/controllers/motor/api_base_controller.rb
motor-admin-0.4.31 app/controllers/motor/api_base_controller.rb
motor-admin-0.4.30 app/controllers/motor/api_base_controller.rb
motor-admin-0.4.29 app/controllers/motor/api_base_controller.rb
motor-admin-0.4.28 app/controllers/motor/api_base_controller.rb
motor-admin-cstham8-0.4.35 app/controllers/motor/api_base_controller.rb
motor-admin-cstham8-0.4.34 app/controllers/motor/api_base_controller.rb
motor-admin-cstham8-0.4.33 app/controllers/motor/api_base_controller.rb
motor-admin-cstham8-0.4.32 app/controllers/motor/api_base_controller.rb
motor-admin-cstham8-0.4.31 app/controllers/motor/api_base_controller.rb
motor-admin-cstham8-0.4.30 app/controllers/motor/api_base_controller.rb
motor-admin-cstham8-0.4.29 app/controllers/motor/api_base_controller.rb
motor-admin-cstham8-0.4.28 app/controllers/motor/api_base_controller.rb
motor-admin-cstham8-0.4.27 app/controllers/motor/api_base_controller.rb
motor-admin-0.4.27 app/controllers/motor/api_base_controller.rb
motor-admin-unosquare-0.4.28 app/controllers/motor/api_base_controller.rb