summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorSamantaz Fox <coding@samantaz.fr>2022-02-04 04:55:50 +0100
committerSamantaz Fox <coding@samantaz.fr>2022-02-07 17:15:21 +0100
commitfb3615502258c71249c6d77aebe684234756b416 (patch)
treec3763a82247b1db8059e69472a311da8fee76e7d /src
parent7ace3fc989d5b24104af92537dc3a67cf9f608c3 (diff)
downloadinvidious-fb3615502258c71249c6d77aebe684234756b416.tar.gz
invidious-fb3615502258c71249c6d77aebe684234756b416.tar.bz2
invidious-fb3615502258c71249c6d77aebe684234756b416.zip
Move user routes definitions to a macro in routing.cr
Diffstat (limited to 'src')
-rw-r--r--src/invidious.cr25
-rw-r--r--src/invidious/routing.cr26
2 files changed, 28 insertions, 23 deletions
diff --git a/src/invidious.cr b/src/invidious.cr
index 6f4f575b..fc498dbf 100644
--- a/src/invidious.cr
+++ b/src/invidious.cr
@@ -364,29 +364,8 @@ end
Invidious::Routing.get "/results", Invidious::Routes::Search, :results
Invidious::Routing.get "/search", Invidious::Routes::Search, :search
- # User login/out
- Invidious::Routing.get "/login", Invidious::Routes::Login, :login_page
- Invidious::Routing.post "/login", Invidious::Routes::Login, :login
- Invidious::Routing.post "/signout", Invidious::Routes::Login, :signout
-
- # User preferences
- Invidious::Routing.get "/preferences", Invidious::Routes::PreferencesRoute, :show
- Invidious::Routing.post "/preferences", Invidious::Routes::PreferencesRoute, :update
- Invidious::Routing.get "/toggle_theme", Invidious::Routes::PreferencesRoute, :toggle_theme
- Invidious::Routing.get "/data_control", Invidious::Routes::PreferencesRoute, :data_control
- Invidious::Routing.post "/data_control", Invidious::Routes::PreferencesRoute, :update_data_control
-
- # User account management
- Invidious::Routing.get "/change_password", Invidious::Routes::Account, :get_change_password
- Invidious::Routing.post "/change_password", Invidious::Routes::Account, :post_change_password
- Invidious::Routing.get "/delete_account", Invidious::Routes::Account, :get_delete
- Invidious::Routing.post "/delete_account", Invidious::Routes::Account, :post_delete
- Invidious::Routing.get "/clear_watch_history", Invidious::Routes::Account, :get_clear_history
- Invidious::Routing.post "/clear_watch_history", Invidious::Routes::Account, :post_clear_history
- Invidious::Routing.get "/authorize_token", Invidious::Routes::Account, :get_authorize_token
- Invidious::Routing.post "/authorize_token", Invidious::Routes::Account, :post_authorize_token
- Invidious::Routing.get "/token_manager", Invidious::Routes::Account, :token_manager
- Invidious::Routing.post "/token_ajax", Invidious::Routes::Account, :token_ajax
+ # User routes
+ define_user_routes()
# Feeds
Invidious::Routing.get "/view_all_playlists", Invidious::Routes::Feeds, :view_all_playlists_redirect
diff --git a/src/invidious/routing.cr b/src/invidious/routing.cr
index 7551f22d..5efe1bd8 100644
--- a/src/invidious/routing.cr
+++ b/src/invidious/routing.cr
@@ -10,6 +10,32 @@ module Invidious::Routing
{% end %}
end
+macro define_user_routes
+ # User login/out
+ Invidious::Routing.get "/login", Invidious::Routes::Login, :login_page
+ Invidious::Routing.post "/login", Invidious::Routes::Login, :login
+ Invidious::Routing.post "/signout", Invidious::Routes::Login, :signout
+
+ # User preferences
+ Invidious::Routing.get "/preferences", Invidious::Routes::PreferencesRoute, :show
+ Invidious::Routing.post "/preferences", Invidious::Routes::PreferencesRoute, :update
+ Invidious::Routing.get "/toggle_theme", Invidious::Routes::PreferencesRoute, :toggle_theme
+ Invidious::Routing.get "/data_control", Invidious::Routes::PreferencesRoute, :data_control
+ Invidious::Routing.post "/data_control", Invidious::Routes::PreferencesRoute, :update_data_control
+
+ # User account management
+ Invidious::Routing.get "/change_password", Invidious::Routes::Account, :get_change_password
+ Invidious::Routing.post "/change_password", Invidious::Routes::Account, :post_change_password
+ Invidious::Routing.get "/delete_account", Invidious::Routes::Account, :get_delete
+ Invidious::Routing.post "/delete_account", Invidious::Routes::Account, :post_delete
+ Invidious::Routing.get "/clear_watch_history", Invidious::Routes::Account, :get_clear_history
+ Invidious::Routing.post "/clear_watch_history", Invidious::Routes::Account, :post_clear_history
+ Invidious::Routing.get "/authorize_token", Invidious::Routes::Account, :get_authorize_token
+ Invidious::Routing.post "/authorize_token", Invidious::Routes::Account, :post_authorize_token
+ Invidious::Routing.get "/token_manager", Invidious::Routes::Account, :token_manager
+ Invidious::Routing.post "/token_ajax", Invidious::Routes::Account, :token_ajax
+end
+
macro define_v1_api_routes
{{namespace = Invidious::Routes::API::V1}}
# Videos