Rails.application.routes.draw do # 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 "entries#index" # Setup route (only accessible when .installed file doesn't exist) get "setup", to: "setup#show" post "setup", to: "setup#create" # Authentication routes get "login", to: "sessions#new", as: :login post "login", to: "sessions#create" get "logout", to: "sessions#destroy", as: :logout # Password reset routes resources :password_resets, only: [ :new, :create ] get "password_resets/:token/edit", to: "password_resets#edit", as: :edit_password_reset patch "password_resets/:token", to: "password_resets#update", as: :password_reset # Invitation acceptance routes get "invitations/:token", to: "invitations#show", as: :invitation patch "invitations/:token/accept", to: "invitations#update", as: :accept_invitation # Public entry request routes resources :requests, only: [ :new, :create ] # Admin namespace namespace :admin do root "dashboard#index" get "dashboard", to: "dashboard#index" resources :users, only: [ :index, :edit, :update, :destroy ] resources :invitations, only: [ :index, :new, :create, :destroy ] do member do put :resend end end resources :requests, only: [ :index, :show, :edit, :update ] do member do post :approve delete :reject end end end resources :entries do resources :comments, only: [ :create ] collection do get :download end end resources :suggested_meanings resources :comments, only: [ :create, :update, :destroy ] resources :supported_languages, only: [ :index, :show ] resources :users end