66 lines
1.8 KiB
Ruby
66 lines
1.8 KiB
Ruby
Rails.application.routes.draw do
|
|
resources :turns do
|
|
member do
|
|
patch :submit_orders
|
|
post :process_turn
|
|
end
|
|
end
|
|
|
|
resources :games do
|
|
member do
|
|
post :join_game
|
|
post :start_power_selection
|
|
post :start_order_input
|
|
post :vote_draw
|
|
post :force_draw
|
|
get :turn_data
|
|
end
|
|
|
|
resources :participants, only: [] do
|
|
member do
|
|
patch :select_power
|
|
end
|
|
end
|
|
|
|
resources :boards, only: [ :index, :new, :create, :show ] do
|
|
member do
|
|
patch :toggle_public
|
|
end
|
|
resources :board_posts, only: [ :create ], path: "posts"
|
|
resources :board_memberships, only: [ :create ], path: "members" do
|
|
collection do
|
|
delete :leave
|
|
end
|
|
end
|
|
resources :board_proposals, only: [ :create, :update ], path: "proposals"
|
|
end
|
|
end
|
|
|
|
# Define your application routes per the DSL in https://guides.rubyonrails.org/routing.html
|
|
|
|
# Reveal health status on /up that returns 200 if the app boots with no exceptions, otherwise 500.
|
|
# Can be used by load balancers and uptime monitors to verify that the app is live.
|
|
get "up" => "rails/health#show", as: :rails_health_check
|
|
|
|
# Render dynamic PWA files from app/views/pwa/* (remember to link manifest in application.html.erb)
|
|
# get "manifest" => "rails/pwa#manifest", as: :pwa_manifest
|
|
# get "service-worker" => "rails/pwa#service_worker", as: :pwa_service_worker
|
|
|
|
# Defines the root path route ("/")
|
|
root "games#index"
|
|
|
|
# Authentication routes
|
|
get "/signup", to: "users#new"
|
|
post "/signup", to: "users#create"
|
|
get "/login", to: "sessions#new"
|
|
post "/login", to: "sessions#create"
|
|
delete "/logout", to: "sessions#destroy"
|
|
|
|
# User management routes (admin only)
|
|
resources :users, only: [ :index, :show, :edit, :update, :destroy ] do
|
|
member do
|
|
patch :toggle_admin
|
|
end
|
|
end
|
|
end
|