Sha256: 0fe9ca43f0cdc017e6af861897bc83d0a95dd07d9e6c4357c4d7eae3e5e26d26
Contents?: true
Size: 1.19 KB
Versions: 1
Compression:
Stored size: 1.19 KB
Contents
require "roda" module Rodauth module Rails # The superclass for creating a Rodauth middleware. class App < Roda plugin :middleware plugin :hooks plugin :render, layout: false def self.configure(name = nil, **options, &block) unless options[:json] == :only require "rodauth/rails/flash" plugin Flash end plugin :rodauth, name: name, csrf: false, flash: false, **options do # load the Rails integration enable :rails # database functions are more complex to set up, so disable them by default use_database_authentication_functions? false # avoid having to set deadline values in column default values set_deadline_values? true # use HMACs for additional security hmac_secret { ::Rails.application.secrets.secret_key_base } # evaluate user configuration instance_exec(&block) end end before do (opts[:rodauths] || {}).each do |name, _| if name env["rodauth.#{name}"] = rodauth(name) else env["rodauth"] = rodauth end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rodauth-rails-0.6.0 | lib/rodauth/rails/app.rb |