diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/invidious.cr | 5 | ||||
| -rw-r--r-- | src/invidious/users.cr | 5 | ||||
| -rw-r--r-- | src/invidious/videos.cr | 6 | ||||
| -rw-r--r-- | src/invidious/views/preferences.ecr | 5 |
4 files changed, 19 insertions, 2 deletions
diff --git a/src/invidious.cr b/src/invidious.cr index 1091b6ff..0e7a3ac1 100644 --- a/src/invidious.cr +++ b/src/invidious.cr @@ -1231,6 +1231,10 @@ post "/preferences" do |env| listen ||= "off" listen = listen == "on" + local = env.params.body["local"]?.try &.as(String) + local ||= "off" + local = local == "on" + speed = env.params.body["speed"]?.try &.as(String).to_f? speed ||= DEFAULT_USER_PREFERENCES.speed @@ -1292,6 +1296,7 @@ post "/preferences" do |env| "autoplay" => autoplay, "continue" => continue, "listen" => listen, + "local" => local, "speed" => speed, "quality" => quality, "volume" => volume, diff --git a/src/invidious/users.cr b/src/invidious/users.cr index 42468228..308786c2 100644 --- a/src/invidious/users.cr +++ b/src/invidious/users.cr @@ -31,6 +31,7 @@ DEFAULT_USER_PREFERENCES = Preferences.from_json({ "video_loop" => false, "autoplay" => false, "continue" => false, + "local" => false, "listen" => false, "speed" => 1.0, "quality" => "hd720", @@ -80,6 +81,10 @@ class Preferences type: Bool, default: DEFAULT_USER_PREFERENCES.continue, }, + local: { + type: Bool, + default: DEFAULT_USER_PREFERENCES.local, + }, listen: { type: Bool, default: DEFAULT_USER_PREFERENCES.listen, diff --git a/src/invidious/videos.cr b/src/invidious/videos.cr index 17d17d93..78dd1e5a 100644 --- a/src/invidious/videos.cr +++ b/src/invidious/videos.cr @@ -747,10 +747,11 @@ def process_video_params(query, preferences) # region ||= preferences.region autoplay ||= preferences.autoplay.to_unsafe continue ||= preferences.continue.to_unsafe - related_videos ||= preferences.related_videos.to_unsafe listen ||= preferences.listen.to_unsafe + local ||= preferences.local.to_unsafe preferred_captions ||= preferences.captions quality ||= preferences.quality + related_videos ||= preferences.related_videos.to_unsafe speed ||= preferences.speed video_loop ||= preferences.video_loop.to_unsafe volume ||= preferences.volume @@ -758,10 +759,11 @@ def process_video_params(query, preferences) autoplay ||= DEFAULT_USER_PREFERENCES.autoplay.to_unsafe continue ||= DEFAULT_USER_PREFERENCES.continue.to_unsafe - related_videos ||= DEFAULT_USER_PREFERENCES.related_videos.to_unsafe listen ||= DEFAULT_USER_PREFERENCES.listen.to_unsafe + local ||= DEFAULT_USER_PREFERENCES.local.to_unsafe preferred_captions ||= DEFAULT_USER_PREFERENCES.captions quality ||= DEFAULT_USER_PREFERENCES.quality + related_videos ||= DEFAULT_USER_PREFERENCES.related_videos.to_unsafe speed ||= DEFAULT_USER_PREFERENCES.speed video_loop ||= DEFAULT_USER_PREFERENCES.video_loop.to_unsafe volume ||= DEFAULT_USER_PREFERENCES.volume diff --git a/src/invidious/views/preferences.ecr b/src/invidious/views/preferences.ecr index 20762bc5..d26b2179 100644 --- a/src/invidious/views/preferences.ecr +++ b/src/invidious/views/preferences.ecr @@ -29,6 +29,11 @@ function update_value(element) { </div> <div class="pure-control-group"> + <label for="local"><%= translate(locale, "Proxy videos? ") %></label> + <input name="local" id="local" type="checkbox" <% if preferences.local %>checked<% end %>> + </div> + + <div class="pure-control-group"> <label for="listen"><%= translate(locale, "Listen by default: ") %></label> <input name="listen" id="listen" type="checkbox" <% if preferences.listen %>checked<% end %>> </div> |
