module Spree module AuthenticationHelpers def self.included(receiver) receiver.helper_method( :spree_current_user, :spree_login_path, :spree_signup_path, :spree_logout_path, :spree_forgot_password_path, :spree_edit_password_path, :spree_admin_login_path, :spree_admin_logout_path ) end def spree_current_user send("current_#{Spree.user_class.model_name.singular_route_key}") end def spree_login_path(opts = {}) new_session_path(Spree.user_class.model_name.singular_route_key, opts) end def spree_signup_path(opts = {}) new_registration_path(Spree.user_class.model_name.singular_route_key, opts) end def spree_logout_path(opts = {}) destroy_session_path(Spree.user_class.model_name.singular_route_key, opts) end def spree_forgot_password_path(opts = {}) new_password_path(Spree.user_class.model_name.singular_route_key, opts) end def spree_edit_password_path(opts = {}) edit_registration_path(Spree.user_class.model_name.singular_route_key, opts) end def spree_admin_login_path(opts = {}) new_admin_user_session_path(opts) end def spree_admin_logout_path(opts = {}) destroy_admin_user_session_path(opts) end end end ApplicationController.include Spree::AuthenticationHelpers if defined?(ApplicationController)