Sha256: 44043581ee94dc3d26809e031b29415f99bf28f9a514047116e18fdb77b04912

Contents?: true

Size: 1.23 KB

Versions: 6

Compression:

Stored size: 1.23 KB

Contents

module Phcscriptcdnpro
  class ApplicationController < ActionController::Base

  	# Load Helpers for PHCPress Widgets
  	before_action :phcpress_recent_posts

    # Security Filters
    protect_from_forgery with: :exception

    # Load Helpers
    helper Phctitleseo::Engine.helpers
    helper Phcnotifi::Engine.helpers
    helper Phcaccountspro::Engine.helpers

    # AuthRocket Definitions
    def require_user
      unless current_user
        params.permit!
        session[:last_url] = request.get? ? url_for(params) : url_for
        redirect_to new_login_url
      end
    end

    def current_user
      @_current_user ||= AuthRocket::Session.from_token(session[:ar_token]).try(:user)
    end
    helper_method :current_user

    def new_login_url
      ENV['AUTHROCKET_LOGIN_URL']
    end
    helper_method :new_login_url

    def authrocket_membership_info
      AuthRocket::Membership.all(user_id: current_user.id).first
    end

    # Papertrail Whodunnit Username
    def user_for_paper_trail
      # Default is: current_user rescue nil
      current_user ? current_user.username : 'Public user'
    end

    private

  	# PHCPress Widget Helpers
  	def phcpress_recent_posts
  		@recent_posts = Phcpresspro::Article::Post.all
  	end

  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
phcscriptcdnpro-24.0.0 app/controllers/phcscriptcdnpro/application_controller.rb
phcscriptcdnpro-23.0.0 app/controllers/phcscriptcdnpro/application_controller.rb
phcscriptcdnpro-22.1.0 app/controllers/phcscriptcdnpro/application_controller.rb
phcscriptcdnpro-22.0.0 app/controllers/phcscriptcdnpro/application_controller.rb
phcscriptcdnpro-21.1.0 app/controllers/phcscriptcdnpro/application_controller.rb
phcscriptcdnpro-21.0.0 app/controllers/phcscriptcdnpro/application_controller.rb