Sha256: bcec9ec3033545c964e1d690505bf32382bb9ccb6d5fcad85545f4676d4696f6

Contents?: true

Size: 844 Bytes

Versions: 79

Compression:

Stored size: 844 Bytes

Contents

module Apidae
  class ApplicationController < ActionController::Base
    protect_from_forgery with: :exception
    before_action Rails.application.config.apidae_auth
    before_action :check_user_data!

    def apidae_user
      send(Rails.application.config.apidae_user) if Rails.application.config.respond_to?(:apidae_user)
    end

    def user_is_admin?
      apidae_user && Rails.application.config.respond_to?(:apidae_admin) && Rails.application.config.apidae_admin.call(apidae_user)
    end

    def user_has_data?
      apidae_user && apidae_user.respond_to?(:apidae_projects_ids) && !apidae_user.apidae_projects_ids.blank?
    end

    def check_user_data!
      unless user_has_data? || user_is_admin?
        redirect_to main_app.root_path, alert: "Il n'y a aucun projet Apidae associé à votre compte."
      end
    end
  end
end

Version data entries

79 entries across 79 versions & 1 rubygems

Version Path
apidae-2.0.1 app/controllers/apidae/application_controller.rb
apidae-2.0.0 app/controllers/apidae/application_controller.rb
apidae-1.4.13 app/controllers/apidae/application_controller.rb
apidae-1.4.12 app/controllers/apidae/application_controller.rb
apidae-1.4.11 app/controllers/apidae/application_controller.rb
apidae-1.4.10 app/controllers/apidae/application_controller.rb
apidae-1.4.9 app/controllers/apidae/application_controller.rb
apidae-1.4.8 app/controllers/apidae/application_controller.rb
apidae-1.4.7 app/controllers/apidae/application_controller.rb
apidae-1.4.6 app/controllers/apidae/application_controller.rb
apidae-1.4.5 app/controllers/apidae/application_controller.rb
apidae-1.4.4 app/controllers/apidae/application_controller.rb
apidae-1.4.3 app/controllers/apidae/application_controller.rb
apidae-1.2.35 app/controllers/apidae/application_controller.rb
apidae-1.2.34 app/controllers/apidae/application_controller.rb
apidae-1.2.33 app/controllers/apidae/application_controller.rb
apidae-1.4.2 app/controllers/apidae/application_controller.rb
apidae-1.4.1 app/controllers/apidae/application_controller.rb
apidae-1.4.0 app/controllers/apidae/application_controller.rb
apidae-1.2.32 app/controllers/apidae/application_controller.rb