Login redirect to referer on logged-in user (#3556)

This commit is contained in:
Samantaz Fox 2023-02-02 21:28:24 +01:00
commit 6c687a3cac
No known key found for this signature in database
GPG Key ID: F42821059186176E
3 changed files with 5 additions and 5 deletions

View File

@ -259,7 +259,7 @@ def get_referer(env, fallback = "/", unroll = true)
end
referer = referer.request_target
referer = "/" + referer.gsub(/[^\/?@&%=\-_.0-9a-zA-Z]/, "").lstrip("/\\")
referer = "/" + referer.gsub(/[^\/?@&%=\-_.:,0-9a-zA-Z]/, "").lstrip("/\\")
if referer == env.request.path
referer = fallback

View File

@ -203,7 +203,7 @@ module Invidious::Routes::Account
referer = get_referer(env)
if !user
return env.redirect referer
return env.redirect "/login?referer=#{URI.encode_path_segment(env.request.resource)}"
end
user = user.as(User)

View File

@ -6,14 +6,14 @@ module Invidious::Routes::Login
user = env.get? "user"
return env.redirect "/feed/subscriptions" if user
referer = get_referer(env, "/feed/subscriptions")
return env.redirect referer if user
if !CONFIG.login_enabled
return error_template(400, "Login has been disabled by administrator.")
end
referer = get_referer(env, "/feed/subscriptions")
email = nil
password = nil
captcha = nil