From 906430b9839ac08f36bc86eb40a37818430d07b3 Mon Sep 17 00:00:00 2001 From: evazion Date: Mon, 21 Dec 2020 19:16:44 -0600 Subject: [PATCH] config: add option for customizing session cookie name. Fixes getting logged out when you visited Testbooru because of Testbooru's session cookies clobbering Danbooru's session cookies. --- config/danbooru_default_config.rb | 6 ++++++ config/initializers/session_store.rb | 10 +++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/config/danbooru_default_config.rb b/config/danbooru_default_config.rb index 0d2cc3321..0bb6d3459 100644 --- a/config/danbooru_default_config.rb +++ b/config/danbooru_default_config.rb @@ -46,6 +46,12 @@ module Danbooru "DanbooruBot" end + # The name of the cookie that stores the current user's login session. + # Changing this will force all users to login again. + def session_cookie_name + "_danbooru2_session" + end + def source_code_url "https://github.com/danbooru/danbooru" end diff --git a/config/initializers/session_store.rb b/config/initializers/session_store.rb index 6cb8f0eb3..2bbb72e68 100644 --- a/config/initializers/session_store.rb +++ b/config/initializers/session_store.rb @@ -1,3 +1,11 @@ # Be sure to restart your server when you modify this file. -Rails.application.config.session_store :cookie_store, key: '_danbooru2_session', domain: :all, tld_length: 2, same_site: :lax, secure: Rails.env.production? +# https://api.rubyonrails.org/classes/ActionDispatch/Cookies.html +Rails.application.config.session_store( + :cookie_store, + key: Danbooru.config.session_cookie_name, + domain: :all, + tld_length: 2, + same_site: :lax, + secure: Rails.env.production? +)