Sha256: fefe2189b89115b26ad692c4c975d56b994bf98c6c41a0d96c9114183cef8504
Contents?: true
Size: 1.36 KB
Versions: 5
Compression:
Stored size: 1.36 KB
Contents
# frozen_string_literal: true require "alchemy/version" module Alchemy module Admin class UserSessionsController < ::Devise::SessionsController include Alchemy::Admin::Locale protect_from_forgery prepend: true before_action :check_user_count, only: :new helper "Alchemy::Admin::Base" layout Alchemy::Devise.layout def create authenticate_user! if user_signed_in? redirect_path = if session[:redirect_path].blank? admin_dashboard_path else # We have to strip double slashes from beginning of path, because of strange rails/rack bug. session[:redirect_path].gsub(/\A\/{2,}/, "/") end redirect_to redirect_path, notice: t(:signed_in, scope: "devise.sessions") else super end end def destroy current_alchemy_user.try(:unlock_pages!) cookies.clear session.clear super end private def check_user_count if User.count == 0 redirect_to admin_signup_path end end # Overwriting the default of Devise def after_sign_out_path_for(resource_or_scope) if request.referer.blank? || request.referer.to_s =~ /admin/ root_path else request.referer end end end end end
Version data entries
5 entries across 5 versions & 1 rubygems