Sha256: b38b036e528b19189290ace3105e54329bbe93f00c4cbf039dc31980861ce125

Contents?: true

Size: 731 Bytes

Versions: 4

Compression:

Stored size: 731 Bytes

Contents

module Rodauth
  module Rails
    module ControllerMethods
      def self.included(controller)
        # ActionController::API doesn't have helper methods
        if controller.respond_to?(:helper_method)
          controller.helper_method :rodauth, :current_account
        end
      end

      def current_account(name = nil)
        rodauth(name).rails_account || rodauth(name).login_required
      end

      def rodauth(name = nil)
        request.env.fetch ["rodauth", *name].join(".")
      end

      private

      def rodauth_response
        res = catch(:halt) { return yield }

        self.status = res[0]
        self.headers.merge! res[1]
        self.response_body = res[2]

        res
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
rodauth-rails-1.3.0 lib/rodauth/rails/controller_methods.rb
rodauth-rails-1.2.2 lib/rodauth/rails/controller_methods.rb
rodauth-rails-1.2.1 lib/rodauth/rails/controller_methods.rb
rodauth-rails-1.2.0 lib/rodauth/rails/controller_methods.rb