diff options
Diffstat (limited to 'src/invidious.cr')
| -rw-r--r-- | src/invidious.cr | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/src/invidious.cr b/src/invidious.cr index a5f5196d..b576148e 100644 --- a/src/invidious.cr +++ b/src/invidious.cr @@ -160,7 +160,12 @@ proxies = PROXY_LIST before_all do |env| env.response.headers["X-XSS-Protection"] = "1; mode=block;" env.response.headers["X-Content-Type-Options"] = "nosniff" - preferences = DEFAULT_USER_PREFERENCES.dup + + begin + preferences = Preferences.from_json(env.request.cookies["PREFS"]?.try &.value || "{}") + rescue + preferences = Preferences.from_json("{}") + end if env.request.cookies.has_key? "SID" headers = HTTP::Headers.new @@ -201,10 +206,6 @@ before_all do |env| end end - if env.request.cookies.has_key? "PREFS" - preferences = Preferences.from_json(env.request.cookies["PREFS"].value) - end - dark_mode = env.params.query["dark_mode"]? || preferences.dark_mode.to_s dark_mode = dark_mode == "true" @@ -1082,12 +1083,6 @@ post "/login" do |env| next templated "error" end - user = PG_DB.query_one?("SELECT * FROM users WHERE LOWER(email) = LOWER($1) AND password IS NOT NULL", email, as: User) - if user - error_message = translate(locale, "Please sign in") - next templated "error" - end - sid = Base64.urlsafe_encode(Random::Secure.random_bytes(32)) user, sid = create_user(sid, email, password) user_array = user.to_a |
