3112: config settings, mailer, popup display
[arvados.git] / apps / workbench / config / routes.rb
1 ArvadosWorkbench::Application.routes.draw do
2   themes_for_rails
3
4   resources :keep_disks
5   resources :keep_services
6   resources :user_agreements do
7     post 'sign', on: :collection
8     get 'signatures', on: :collection
9   end
10   get '/user_agreements/signatures' => 'user_agreements#signatures'
11   get "users/setup_popup" => 'users#setup_popup', :as => :setup_user_popup
12   get "users/setup" => 'users#setup', :as => :setup_user
13   get "actions/report_issue_popup" => 'actions#report_issue_popup', :as => :report_issue_popup
14   post "actions/report_issue" => 'actions#report_issue', :as => :report_issue
15   resources :nodes
16   resources :humans
17   resources :traits
18   resources :api_client_authorizations
19   resources :repositories
20   resources :virtual_machines
21   resources :authorized_keys
22   resources :job_tasks
23   resources :jobs do
24     post 'cancel', :on => :member
25   end
26   match '/logout' => 'sessions#destroy', via: [:get, :post]
27   get '/logged_out' => 'sessions#index'
28   resources :users do
29     get 'choose', :on => :collection
30     get 'home', :on => :member
31     get 'welcome', :on => :collection
32     get 'activity', :on => :collection
33     get 'storage', :on => :collection
34     post 'sudo', :on => :member
35     post 'unsetup', :on => :member
36     get 'setup_popup', :on => :member
37     get 'profile', :on => :member
38   end
39   get '/manage_account' => 'users#manage_account'
40   get "/add_ssh_key_popup" => 'users#add_ssh_key_popup', :as => :add_ssh_key_popup
41   get "/add_ssh_key" => 'users#add_ssh_key', :as => :add_ssh_key
42   resources :logs
43   resources :factory_jobs
44   resources :uploaded_datasets
45   resources :groups do
46     get 'choose', on: :collection
47   end
48   resources :specimens
49   resources :pipeline_templates do
50     get 'choose', on: :collection
51   end
52   resources :pipeline_instances do
53     get 'compare', on: :collection
54     post 'copy', on: :member
55   end
56   resources :links
57   get '/collections/graph' => 'collections#graph'
58   resources :collections do
59     post 'set_persistent', on: :member
60     get 'sharing_popup', :on => :member
61     post 'share', :on => :member
62     post 'unshare', :on => :member
63     get 'choose', on: :collection
64   end
65   get('/collections/download/:uuid/:reader_token/*file' => 'collections#show_file',
66       format: false)
67   get '/collections/download/:uuid/:reader_token' => 'collections#show_file_links'
68   get '/collections/:uuid/*file' => 'collections#show_file', :format => false
69   resources :projects do
70     match 'remove/:item_uuid', on: :member, via: :delete, action: :remove_item
71     match 'remove_items', on: :member, via: :delete, action: :remove_items
72     get 'move_items', on: :member, action: :move_items
73     get 'choose', on: :collection
74     post 'share_with', on: :member
75   end
76   resources :search do
77     get 'choose', :on => :collection
78   end
79
80   post 'actions' => 'actions#post'
81   get 'actions' => 'actions#show'
82   get 'websockets' => 'websocket#index'
83
84   root :to => 'projects#index'
85
86   # Send unroutable requests to an arbitrary controller
87   # (ends up at ApplicationController#render_not_found)
88   match '*a', to: 'links#render_not_found', via: [:get, :post]
89 end