2015-08-10 11:05:06 +02:00
|
|
|
Rails.application.routes.draw do
|
2021-02-16 16:14:43 +01:00
|
|
|
# For details on the DSL available within this file, see https://guides.rubyonrails.org/routing.html
|
|
|
|
|
2020-11-12 16:09:21 +01:00
|
|
|
get '/saml/auth' => 'saml_idp#new'
|
|
|
|
post '/saml/auth' => 'saml_idp#create'
|
2022-08-18 11:39:43 +02:00
|
|
|
get '/saml/metadata' => 'saml_idp#show'
|
2020-11-12 16:09:21 +01:00
|
|
|
|
2018-07-31 11:48:58 +02:00
|
|
|
#
|
|
|
|
# Manager
|
|
|
|
#
|
|
|
|
|
2017-12-28 19:44:11 +01:00
|
|
|
namespace :manager do
|
2021-12-06 06:12:40 +01:00
|
|
|
resources :procedures, only: [:index, :show, :edit, :update] do
|
2018-01-10 17:42:21 +01:00
|
|
|
post 'whitelist', on: :member
|
2018-10-09 12:11:13 +02:00
|
|
|
post 'draft', on: :member
|
2020-03-26 09:08:52 +01:00
|
|
|
post 'discard', on: :member
|
2020-03-26 17:35:50 +01:00
|
|
|
post 'restore', on: :member
|
2022-08-10 16:25:50 +02:00
|
|
|
put 'delete_administrateur', on: :member
|
2022-07-21 13:23:13 +02:00
|
|
|
post 'add_administrateur_and_instructeur', on: :member
|
|
|
|
post 'add_administrateur_with_confirmation', on: :member
|
2019-04-17 16:36:57 +02:00
|
|
|
post 'change_piece_justificative_template', on: :member
|
2020-05-18 11:07:51 +02:00
|
|
|
get 'export_mail_brouillons', on: :member
|
2022-09-09 11:45:14 +02:00
|
|
|
resources :confirmation_urls, only: :new
|
2022-09-09 14:48:40 +02:00
|
|
|
resources :administrateur_confirmations, only: [:new, :create]
|
2018-01-10 16:46:12 +01:00
|
|
|
end
|
|
|
|
|
2022-03-30 16:19:14 +02:00
|
|
|
resources :archives, only: [:index, :show]
|
|
|
|
|
2018-07-02 11:46:04 +02:00
|
|
|
resources :dossiers, only: [:index, :show] do
|
2020-03-25 18:08:32 +01:00
|
|
|
post 'discard', on: :member
|
2020-03-26 17:35:50 +01:00
|
|
|
post 'restore', on: :member
|
2019-07-29 10:57:21 +02:00
|
|
|
post 'repasser_en_instruction', on: :member
|
2018-07-02 11:46:04 +02:00
|
|
|
end
|
|
|
|
|
2018-01-18 10:04:34 +01:00
|
|
|
resources :administrateurs, only: [:index, :show, :new, :create] do
|
|
|
|
post 'reinvite', on: :member
|
2019-07-22 15:33:58 +02:00
|
|
|
delete 'delete', on: :member
|
2018-01-18 10:04:34 +01:00
|
|
|
end
|
2017-12-28 19:44:11 +01:00
|
|
|
|
2020-01-13 14:35:25 +01:00
|
|
|
resources :users, only: [:index, :show, :edit, :update] do
|
2020-01-08 10:50:16 +01:00
|
|
|
delete 'delete', on: :member
|
2018-07-17 12:10:56 +02:00
|
|
|
post 'resend_confirmation_instructions', on: :member
|
2019-07-04 12:36:17 +02:00
|
|
|
put 'enable_feature', on: :member
|
2020-10-06 16:52:10 +02:00
|
|
|
get 'emails', on: :member
|
2020-10-07 10:07:38 +02:00
|
|
|
put 'unblock_email'
|
2018-07-17 12:10:56 +02:00
|
|
|
end
|
|
|
|
|
2021-11-25 14:44:28 +01:00
|
|
|
resources :instructeurs, only: [:index, :show, :edit, :update] do
|
2018-06-14 16:41:10 +02:00
|
|
|
post 'reinvite', on: :member
|
2020-01-30 10:48:28 +01:00
|
|
|
delete 'delete', on: :member
|
2018-06-14 16:41:10 +02:00
|
|
|
end
|
|
|
|
|
2018-05-31 15:18:06 +02:00
|
|
|
resources :dossiers, only: [:show]
|
|
|
|
|
2018-03-20 16:33:51 +01:00
|
|
|
resources :demandes, only: [:index]
|
2018-10-02 16:04:14 +02:00
|
|
|
|
2019-05-17 10:43:50 +02:00
|
|
|
resources :bill_signatures, only: [:index]
|
|
|
|
|
2018-10-02 16:04:14 +02:00
|
|
|
resources :services, only: [:index, :show]
|
|
|
|
|
2021-04-13 15:57:22 +02:00
|
|
|
resources :super_admins, only: [:index, :show, :destroy]
|
2021-04-13 15:54:42 +02:00
|
|
|
|
2021-12-23 11:33:22 +01:00
|
|
|
resources :zones, only: [:index, :show]
|
2021-12-18 17:28:03 +01:00
|
|
|
|
2022-05-16 12:20:24 +02:00
|
|
|
resources :dubious_procedures, only: [:index]
|
2022-08-16 16:53:41 +02:00
|
|
|
resources :outdated_procedures, only: [:index] do
|
|
|
|
patch :bulk_update, on: :collection
|
|
|
|
end
|
2022-05-16 12:20:24 +02:00
|
|
|
|
2018-03-21 10:28:17 +01:00
|
|
|
post 'demandes/create_administrateur'
|
2018-03-27 13:32:14 +02:00
|
|
|
post 'demandes/refuse_administrateur'
|
2018-03-20 16:33:51 +01:00
|
|
|
|
2020-11-06 17:23:54 +01:00
|
|
|
authenticate :super_admin do
|
2019-07-04 12:36:17 +02:00
|
|
|
mount Flipper::UI.app(-> { Flipper.instance }) => "/features", as: :flipper
|
2018-01-16 16:58:52 +01:00
|
|
|
match "/delayed_job" => DelayedJobWeb, :anchor => false, :via => [:get, :post]
|
|
|
|
end
|
|
|
|
|
2018-01-16 18:09:01 +01:00
|
|
|
root to: "administrateurs#index"
|
2017-12-28 19:44:11 +01:00
|
|
|
end
|
|
|
|
|
2018-09-25 11:54:15 +02:00
|
|
|
#
|
|
|
|
# Letter Opener
|
|
|
|
#
|
|
|
|
|
|
|
|
if Rails.env.development?
|
|
|
|
mount LetterOpenerWeb::Engine, at: "/letter_opener"
|
|
|
|
end
|
|
|
|
|
2018-07-31 11:48:58 +02:00
|
|
|
#
|
|
|
|
# Monitoring
|
|
|
|
#
|
|
|
|
|
2020-06-22 15:28:36 +02:00
|
|
|
get "/ping" => "ping#index"
|
2016-06-01 15:07:27 +02:00
|
|
|
|
2018-07-31 11:48:58 +02:00
|
|
|
#
|
|
|
|
# Authentication
|
|
|
|
#
|
|
|
|
|
2020-11-05 15:09:11 +01:00
|
|
|
devise_for :super_admins, skip: [:registrations], controllers: {
|
|
|
|
sessions: 'super_admins/sessions',
|
|
|
|
passwords: 'super_admins/passwords'
|
2020-11-04 20:06:48 +01:00
|
|
|
}
|
2020-11-04 16:35:15 +01:00
|
|
|
|
2020-11-05 15:09:11 +01:00
|
|
|
get 'super_admins/edit_otp', to: 'super_admins#edit_otp', as: 'edit_super_admin_otp'
|
|
|
|
put 'super_admins/enable_otp', to: 'super_admins#enable_otp', as: 'enable_super_admin_otp'
|
2016-02-23 16:51:24 +01:00
|
|
|
|
2015-10-23 16:19:55 +02:00
|
|
|
devise_for :users, controllers: {
|
2018-01-15 19:02:12 +01:00
|
|
|
sessions: 'users/sessions',
|
|
|
|
registrations: 'users/registrations',
|
2018-10-02 15:47:32 +02:00
|
|
|
confirmations: 'users/confirmations',
|
2018-09-19 11:56:05 +02:00
|
|
|
passwords: 'users/passwords'
|
2018-01-15 19:02:12 +01:00
|
|
|
}
|
2015-11-16 16:16:08 +01:00
|
|
|
|
2016-02-15 17:13:16 +01:00
|
|
|
devise_scope :user do
|
2016-05-26 15:59:50 +02:00
|
|
|
get '/users/no_procedure' => 'users/sessions#no_procedure'
|
2018-10-03 11:11:02 +02:00
|
|
|
get 'connexion-par-jeton/:id' => 'users/sessions#sign_in_by_link', as: 'sign_in_by_link'
|
2021-06-15 17:02:59 +02:00
|
|
|
get 'lien-envoye' => 'users/sessions#link_sent', as: 'link_sent'
|
2021-04-22 12:07:35 +02:00
|
|
|
get '/users/password/reset-link-sent' => 'users/passwords#reset_link_sent'
|
2016-02-15 17:13:16 +01:00
|
|
|
end
|
|
|
|
|
2021-08-31 18:14:32 +02:00
|
|
|
get 'password_complexity' => 'password_complexity#show', as: 'show_password_complexity'
|
|
|
|
|
2022-05-23 15:09:22 +02:00
|
|
|
resources :targeted_user_links, only: [:show]
|
|
|
|
|
2018-07-31 11:48:58 +02:00
|
|
|
#
|
|
|
|
# Main routes
|
|
|
|
#
|
|
|
|
|
2015-10-26 16:10:38 +01:00
|
|
|
root 'root#index'
|
2018-08-10 15:18:57 +02:00
|
|
|
get '/administration' => 'root#administration'
|
2015-10-05 16:42:29 +02:00
|
|
|
|
2016-09-06 11:07:26 +02:00
|
|
|
get 'users' => 'users#index'
|
|
|
|
get 'admin' => 'admin#index'
|
|
|
|
|
2018-08-13 14:46:22 +02:00
|
|
|
get '/stats' => 'stats#index'
|
|
|
|
get '/stats/download' => 'stats#download'
|
2017-03-24 18:04:37 +01:00
|
|
|
|
2015-12-18 12:01:26 +01:00
|
|
|
namespace :france_connect do
|
2015-12-24 10:03:06 +01:00
|
|
|
get 'particulier' => 'particulier#login'
|
|
|
|
get 'particulier/callback' => 'particulier#callback'
|
2021-10-13 00:45:20 +02:00
|
|
|
get 'particulier/merge/:merge_token' => 'particulier#merge', as: :particulier_merge
|
2021-11-17 16:21:55 +01:00
|
|
|
get 'particulier/mail_merge_with_existing_account/:merge_token' => 'particulier#mail_merge_with_existing_account', as: :particulier_mail_merge_with_existing_account
|
|
|
|
post 'particulier/resend_and_renew_merge_confirmation' => 'particulier#resend_and_renew_merge_confirmation', as: :particulier_resend_and_renew_merge_confirmation
|
2021-10-13 09:23:40 +02:00
|
|
|
post 'particulier/merge_with_existing_account' => 'particulier#merge_with_existing_account'
|
2021-10-13 09:26:54 +02:00
|
|
|
post 'particulier/merge_with_new_account' => 'particulier#merge_with_new_account'
|
2015-12-18 12:01:26 +01:00
|
|
|
end
|
2015-08-10 11:05:06 +02:00
|
|
|
|
2021-11-19 10:00:04 +01:00
|
|
|
namespace :agent_connect do
|
|
|
|
get '' => 'agent#index'
|
2021-11-19 10:21:47 +01:00
|
|
|
get 'login' => 'agent#login'
|
2021-11-19 15:24:54 +01:00
|
|
|
get 'callback' => 'agent#callback'
|
2021-11-19 10:00:04 +01:00
|
|
|
end
|
|
|
|
|
2018-04-03 17:53:14 +02:00
|
|
|
namespace :champs do
|
2022-04-28 15:04:21 +02:00
|
|
|
get ':champ_id/siret', to: 'siret#show', as: :siret
|
2022-04-28 15:06:04 +02:00
|
|
|
get ':champ_id/dossier_link', to: 'dossier_link#show', as: :dossier_link
|
2022-05-03 16:40:09 +02:00
|
|
|
post ':champ_id/repetition', to: 'repetition#add', as: :repetition
|
|
|
|
delete ':champ_id/repetition', to: 'repetition#remove'
|
2020-05-05 15:09:29 +02:00
|
|
|
|
|
|
|
get ':champ_id/carte/features', to: 'carte#index', as: :carte_features
|
|
|
|
post ':champ_id/carte/features', to: 'carte#create'
|
|
|
|
patch ':champ_id/carte/features/:id', to: 'carte#update'
|
|
|
|
delete ':champ_id/carte/features/:id', to: 'carte#destroy'
|
|
|
|
|
2022-04-28 15:07:09 +02:00
|
|
|
put ':champ_id/piece_justificative', to: 'piece_justificative#update', as: :piece_justificative
|
2018-04-03 17:53:14 +02:00
|
|
|
end
|
|
|
|
|
2020-04-08 17:53:04 +02:00
|
|
|
resources :attachments, only: [:show, :destroy]
|
2021-04-29 09:32:25 +02:00
|
|
|
resources :recherche, only: [:index]
|
2019-05-21 14:21:55 +02:00
|
|
|
|
2018-07-31 11:48:58 +02:00
|
|
|
get "patron" => "root#patron"
|
2018-11-07 16:54:18 +01:00
|
|
|
get "suivi" => "root#suivi"
|
2019-12-03 16:02:08 +01:00
|
|
|
post "dismiss_outdated_browser" => "root#dismiss_outdated_browser"
|
2021-05-12 16:30:35 +02:00
|
|
|
post "save_locale" => "root#save_locale"
|
2018-07-31 11:48:58 +02:00
|
|
|
|
2018-08-29 21:26:22 +02:00
|
|
|
get "contact", to: "support#index"
|
|
|
|
post "contact", to: "support#create"
|
|
|
|
|
2018-11-28 15:19:12 +01:00
|
|
|
get "contact-admin", to: "support#admin"
|
|
|
|
|
2018-08-29 21:26:22 +02:00
|
|
|
post "webhooks/helpscout", to: "webhook#helpscout"
|
|
|
|
match "webhooks/helpscout", to: lambda { |_| [204, {}, nil] }, via: :head
|
2018-08-29 11:44:12 +02:00
|
|
|
|
2018-07-31 11:48:58 +02:00
|
|
|
#
|
|
|
|
# Deprecated UI
|
|
|
|
#
|
|
|
|
|
2015-09-23 19:20:03 +02:00
|
|
|
namespace :users do
|
2018-11-01 13:00:35 +01:00
|
|
|
resources :dossiers, only: [] do
|
2018-10-10 20:01:02 +02:00
|
|
|
post '/carte/zones' => 'carte#zones'
|
2015-09-28 18:55:16 +02:00
|
|
|
get '/carte' => 'carte#show'
|
2015-11-25 17:05:14 +01:00
|
|
|
post '/carte' => 'carte#save'
|
2020-03-19 14:47:09 +01:00
|
|
|
post '/repousser-expiration' => 'dossiers#extend_conservation'
|
2015-09-23 19:20:03 +02:00
|
|
|
end
|
2018-07-03 13:35:32 +02:00
|
|
|
|
|
|
|
# Redirection of legacy "/users/dossiers" route to "/dossiers"
|
|
|
|
get 'dossiers', to: redirect('/dossiers')
|
2018-10-02 14:50:53 +02:00
|
|
|
get 'dossiers/:id/recapitulatif', to: redirect('/dossiers/%{id}')
|
2018-11-13 16:18:52 +01:00
|
|
|
get 'dossiers/invites/:id', to: redirect(path: '/invites/%{id}')
|
2015-08-10 11:05:06 +02:00
|
|
|
|
2019-08-07 15:52:38 +02:00
|
|
|
get 'activate' => '/users/activate#new'
|
|
|
|
patch 'activate' => '/users/activate#create'
|
2018-04-27 12:29:01 +02:00
|
|
|
end
|
|
|
|
|
2019-09-24 16:38:58 +02:00
|
|
|
# order matters: we don't want those routes to match /admin/procedures/:id
|
2021-11-25 16:26:55 +01:00
|
|
|
get 'admin/procedures/new' => 'administrateurs/procedures#new', as: :new_admin_procedure
|
2019-09-24 16:38:58 +02:00
|
|
|
|
2015-10-23 16:19:55 +02:00
|
|
|
namespace :admin do
|
2018-01-11 14:18:17 +01:00
|
|
|
get 'activate' => '/administrateurs/activate#new'
|
|
|
|
patch 'activate' => '/administrateurs/activate#create'
|
2020-09-17 13:53:48 +02:00
|
|
|
get 'procedures/archived', to: redirect('/admin/procedures?statut=archivees')
|
|
|
|
get 'procedures/draft', to: redirect('/admin/procedures?statut=brouillons')
|
2016-05-20 15:36:38 +02:00
|
|
|
|
2019-08-06 11:46:55 +02:00
|
|
|
namespace :assigns do
|
2018-08-29 22:11:38 +02:00
|
|
|
get 'show' # delete after fixed tests admin/instructeurs/show_spec without this line
|
2016-05-24 16:39:39 +02:00
|
|
|
end
|
2015-10-23 16:19:55 +02:00
|
|
|
end
|
2015-09-22 10:15:12 +02:00
|
|
|
|
2020-07-14 18:25:31 +02:00
|
|
|
resources :invites, only: [:show, :destroy] do
|
2018-11-13 16:18:52 +01:00
|
|
|
collection do
|
|
|
|
post 'dossier/:dossier_id', to: 'invites#create', as: :dossier
|
|
|
|
end
|
2016-09-13 12:17:56 +02:00
|
|
|
end
|
|
|
|
|
2018-07-31 11:48:58 +02:00
|
|
|
#
|
|
|
|
# API
|
|
|
|
#
|
|
|
|
|
2022-09-13 11:38:48 +02:00
|
|
|
get 'graphql/schema' => redirect('/graphql/schema/index.html')
|
2022-03-22 12:11:23 +01:00
|
|
|
authenticated :user, lambda { |user| user.administrateur? } do
|
2020-04-09 12:41:35 +02:00
|
|
|
mount GraphqlPlayground::Rails::Engine, at: "/graphql", graphql_path: "/api/v2/graphql"
|
2018-11-19 21:18:39 +01:00
|
|
|
end
|
|
|
|
|
2015-12-21 17:50:34 +01:00
|
|
|
namespace :api do
|
|
|
|
namespace :v1 do
|
2016-01-20 15:48:46 +01:00
|
|
|
resources :procedures, only: [:index, :show] do
|
2016-01-25 16:08:10 +01:00
|
|
|
resources :dossiers, only: [:index, :show]
|
2016-01-20 15:48:46 +01:00
|
|
|
end
|
2015-12-21 17:50:34 +01:00
|
|
|
end
|
2018-11-19 21:18:17 +01:00
|
|
|
|
|
|
|
namespace :v2 do
|
|
|
|
post :graphql, to: "graphql#execute"
|
2020-10-01 12:41:57 +02:00
|
|
|
get 'dossiers/pdf/:id', format: :pdf, to: "dossiers#pdf", as: :dossier_pdf
|
|
|
|
get 'dossiers/geojson/:id', to: "dossiers#geojson", as: :dossier_geojson
|
2018-11-19 21:18:17 +01:00
|
|
|
end
|
2021-08-31 12:49:35 +02:00
|
|
|
|
|
|
|
resources :pays, only: :index
|
2015-12-21 17:50:34 +01:00
|
|
|
end
|
2016-02-22 19:42:47 +01:00
|
|
|
|
2018-07-31 11:48:58 +02:00
|
|
|
#
|
|
|
|
# User
|
|
|
|
#
|
2017-06-14 14:42:09 +02:00
|
|
|
|
2019-03-25 10:53:45 +01:00
|
|
|
scope module: 'users' do
|
2021-06-02 12:48:24 +02:00
|
|
|
namespace :statistiques do
|
|
|
|
get '/:path', action: 'statistiques'
|
|
|
|
end
|
|
|
|
|
2018-11-01 13:00:35 +01:00
|
|
|
namespace :commencer do
|
2022-04-25 14:57:15 +02:00
|
|
|
get '/test/:path/dossier_vide', action: :dossier_vide_pdf_test, as: :dossier_vide_test
|
2018-11-01 13:00:35 +01:00
|
|
|
get '/test/:path', action: 'commencer_test', as: :test
|
|
|
|
get '/:path', action: 'commencer'
|
2020-02-27 17:39:19 +01:00
|
|
|
get '/:path/dossier_vide', action: 'dossier_vide_pdf', as: :dossier_vide
|
2019-01-16 11:57:58 +01:00
|
|
|
get '/:path/sign_in', action: 'sign_in', as: :sign_in
|
|
|
|
get '/:path/sign_up', action: 'sign_up', as: :sign_up
|
2019-04-02 15:03:35 +02:00
|
|
|
get '/:path/france_connect', action: 'france_connect', as: :france_connect
|
2018-11-01 13:00:35 +01:00
|
|
|
end
|
|
|
|
|
|
|
|
resources :dossiers, only: [:index, :show, :new] do
|
2018-02-08 17:13:15 +01:00
|
|
|
member do
|
|
|
|
get 'identite'
|
2018-02-08 17:13:15 +01:00
|
|
|
patch 'update_identite'
|
2018-10-04 09:43:19 +02:00
|
|
|
get 'siret'
|
2018-10-15 18:41:53 +02:00
|
|
|
post 'siret', to: 'dossiers#update_siret'
|
2018-10-15 12:25:25 +02:00
|
|
|
get 'etablissement'
|
2018-09-06 09:09:23 +02:00
|
|
|
get 'brouillon'
|
2018-09-06 10:49:26 +02:00
|
|
|
patch 'brouillon', to: 'dossiers#update_brouillon'
|
2018-09-05 18:23:10 +02:00
|
|
|
get 'modifier', to: 'dossiers#modifier'
|
2018-09-06 15:36:50 +02:00
|
|
|
patch 'modifier', to: 'dossiers#update'
|
2018-02-27 09:49:58 +01:00
|
|
|
get 'merci'
|
2018-08-29 16:57:01 +02:00
|
|
|
get 'demande'
|
2018-09-05 13:56:12 +02:00
|
|
|
get 'messagerie'
|
|
|
|
post 'commentaire' => 'dossiers#create_commentaire'
|
2021-12-07 15:38:37 +01:00
|
|
|
patch 'delete_dossier'
|
2022-01-05 10:41:18 +01:00
|
|
|
patch 'restore', to: 'dossiers#restore'
|
2018-07-17 11:26:41 +02:00
|
|
|
get 'attestation'
|
2021-09-07 10:37:42 +02:00
|
|
|
get 'transferer', to: 'dossiers#transferer'
|
2022-05-04 08:57:14 +02:00
|
|
|
get 'papertrail', format: :pdf
|
2018-02-08 17:13:15 +01:00
|
|
|
end
|
2018-07-17 11:27:10 +02:00
|
|
|
|
|
|
|
collection do
|
2021-09-07 10:37:42 +02:00
|
|
|
get 'transferer', to: 'dossiers#transferer_all'
|
2020-04-03 15:06:27 +02:00
|
|
|
get 'recherche'
|
2021-09-07 10:37:42 +02:00
|
|
|
resources :transfers, only: [:create, :update, :destroy]
|
2018-07-17 11:27:10 +02:00
|
|
|
end
|
2017-06-29 14:18:59 +02:00
|
|
|
end
|
2021-09-07 10:37:42 +02:00
|
|
|
|
2018-08-08 17:37:41 +02:00
|
|
|
resource :feedback, only: [:create]
|
2018-09-13 16:13:54 +02:00
|
|
|
get 'demarches' => 'demarches#index'
|
2019-07-02 18:15:03 +02:00
|
|
|
|
|
|
|
get 'profil' => 'profil#show'
|
|
|
|
post 'renew-api-token' => 'profil#renew_api_token'
|
|
|
|
# allow refresh 'renew api token' page
|
|
|
|
get 'renew-api-token' => redirect('/profil')
|
2019-07-08 10:40:50 +02:00
|
|
|
patch 'update_email' => 'profil#update_email'
|
2021-09-20 13:14:03 +02:00
|
|
|
post 'transfer_all_dossiers' => 'profil#transfer_all_dossiers'
|
2021-10-26 13:22:51 +02:00
|
|
|
post 'accept_merge' => 'profil#accept_merge'
|
|
|
|
post 'refuse_merge' => 'profil#refuse_merge'
|
2017-06-29 14:18:59 +02:00
|
|
|
end
|
|
|
|
|
2021-02-09 10:24:13 +01:00
|
|
|
#
|
|
|
|
# Expert
|
|
|
|
#
|
|
|
|
scope module: 'experts', as: 'expert' do
|
|
|
|
get 'avis', to: 'avis#index', as: 'all_avis'
|
|
|
|
|
2021-02-25 10:10:42 +01:00
|
|
|
resources :procedures, only: [], param: :procedure_id do
|
2021-02-09 10:24:13 +01:00
|
|
|
member do
|
|
|
|
resources :avis, only: [:show, :update] do
|
|
|
|
get '', action: 'procedure', on: :collection, as: :procedure
|
|
|
|
member do
|
|
|
|
get 'instruction'
|
|
|
|
get 'messagerie'
|
|
|
|
post 'commentaire' => 'avis#create_commentaire'
|
|
|
|
post 'avis' => 'avis#create_avis'
|
|
|
|
get 'bilans_bdf'
|
2021-09-27 15:07:50 +02:00
|
|
|
get 'telecharger_pjs' => 'avis#telecharger_pjs'
|
2021-02-09 10:24:13 +01:00
|
|
|
|
2021-06-15 18:44:33 +02:00
|
|
|
get 'sign_up' => 'avis#sign_up'
|
|
|
|
post 'sign_up' => 'avis#update_expert'
|
|
|
|
|
|
|
|
# This redirections are ephemeral, to ensure that emails sent to experts before are still valid
|
|
|
|
# TODO : remove these lines after September, 2021
|
|
|
|
get 'sign_up/email/:email' => 'avis#sign_up', constraints: { email: /.*/ }, as: 'sign_up_legacy'
|
|
|
|
post 'sign_up/email/:email' => 'avis#update_expert', constraints: { email: /.*/ }, as: 'update_expert_legacy'
|
2021-02-09 10:24:13 +01:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2018-07-31 11:48:58 +02:00
|
|
|
#
|
2019-08-13 13:56:46 +02:00
|
|
|
# Instructeur
|
2018-07-31 11:48:58 +02:00
|
|
|
#
|
|
|
|
|
2019-08-06 11:02:54 +02:00
|
|
|
scope module: 'instructeurs', as: 'instructeur' do
|
2017-07-11 16:09:03 +02:00
|
|
|
resources :procedures, only: [:index, :show], param: :procedure_id do
|
|
|
|
member do
|
2022-07-04 16:13:15 +02:00
|
|
|
resources :archives, only: [:index, :create]
|
|
|
|
|
2019-10-25 09:26:31 +02:00
|
|
|
resources :groupes, only: [:index, :show], controller: 'groupe_instructeurs' do
|
|
|
|
member do
|
|
|
|
post 'add_instructeur'
|
2019-10-25 10:17:39 +02:00
|
|
|
delete 'remove_instructeur'
|
2019-10-25 09:26:31 +02:00
|
|
|
end
|
|
|
|
end
|
2019-10-24 21:52:05 +02:00
|
|
|
|
2020-06-26 19:28:28 +02:00
|
|
|
resources :avis, only: [:show, :update] do
|
|
|
|
get '', action: 'procedure', on: :collection, as: :procedure
|
2020-04-16 17:07:11 +02:00
|
|
|
member do
|
2020-07-16 11:14:37 +02:00
|
|
|
patch 'revoquer'
|
2020-07-20 16:26:16 +02:00
|
|
|
get 'revive'
|
2020-04-16 17:07:11 +02:00
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2017-10-02 17:03:38 +02:00
|
|
|
patch 'update_displayed_fields'
|
2017-09-27 15:16:07 +02:00
|
|
|
get 'update_sort/:table/:column' => 'procedures#update_sort', as: 'update_sort'
|
2017-09-28 11:04:18 +02:00
|
|
|
post 'add_filter'
|
2019-03-14 18:07:19 +01:00
|
|
|
get 'remove_filter' => 'procedures#remove_filter', as: 'remove_filter'
|
2019-10-02 15:51:37 +02:00
|
|
|
get 'download_export'
|
2022-05-11 16:11:34 +02:00
|
|
|
post 'download_export'
|
2019-07-30 14:37:00 +02:00
|
|
|
get 'stats'
|
2019-03-13 17:37:07 +01:00
|
|
|
get 'email_notifications'
|
|
|
|
patch 'update_email_notifications'
|
2020-03-20 17:59:16 +01:00
|
|
|
get 'deleted_dossiers'
|
2021-07-22 14:33:02 +02:00
|
|
|
get 'email_usagers'
|
|
|
|
post 'create_multiple_commentaire'
|
2017-10-02 17:03:38 +02:00
|
|
|
|
2022-03-11 13:57:09 +01:00
|
|
|
resources :dossiers, only: [:show, :destroy], param: :dossier_id do
|
2017-07-06 16:33:36 +02:00
|
|
|
member do
|
2021-11-15 13:53:32 +01:00
|
|
|
resources :commentaires, only: [:destroy]
|
2021-12-06 13:09:46 +01:00
|
|
|
post 'repousser-expiration' => 'dossiers#extend_conservation'
|
2017-07-06 16:33:36 +02:00
|
|
|
get 'attestation'
|
2020-04-30 15:49:43 +02:00
|
|
|
get 'geo_data'
|
2019-01-18 14:20:30 +01:00
|
|
|
get 'apercu_attestation'
|
2020-04-30 11:25:22 +02:00
|
|
|
get 'bilans_bdf'
|
2017-07-19 11:08:53 +02:00
|
|
|
get 'messagerie'
|
2017-09-27 12:08:47 +02:00
|
|
|
get 'annotations-privees' => 'dossiers#annotations_privees'
|
2017-09-26 14:38:16 +02:00
|
|
|
get 'avis'
|
2017-12-01 15:03:19 +01:00
|
|
|
get 'personnes-impliquees' => 'dossiers#personnes_impliquees'
|
2017-07-06 16:33:36 +02:00
|
|
|
patch 'follow'
|
|
|
|
patch 'unfollow'
|
|
|
|
patch 'archive'
|
|
|
|
patch 'unarchive'
|
2022-03-11 13:57:09 +01:00
|
|
|
patch 'restore'
|
2017-08-02 15:33:23 +02:00
|
|
|
patch 'annotations' => 'dossiers#update_annotations'
|
2017-07-19 14:04:49 +02:00
|
|
|
post 'commentaire' => 'dossiers#create_commentaire'
|
2017-11-30 17:11:46 +01:00
|
|
|
post 'passer-en-instruction' => 'dossiers#passer_en_instruction'
|
2017-11-30 17:18:06 +01:00
|
|
|
post 'repasser-en-construction' => 'dossiers#repasser_en_construction'
|
2019-07-01 16:16:40 +02:00
|
|
|
post 'repasser-en-instruction' => 'dossiers#repasser_en_instruction'
|
2017-12-01 12:57:01 +01:00
|
|
|
post 'terminer'
|
2018-09-10 17:52:49 +02:00
|
|
|
post 'send-to-instructeurs' => 'dossiers#send_to_instructeurs'
|
2017-08-28 14:16:13 +02:00
|
|
|
post 'avis' => 'dossiers#create_avis'
|
2017-10-05 23:27:02 +02:00
|
|
|
get 'print' => 'dossiers#print'
|
2019-07-01 15:55:37 +02:00
|
|
|
get 'telecharger_pjs' => 'dossiers#telecharger_pjs'
|
2017-07-06 16:33:36 +02:00
|
|
|
end
|
2017-07-11 16:09:03 +02:00
|
|
|
end
|
2017-06-29 15:31:29 +02:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2018-07-31 11:48:58 +02:00
|
|
|
#
|
|
|
|
# Administrateur
|
|
|
|
#
|
|
|
|
|
2021-11-25 16:26:55 +01:00
|
|
|
scope module: 'administrateurs', path: 'admin', as: 'admin' do
|
2021-09-01 00:08:51 +02:00
|
|
|
resources :procedures do
|
2022-06-23 13:51:58 +02:00
|
|
|
resources :archives, only: [:index, :create]
|
2022-07-04 16:13:15 +02:00
|
|
|
resources :exports, only: [] do
|
|
|
|
collection do
|
|
|
|
get 'download'
|
|
|
|
post 'download'
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2021-08-31 23:44:23 +02:00
|
|
|
collection do
|
|
|
|
get 'new_from_existing'
|
2022-07-22 15:40:22 +02:00
|
|
|
post 'search'
|
2021-08-31 23:44:23 +02:00
|
|
|
end
|
|
|
|
|
2018-04-13 16:56:00 +02:00
|
|
|
member do
|
|
|
|
get 'apercu'
|
2018-11-14 16:28:02 +01:00
|
|
|
get 'champs'
|
2022-09-26 19:02:39 +02:00
|
|
|
get 'zones'
|
2018-11-14 16:28:02 +01:00
|
|
|
get 'annotations'
|
2022-03-16 16:23:53 +01:00
|
|
|
get 'modifications'
|
2020-07-07 12:03:32 +02:00
|
|
|
get 'monavis'
|
|
|
|
patch 'update_monavis'
|
|
|
|
get 'jeton'
|
|
|
|
patch 'update_jeton'
|
2020-09-30 18:22:06 +02:00
|
|
|
put :allow_expert_review
|
2021-04-16 11:11:50 +02:00
|
|
|
put :experts_require_administrateur_invitation
|
2022-05-10 13:59:37 +02:00
|
|
|
put :restore
|
2018-04-13 16:56:00 +02:00
|
|
|
end
|
2019-02-06 18:19:27 +01:00
|
|
|
|
2021-09-15 11:10:28 +02:00
|
|
|
get :api_particulier, controller: 'jeton_particulier'
|
|
|
|
|
|
|
|
resource 'api_particulier', only: [] do
|
2021-09-15 10:53:09 +02:00
|
|
|
resource 'jeton', only: [:show, :update], controller: 'jeton_particulier'
|
2021-09-13 15:59:58 +02:00
|
|
|
resource 'sources', only: [:show, :update], controller: 'sources_particulier'
|
2021-09-15 11:10:28 +02:00
|
|
|
end
|
|
|
|
|
2022-07-04 11:27:39 +02:00
|
|
|
resources :conditions, only: [:update, :destroy], param: :stable_id do
|
|
|
|
patch :add_row, on: :member
|
|
|
|
patch :change_targeted_champ, on: :member
|
|
|
|
delete :delete_row, on: :member
|
|
|
|
end
|
|
|
|
|
2021-09-01 00:20:32 +02:00
|
|
|
put 'clone'
|
2021-09-01 00:25:00 +02:00
|
|
|
put 'archive'
|
2020-09-08 12:35:44 +02:00
|
|
|
get 'publication' => 'procedures#publication', as: :publication
|
|
|
|
put 'publish' => 'procedures#publish', as: :publish
|
2022-07-06 12:37:08 +02:00
|
|
|
put 'reset_draft' => 'procedures#reset_draft', as: :reset_draft
|
2020-09-29 10:52:13 +02:00
|
|
|
get 'transfert' => 'procedures#transfert', as: :transfert
|
2022-05-27 15:45:03 +02:00
|
|
|
get 'close' => 'procedures#close', as: :close
|
2020-09-08 12:35:44 +02:00
|
|
|
post 'transfer' => 'procedures#transfer', as: :transfer
|
2020-08-25 11:40:24 +02:00
|
|
|
resources :mail_templates, only: [:edit, :update]
|
|
|
|
|
2020-01-06 17:09:08 +01:00
|
|
|
resources :groupe_instructeurs, only: [:index, :show, :create, :update, :destroy] do
|
2019-10-10 19:36:56 +02:00
|
|
|
member do
|
|
|
|
post 'add_instructeur'
|
2019-10-09 18:23:29 +02:00
|
|
|
delete 'remove_instructeur'
|
2020-01-07 17:39:50 +01:00
|
|
|
get 'reaffecter_dossiers'
|
|
|
|
post 'reaffecter'
|
2019-10-10 19:36:56 +02:00
|
|
|
end
|
2019-10-17 10:57:58 +02:00
|
|
|
|
|
|
|
collection do
|
|
|
|
patch 'update_routing_criteria_name'
|
2021-09-14 19:54:35 +02:00
|
|
|
patch 'update_routing_enabled'
|
2021-09-15 10:37:19 +02:00
|
|
|
patch 'update_instructeurs_self_management_enabled'
|
2021-06-09 17:51:49 +02:00
|
|
|
post 'import'
|
2021-10-04 16:02:37 +02:00
|
|
|
get 'export_groupe_instructeurs'
|
2019-10-17 10:57:58 +02:00
|
|
|
end
|
2019-10-10 19:36:56 +02:00
|
|
|
end
|
2019-10-17 15:13:50 +02:00
|
|
|
|
2019-04-12 10:43:51 +02:00
|
|
|
resources :administrateurs, controller: 'procedure_administrateurs', only: [:index, :create, :destroy]
|
|
|
|
|
2021-04-06 14:25:41 +02:00
|
|
|
resources :experts, controller: 'experts_procedures', only: [:index, :create, :update, :destroy]
|
2021-04-06 13:18:51 +02:00
|
|
|
|
2022-07-05 11:27:54 +02:00
|
|
|
resources :types_de_champ, only: [:create, :update, :destroy], param: :stable_id do
|
2019-03-20 14:27:30 +01:00
|
|
|
member do
|
|
|
|
patch :move
|
2022-06-01 15:23:18 +02:00
|
|
|
patch :move_up
|
|
|
|
patch :move_down
|
2022-08-11 14:01:26 +02:00
|
|
|
put :piece_justificative_template
|
2019-03-20 14:27:30 +01:00
|
|
|
end
|
|
|
|
end
|
2019-03-14 14:58:01 +01:00
|
|
|
|
2020-08-06 16:32:51 +02:00
|
|
|
resources :mail_templates, only: [:index] do
|
2019-03-14 14:58:01 +01:00
|
|
|
get 'preview', on: :member
|
|
|
|
end
|
2020-07-29 12:11:30 +02:00
|
|
|
|
|
|
|
resource :attestation_template, only: [:edit, :update, :create] do
|
|
|
|
get 'preview', on: :member
|
|
|
|
end
|
2022-02-04 14:40:16 +01:00
|
|
|
resource :dossier_submitted_message, only: [:edit, :update, :create]
|
2020-07-29 12:11:30 +02:00
|
|
|
# ADDED TO ACCESS IT FROM THE IFRAME
|
|
|
|
get 'attestation_template/preview' => 'attestation_templates#preview'
|
2018-04-13 16:56:00 +02:00
|
|
|
end
|
2018-04-19 16:15:44 +02:00
|
|
|
|
2018-04-23 15:32:27 +02:00
|
|
|
resources :services, except: [:show] do
|
2018-04-20 12:03:02 +02:00
|
|
|
collection do
|
|
|
|
patch 'add_to_procedure'
|
|
|
|
end
|
|
|
|
end
|
2018-04-13 16:56:00 +02:00
|
|
|
end
|
|
|
|
|
2020-01-14 18:46:07 +01:00
|
|
|
if Rails.env.test?
|
|
|
|
scope 'test/api_geo' do
|
|
|
|
get 'regions' => 'api_geo_test#regions'
|
|
|
|
get 'communes' => 'api_geo_test#communes'
|
|
|
|
get 'departements' => 'api_geo_test#departements'
|
2021-10-26 16:21:47 +02:00
|
|
|
get 'departements/:code/communes' => 'api_geo_test#communes'
|
2020-01-14 18:46:07 +01:00
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2018-07-31 11:48:58 +02:00
|
|
|
#
|
2018-01-15 10:02:10 +01:00
|
|
|
# Legacy routes
|
2018-07-31 11:48:58 +02:00
|
|
|
#
|
2020-09-24 09:57:43 +02:00
|
|
|
get 'demandes/new' => redirect(DEMANDE_INSCRIPTION_ADMIN_PAGE_URL)
|
2018-07-31 11:48:58 +02:00
|
|
|
|
2018-01-15 10:02:10 +01:00
|
|
|
get 'backoffice' => redirect('/procedures')
|
|
|
|
get 'backoffice/sign_in' => redirect('/users/sign_in')
|
2018-01-16 16:08:20 +01:00
|
|
|
get 'backoffice/dossiers/procedure/:procedure_id' => redirect('/procedures/%{procedure_id}')
|
2015-08-10 11:05:06 +02:00
|
|
|
end
|