mirror of
https://github.com/iv-org/invidious.git
synced 2025-12-24 22:58:30 -06:00
Merge 19600fb67fac127bc5c6b092eb9ff6fee0d0eed2 into dbbaf51f1f4e80c7db14e669aadac7fb87f6267d
This commit is contained in:
commit
6016bd1ddb
@ -556,6 +556,10 @@ span > select {
|
||||
border: 1px solid black;
|
||||
}
|
||||
|
||||
.light-theme .cookie-url-box {
|
||||
border: 2px solid #444
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: light) {
|
||||
.no-theme a:hover,
|
||||
.no-theme a:active,
|
||||
@ -606,6 +610,10 @@ span > select {
|
||||
.no-theme .error-card {
|
||||
border: 1px solid black;
|
||||
}
|
||||
|
||||
.no-theme .cookie-url-box {
|
||||
border: 2px solid #444
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -672,6 +680,10 @@ body.dark-theme {
|
||||
border: 1px solid #5e5e5e;
|
||||
}
|
||||
|
||||
.dark-theme .cookie-url-box {
|
||||
border: 2px solid #ccc
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
.no-theme a:hover,
|
||||
.no-theme a:active,
|
||||
@ -737,6 +749,10 @@ body.dark-theme {
|
||||
.no-theme .error-card {
|
||||
border: 1px solid #5e5e5e;
|
||||
}
|
||||
|
||||
.no-theme .cookie-url-box {
|
||||
border: 2px solid #ccc
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -888,3 +904,7 @@ h1, h2, h3, h4, h5, p,
|
||||
padding: 20px;
|
||||
background: rgba(0, 0, 0, 0.12345);
|
||||
}
|
||||
|
||||
.cookie-url-box {
|
||||
padding: 4px
|
||||
}
|
||||
@ -149,6 +149,8 @@
|
||||
"preferences_default_home_label": "Default homepage: ",
|
||||
"preferences_feed_menu_label": "Feed menu: ",
|
||||
"preferences_show_nick_label": "Show nickname on top: ",
|
||||
"preferences_category_cookies": "Preferences cookies",
|
||||
"preferences_cookie_desccription": "With this URL you can restore your preferences on any other browser.",
|
||||
"Popular enabled: ": "Popular enabled: ",
|
||||
"Top enabled: ": "Top enabled: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA enabled: ",
|
||||
|
||||
@ -4,6 +4,21 @@ module Invidious::Routes::PreferencesRoute
|
||||
def self.show(env)
|
||||
preferences = env.get("preferences").as(Preferences)
|
||||
locale = preferences.locale
|
||||
saved_preferences = env.params.query["preferences"]?
|
||||
|
||||
if saved_preferences
|
||||
decoded_preferences = Base64.decode_string(saved_preferences)
|
||||
preferences = Preferences.from_json(decoded_preferences)
|
||||
if user = env.get? "user"
|
||||
user = user.as(User)
|
||||
user.preferences = preferences
|
||||
Invidious::Database::Users.update_preferences(user)
|
||||
else
|
||||
env.response.cookies["PREFS"] = Invidious::User::Cookies.prefs(CONFIG.domain, preferences)
|
||||
end
|
||||
end
|
||||
|
||||
encoded_preferences = Base64.urlsafe_encode(preferences.to_json.to_s)
|
||||
|
||||
referer = get_referer(env)
|
||||
|
||||
|
||||
@ -371,6 +371,16 @@
|
||||
<div class="pure-controls">
|
||||
<button type="submit" class="pure-button pure-button-primary"><%= translate(locale, "Save preferences") %></button>
|
||||
</div>
|
||||
|
||||
</fieldset>
|
||||
|
||||
<legend><%= translate(locale, "preferences_category_cookies") %></legend>
|
||||
<%
|
||||
url = "#{HOST_URL}/preferences?preferences=#{encoded_preferences}"
|
||||
%>
|
||||
<p><%= translate(locale, "preferences_cookie_desccription") %></p>
|
||||
<div class="cookie-url-box">
|
||||
<a href="<%= url %>"><%= url %></a>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user