2021-02-02 06:18:16 +01:00
|
|
|
class Invidious::Routes::Misc < Invidious::Routes::BaseRoute
|
|
|
|
def home(env)
|
2020-10-05 23:41:18 -05:00
|
|
|
preferences = env.get("preferences").as(Preferences)
|
|
|
|
locale = LOCALES[preferences.locale]?
|
|
|
|
user = env.get? "user"
|
|
|
|
|
|
|
|
case preferences.default_home
|
|
|
|
when "Popular"
|
2020-12-27 06:12:43 +01:00
|
|
|
env.redirect "/feed/popular"
|
2020-10-05 23:41:18 -05:00
|
|
|
when "Trending"
|
|
|
|
env.redirect "/feed/trending"
|
|
|
|
when "Subscriptions"
|
|
|
|
if user
|
|
|
|
env.redirect "/feed/subscriptions"
|
|
|
|
else
|
2020-12-27 06:12:43 +01:00
|
|
|
env.redirect "/feed/popular"
|
2020-10-05 23:41:18 -05:00
|
|
|
end
|
|
|
|
when "Playlists"
|
|
|
|
if user
|
|
|
|
env.redirect "/view_all_playlists"
|
|
|
|
else
|
2020-12-27 06:12:43 +01:00
|
|
|
env.redirect "/feed/popular"
|
2020-10-05 23:41:18 -05:00
|
|
|
end
|
|
|
|
else
|
2021-04-17 05:18:58 -07:00
|
|
|
templated "search_homepage", navbar_search: false
|
2020-10-05 23:41:18 -05:00
|
|
|
end
|
|
|
|
end
|
2021-02-02 06:18:16 +01:00
|
|
|
|
|
|
|
def privacy(env)
|
|
|
|
locale = LOCALES[env.get("preferences").as(Preferences).locale]?
|
|
|
|
templated "privacy"
|
|
|
|
end
|
|
|
|
|
|
|
|
def licenses(env)
|
|
|
|
locale = LOCALES[env.get("preferences").as(Preferences).locale]?
|
|
|
|
rendered "licenses"
|
|
|
|
end
|
2021-03-26 18:36:40 -07:00
|
|
|
|
|
|
|
def cross_instance_redirect(env)
|
2021-03-26 21:22:46 -07:00
|
|
|
instance_url = fetch_random_instance
|
|
|
|
if env.params.query["id"]?
|
2021-03-26 18:36:40 -07:00
|
|
|
id = env.params.query["id"]
|
|
|
|
env.redirect "https://#{instance_url}/watch?v=#{id}"
|
2021-03-26 21:22:46 -07:00
|
|
|
elsif env.params.query["q"]?
|
|
|
|
query, page = env.params.query["q"], env.params.query["page"]
|
|
|
|
env.redirect "https://#{instance_url}/search?q=#{query}&page=#{page}"
|
|
|
|
end
|
2021-03-26 18:36:40 -07:00
|
|
|
end
|
2020-10-05 23:41:18 -05:00
|
|
|
end
|