Sha256: 311bb231440ca2b71c8e4b3fea9de734a2d7b1a49a8e2d72e365d3182f09435b
Contents?: true
Size: 1.45 KB
Versions: 10
Compression:
Stored size: 1.45 KB
Contents
module Authentication def self.included(controller) controller.send :helper_method, :current_<%= user_singular_name %>, :logged_in?, :redirect_to_target_or_default controller.filter_parameter_logging :password, :password_confirmation end def current_<%= user_singular_name %>_session return @current_<%= user_singular_name %>_session if defined?(@current_<%= user_singular_name %>_session) @current_<%= user_singular_name %>_session = <%= session_class_name %>.find end def current_<%= user_singular_name %> return @current_<%= user_singular_name %> if defined?(@current_<%= user_singular_name %>) @current_<%= user_singular_name %> = current_<%= user_singular_name %>_session && current_<%= user_singular_name %>_session.record end def logged_in? current_<%= user_singular_name %> end def require_login unless logged_in? store_target_location redirect_to login_url return false end end def require_logout if logged_in? store_target_location flash[:notice] = t("application.require_user") redirect_to root_url return false end end def permission_denied flash[:error] = t("application.permission_denied") redirect_to root_url end def redirect_to_target_or_default(default) redirect_to(session[:return_to] || default) session[:return_to] = nil end private def store_target_location session[:return_to] = request.request_uri end end
Version data entries
10 entries across 10 versions & 1 rubygems