aboutsummaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorMiquel Sabaté Solà <msabate@suse.com>2024-03-15 23:14:43 +0100
committerMiquel Sabaté Solà <msabate@suse.com>2024-03-15 23:14:43 +0100
commit1e6bf953680bf03d4b797cf9b8f7235546b2c578 (patch)
tree454618355052363631d6fff280ae94df3b9d5929 /app
parent87c3ff44381d270f3a4f4c384f674f85a7f178a1 (diff)
downloadoperum-1e6bf953680bf03d4b797cf9b8f7235546b2c578.tar.gz
operum-1e6bf953680bf03d4b797cf9b8f7235546b2c578.zip
Ensure that the last search is honored
Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>
Diffstat (limited to 'app')
-rw-r--r--app/controllers/application_controller.rb11
-rw-r--r--app/controllers/sessions_controller.rb2
2 files changed, 12 insertions, 1 deletions
diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb
index fbe614c..80d4415 100644
--- a/app/controllers/application_controller.rb
+++ b/app/controllers/application_controller.rb
@@ -19,4 +19,15 @@ class ApplicationController < ActionController::Base
def set_searches
@searches = Search.order(:name)
end
+
+ # Redirect to the search that was last used by the current user.
+ def redirect_to_search!
+ search_id = current_user&.last_search_id
+
+ if search_id
+ redirect_to search_path(search_id)
+ else
+ redirect_to root_url
+ end
+ end
end
diff --git a/app/controllers/sessions_controller.rb b/app/controllers/sessions_controller.rb
index b79e3dd..d80e38c 100644
--- a/app/controllers/sessions_controller.rb
+++ b/app/controllers/sessions_controller.rb
@@ -13,7 +13,7 @@ class SessionsController < ApplicationController
user = User.find_by(username: params[:username])
if user&.authenticate(params[:password])
session[:user_id] = user.id
- redirect_to root_url
+ redirect_to_search!
else
redirect_to root_url, alert: t('sessions.wrong-credentials')
end