class Capcoauth::Rails::Routes
Attributes
routes[RW]
Public Class Methods
install!()
click to toggle source
# File lib/capcoauth/rails/routes.rb, line 14 def self.install! ActionDispatch::Routing::Mapper.send :include, Capcoauth::Rails::Routes::Helper end
new(routes, &block)
click to toggle source
# File lib/capcoauth/rails/routes.rb, line 20 def initialize(routes, &block) @routes, @block = routes, block end
Public Instance Methods
generate_routes!(options)
click to toggle source
# File lib/capcoauth/rails/routes.rb, line 24 def generate_routes!(options) @mapping = Mapper.new.map(&@block) routes.scope options[:scope] || 'auth', as: 'auth' do map_routes(:login, :login_routes) map_routes(:logout, :logout_routes) map_routes(:callback, :callback_routes) end end
Private Instance Methods
callback_routes(mapping)
click to toggle source
# File lib/capcoauth/rails/routes.rb, line 59 def callback_routes(mapping) routes.resource( :callback, path: 'callback', only: [:show], as: mapping[:as], controller: mapping[:controllers] ) end
login_routes(mapping)
click to toggle source
# File lib/capcoauth/rails/routes.rb, line 41 def login_routes(mapping) routes.resource( :login, path: 'login', only: [:show], as: mapping[:as], controller: mapping[:controllers] ) end
logout_routes(mapping)
click to toggle source
# File lib/capcoauth/rails/routes.rb, line 50 def logout_routes(mapping) routes.resource( :logout, path: 'logout', only: [:show, :delete], as: mapping[:as], controller: mapping[:controllers] ) end
map_routes(name, method)
click to toggle source
# File lib/capcoauth/rails/routes.rb, line 35 def map_routes(name, method) unless @mapping.skipped?(name) send method, @mapping[name] end end