Sha256: df3b2332cffc05890c33898a1bd4c36856de6df94434c182616beb33f669c975

Contents?: true

Size: 902 Bytes

Versions: 4

Compression:

Stored size: 902 Bytes

Contents

require 'ransack' if Itsf::Backend.features?(:ransack)
require 'kaminari' if Itsf::Backend.features?(:kaminari)

module Itsf::Backend
  class Service::BaseController < Configuration.service_base_controller.constantize
    if Itsf::Backend.features?(:pundit)
      include Pundit
      include Controller::PunditNamespacedAuthorizeConcern 
      include Controller::PunditAuthorizationFailureHandlingConcern
    end

    include Controller::ServiceInflectionsConcern
    include Controller::ServiceUrlsConcern
    include Controller::ServiceActionsConcern
    include Controller::JsonApiConcern
    include Controller::FeatureFlagsConcern
    helper Itsf::Backend::ApplicationHelper

    layout 'itsf/backend/base'

    helper_method :service_class

    def self.service_class
      name.gsub('Controller', '').constantize
    end

    def service_class
      self.class.service_class
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
itsf_backend-3.0.3 app/controllers/itsf/backend/service/base_controller.rb
itsf_backend-3.0.2 app/controllers/itsf/backend/service/base_controller.rb
itsf_backend-3.0.1 app/controllers/itsf/backend/service/base_controller.rb
itsf_backend-3.0.0 app/controllers/itsf/backend/service/base_controller.rb