module Authpwn::Routes::MapperMixin
Public Instance Methods
authpwn_session(options = {})
click to toggle source
Draws the routes for a session controller.
@param [Object] options @option options [String] controller the name of the controller; defaults to
"session" for SessionController
@option options [String] paths the prefix of the route paths; defaults to
the controller name
@option options [String] method_names the root of name used in the path
methods; defaults to "session", which will generate names like session_path, new_session_path, and token_session_path
@option options [String] omniauth_path_prefix the prefix of the OmniAuth
route paths; defaults to '/auth'; this option should equal OmniAuth.config.path_prefix
# File lib/authpwn_rails/routes.rb, line 24 def authpwn_session(options = {}) controller = options[:controller] || 'session' paths = options[:paths] || controller methods = options[:method_names] || 'session' oa_prefix = options[:omniauth_path_prefix] || '/auth' get "/#{paths}/token/:code", controller: controller, action: 'token', as: :"token_#{methods}" get "/#{paths}", controller: controller, action: 'show', as: :"#{methods}" get "/#{paths}/new", controller: controller, action: 'new', as: :"new_#{methods}" post "/#{paths}", controller: controller, action: 'create' delete "/#{paths}", controller: controller, action: 'destroy' get "/#{paths}/api_token", controller: controller, action: 'api_token', as: "api_token_#{methods}" delete "/#{paths}/api_token", controller: controller, action: 'destroy_api_token', as: "destroy_api_token_#{methods}" get "/#{paths}/change_password", controller: controller, action: 'password_change', as: "change_password_#{methods}" post "/#{paths}/change_password", controller: controller, action: 'change_password' post "/#{paths}/reset_password", controller: controller, action: 'reset_password', as: "reset_password_#{methods}" match "#{oa_prefix}/:provider/callback", via: [:get, :post], controller: controller, action: 'omniauth', as: "omniauth_#{methods}" get "#{oa_prefix}/failure", controller: controller, action: 'omniauth_failure', as: "omniauth_failure_#{methods}" end