Rails.application.routes.draw do get 'admin/status' get 'admin/screenshots' get 'admin/integration' devise_for :users, controllers: { # registrations: "users/registrations", # passwords: "users/passwords", omniauth_callbacks: "users/omniauth_callbacks", sessions: "users/my_sessions" } get 'packages' => 'packages#grid', as: :packages_grid get 'packages/list' => 'packages#list', as: :packages_list get 'packages?show=without' => 'packages#grid?show=without', as: :packages_without get 'moderate' => 'moderate#index' get 'admin/logs' => 'admin#logs' get 'my/profile' get 'my/uploads' get 'my/welcome' get 'package/:name' => 'packages#details', as: :package, name: /[^\/]+/ get 'package_reviews/:name' => 'packages#reviews', as: :package_reviews, name: /[^\/]+/ get 'upload', to: redirect('/packages'), as: :upload_legacy # legacy upload form post 'uploadfile' => 'packages#legacy_uploadfile', name: /[^\/]+/ get 'upload/:name' => 'packages#upload', as: :upload, name: /[^\/]+/ post 'upload/:name' => 'packages#upload_receive', as: :upload_receive, name: /[^\/]+/ # TODO: "get" is probably the wrong method to delete a screenshot get 'delete_screenshot/:id' => 'packages#delete_screenshot', as: :delete_screenshot patch 'update_screenshot_description/:id' => 'packages#update_screenshot_description', as: :update_screenshot_description #post 'report_screenshot/:id' => 'packages#report_screenshot', as: :report_screenshot # TODO: "get" is probably the wrong method to delete a screenshot get 'approve_screenshot/:id' => 'packages#approve_screenshot', as: :approve_screenshot get 'about' => 'welcome#about' get 'thumbnail/:name' => 'packages#thumbnail', as: :thumbnail_image, name: /[^\/]+/ get 'thumbnail-404/:name' => 'packages#thumbnail', name: /[^\/]+/ get 'thumbnail-with-version/:name/:version' => 'packages#thumbnail', name: /[^\/]+/, version: /\d.*/ get 'screenshot/:name' => 'packages#screenshot', as: :screenshot_image, name: /[^\/]+/ get 'screenshot-404/:name' => 'packages#screenshot', name: /[^\/]+/ get 'screenshot-with-version/:name/:version' => 'packages#screenshot', name: /[^\/]+/, version: /\d.*/ # Legacy URLs get 'with_screenshots', to: redirect('/packages?show=with') get 'without_screenshots', to: redirect('/packages?show=without') get 'json/package/:name' => 'json#package', as: :json_package, defaults: { format: :json } get 'json/packages' => 'json#packages', as: :json_packages, defaults: { format: :json } get 'json/screenshots' => 'json#screenshots', as: :json_screenshots, defaults: { format: :json } get 'json/packages-without-screenshots' => 'json#packages_without_screenshots', defaults: { format: :json } # The priority is based upon order of creation: first created -> highest priority. # See how all your routes lay out with "rake routes". # You can have the root of your site routed with "root" root 'welcome#home' #root to: 'packages#home' # Example of regular route: # get 'products/:id' => 'catalog#view' # Example of named route that can be invoked with purchase_url(id: product.id) # get 'products/:id/purchase' => 'catalog#purchase', as: :purchase # Example resource route (maps HTTP verbs to controller actions automatically): # resources :products # Example resource route with options: # resources :products do # member do # get 'short' # post 'toggle' # end # # collection do # get 'sold' # end # end # Example resource route with sub-resources: # resources :products do # resources :comments, :sales # resource :seller # end # Example resource route with more complex sub-resources: # resources :products do # resources :comments # resources :sales do # get 'recent', on: :collection # end # end # Example resource route with concerns: # concern :toggleable do # post 'toggle' # end # resources :posts, concerns: :toggleable # resources :photos, concerns: :toggleable # Example resource route within a namespace: # namespace :admin do # # Directs /admin/products/* to Admin::ProductsController # # (app/controllers/admin/products_controller.rb) # resources :products # end # For details on the DSL available within this file, see https://guides.rubyonrails.org/routing.html end