Sha256: 9c3a744ff6e4d0d0c7afaeabac4b6cb6704bc92f05ad9ab93ebe7c9ef2bf0185

Contents?: true

Size: 934 Bytes

Versions: 3

Compression:

Stored size: 934 Bytes

Contents

module Brightcontent
  class ApplicationController < ActionController::Base
    add_flash_types :success, :info, :warning, :danger
    before_filter :authorize
    before_filter :set_locale
    helper TranslationHelper
    protect_from_forgery

    def index
      redirect_to polymorphic_url(user_resources.first.klass)
    end

    def default_url_options(options = {})
      { locale: I18n.locale }.merge options
    end

    private

    def set_locale
      I18n.locale = params[:locale] || Brightcontent.locale
    end

    def current_user
      @current_user ||= begin
        Brightcontent.user_model.find(session[:brightcontent_user_id]) if session[:brightcontent_user_id]
      end
    end
    helper_method :current_user

    def user_resources
      @user_resources ||= @current_user.resources
    end
    helper_method :user_resources

    def authorize
      redirect_to login_url unless current_user
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
brightcontent-core-2.4.2 app/controllers/brightcontent/application_controller.rb
brightcontent-core-2.4.1 app/controllers/brightcontent/application_controller.rb
brightcontent-core-2.4.0 app/controllers/brightcontent/application_controller.rb