Commit graph

2441 commits

Author SHA1 Message Date
Paul Chavard
33fc8a45ab feat(emails): show email errors on procedure page 2022-11-04 09:08:41 +00:00
Paul Chavard
5487ce0458 feat(graphql): implement stored queries 2022-11-02 11:26:57 +01:00
Kara Diaby
329869b929 controllers 2022-11-02 10:19:43 +01:00
Paul Chavard
e7766694d3 fix(messages): retry stale blobs 2022-11-02 09:19:51 +01:00
Paul Chavard
c9adfc3bfa fix(procedure): only set replaced_by if the procedure is effectively published 2022-11-01 15:53:58 +01:00
Martin
1b1568b2c2 remaniement(Administrateurs::ArchivesController): ne passe pas par la table des traitement pour compter le nombre de dossier traites par mois. Depuis que nous avons redescendu la colonne processed_at sur la table dossiers, ce n'\est plus necessaire et le code est compliqué a comprendre 2022-11-01 12:43:49 +01:00
Paul Chavard
8cf9aec0f7 refactor(procedure): expose procedure tags on model 2022-10-31 19:50:25 +01:00
Christophe Robillard
4308f1af26 improve readibility 2022-10-31 16:12:02 +01:00
Christophe Robillard
0799c40aaa add pagination for all demarches view 2022-10-31 16:12:02 +01:00
Christophe Robillard
22fe357d75 list all demarches, filtered by status 2022-10-31 16:12:02 +01:00
Christophe Robillard
9abf1c4af3 list all demarches, filtered by zones 2022-10-31 16:12:02 +01:00
Paul Chavard
2ed26e8699 fix(graphql): properly handle variables json parse errors 2022-10-31 11:32:30 +01:00
Paul Chavard
473a772032 feat(graphql): on api exceptions log query and variables 2022-10-28 12:18:21 +02:00
simon lehericey
6af4fe624a refactor(service): explicit call to service job to avoid test side effect 2022-10-25 14:44:43 +02:00
Kara Diaby
cf8e6a9c67 controller 2022-10-21 19:13:12 +02:00
simon lehericey
fbf089d60e refactor(dossier): rename check_mandatory_champs -> check_mandatory_and_visible_champs 2022-10-18 11:13:41 +02:00
Paul Chavard
736e0b0731 fix(routage): fill dossier groupe instructeur in some edge cases 2022-10-14 17:29:56 +02:00
simon lehericey
40a3fff593 perf(dossiers_controller): do not load pj template in update, -10ms 2022-10-13 22:36:56 +02:00
Paul Chavard
d409b6f4ef feat(dossier): do not save dossier on submit 2022-10-13 14:44:46 +02:00
Paul Chavard
1fd1878370 feat(jobs): add request_id to jobs payload 2022-10-12 14:32:23 +02:00
Damien Le Thiec
29a97fac43
Merge branch 'main' into feature/add_rna_type_de_champs 2022-10-11 18:59:45 +02:00
simon lehericey
7672ad3fe9 fix(editor champ): do not raise on destroy replay 2022-10-11 16:27:49 +02:00
Damien Le Thiec
73f6063c87
Merge branch 'main' into feature/add_rna_type_de_champs 2022-10-11 15:36:46 +02:00
Damien Le Thiec
2e8c0512a5 Remove skip_cleanup option 2022-10-11 15:11:51 +02:00
Damien Le Thiec
bcdc9c18ae Remove skip_fetch_data mechanism 2022-10-11 11:52:59 +02:00
simon lehericey
97529ab6af refactor(user dossier): move ruby logic to controller 2022-10-11 11:39:05 +02:00
simon lehericey
32e01b13ef refactor(user dossier): mutualize update/update_brouillon 2022-10-11 11:39:05 +02:00
simon lehericey
7e03f0c825 refactor(dossier_preloader): add load_one api 2022-10-10 12:31:40 +02:00
simon lehericey
f32b05e8b4 perf(dossier controller): use DossierPreloader 2022-10-10 12:31:40 +02:00
Eric Leroy-Terquem
1177d861f4 add validation on routing_criteria_name 2022-10-10 09:48:11 +02:00
Christophe Robillard
bdcb451d3c procedure publiee must have one zone at least 2022-10-07 10:48:35 +02:00
Christophe Robillard
4d2c37ffdf extract checkboxes zones to dedicated page 2022-10-07 10:48:35 +02:00
Christophe Robillard
94ca93e130 can choose multiple zones 2022-10-07 10:48:35 +02:00
Damien Le Thiec
0131a41266
Merge branch 'main' into feature/add_rna_type_de_champs 2022-10-05 12:38:24 +02:00
Damien Le Thiec
93e89c8968 Fix small bugs rna controller and add tests 2022-10-05 12:31:34 +02:00
Damien Le Thiec
0d9f02c88d First draft autofetch data for RNA 2022-10-04 22:11:01 +02:00
Martin
54a47fadae fix(sentry/3422144920): old email using TargetUserLink creates confusing errors 2022-10-04 11:41:32 +02:00
simon lehericey
77289b7a80 perf(admin_procedure_controller): same with publication page 2022-10-03 20:49:38 +02:00
simon lehericey
e043725d51 refactor(admin_procedure_controller): simplify AR include 2022-10-03 20:49:38 +02:00
simon lehericey
adbb655a4a perf(procedure edition): validate only once to avoid reload tdc with n+1 2022-10-03 20:49:38 +02:00
simon lehericey
122c8107a5 fix(web_graphql): fix graphql web playground authorization 2022-10-03 18:08:03 +02:00
Martin
aceb8996c1 feat(instructeur/procedure#show): enhance sort by notifications as planned by UX
Update app/javascript/controllers/checkbox_controller.ts

Co-authored-by: Paul Chavard <github@paul.chavard.net>
2022-09-30 10:29:51 +02:00
Paul Chavard
462cc41caa refactor(block): use block? instead of repetition? 2022-09-29 17:49:14 +02:00
Paul Chavard
b0aa777315 refactor(ujs): france_connect controller to use turbo 2022-09-29 16:51:54 +02:00
Paul Chavard
df47f4a7ab feat(graphql): new tokens should carry administrateur_id 2022-09-29 11:58:58 +02:00
simon lehericey
8efd305256 add upper_tdcs to condition_form 2022-09-28 10:06:31 +02:00
Martin
ba6c5b4db7 feat(instructeur/procedure#index): enhance filter to support processed_at and state [plus en_instruction_at/since]
feat(filter): enable filter on dossiers.state, dossiers.processed_at(since), dossiers.en_instruction_at(since)
2022-09-27 17:19:54 +02:00
Colin Darie
fe2b3ec936 feat(instructeurs/dossier): explicit error about impossible transition due to incomplete etablissement 2022-09-21 16:00:59 +02:00
simon lehericey
9d2d19800d feat(champ siret): save etablissement in degraded mode if api down and allow submission 2022-09-19 12:12:05 +02:00
Colin Darie
95a4e8a907
feat(api_entreprise): create etablissement with fallback when API is down
On créé l'établissement uniquement avec le SIRET, sans que ce soit bloquant
pour compléter le dossier. On demande à l'utilisateur de vérifier
lui-même la concordance du SIRET avec son entreprise.

Cf #7766
2022-09-16 10:43:59 +02:00
Colin Darie
c4f6305b3a fix(dossiers/api_down): specific error when API Entreprise is globally down. 2022-09-15 18:53:41 +02:00
sebastiencarceles
90d795d1e0 fix: remove instructeur when admin is removed 2022-09-13 09:44:49 +02:00
sebastiencarceles
9aaef79a3d review: use salt to generate key 2022-09-13 07:47:30 +02:00
sebastiencarceles
f154bb56e6 confirm adding a new admin to a procedure
For clarity and a better understanding, use a dedicated controller
to allow the current admin to confirm adding an administrateur
to a procedure.
2022-09-13 07:45:07 +02:00
sebastiencarceles
4123709e72 build and render secured URL to invite admin
For clarity and a better understanding, use a dedicated controller to
build and render the confirmation URL to share in order to add a new
administrateur.
2022-09-13 07:45:07 +02:00
mfo
44f366d7f4
Merge branch 'main' into helpscout/1987597382 2022-09-08 12:03:01 +02:00
Paul Chavard
d6f5be622c feat(dossier): autosave en construction 2022-09-08 11:26:29 +02:00
Martin
cbe77dd2f6 bug(instructeurs/dossiers#telecharger_pjs): zipline does not play well with not available active storage attachments 2022-09-08 11:05:24 +02:00
Colin Darie
64ce2719ed feat(services): accept an optional SIRET
Closes #7359
2022-09-06 09:23:52 +02:00
simon lehericey
d612c39438 fix(admin procedure preview): redirect is procedure invalid 2022-09-05 10:18:33 +02:00
Kara Diaby
98f4250214 controller 2022-09-02 16:23:27 +02:00
Martin
51680b11c2 feat(Adminstrateur::Procedures#clone): redirect to home of procedure with special info regarding procedure presentation & service 2022-08-31 14:56:00 +02:00
Martin
1a1f44c5e6 fix(rubocop): filter does not exists on strong parameter... 2022-08-24 15:03:36 +02:00
Martin
2f5528398f feat(manager#outdated_procedure): allow super admin to enable procedure_expires_when_termine_enabled for old procedure
revew(typo): various typo, tx christophe :-)

fix(spec): due to typo fixes
2022-08-24 13:10:48 +02:00
Martin
748b8c9d64 fix(instructeurs/archives#create): missing renaming during refacto 2022-08-23 15:31:17 +02:00
Christophe Robillard
efbec80af8 update saml controller and views
because of using another gem (saml_idp)
2022-08-23 15:05:20 +02:00
mfo
5fb2c45540 review(i18n): fix typo and enhance wording. 2022-08-23 13:28:10 +02:00
Martin
d30492a222 tech(clean): better naming 2022-08-23 13:28:10 +02:00
Martin
711b2ee2e4 feat(ExportComponent): only render it when connected instructeur/administrateur is not from manager 2022-08-23 13:28:10 +02:00
Martin
25c0e91d87 feat(Administrateurs::GroupeInstructeur): ensure admin from super admin can not add an instructeur 2022-08-23 13:28:10 +02:00
Martin
d1544bc4ae feat(Administrateurs::ProcedureAdministrateurs): ensure admin from super admin can not add administrateur 2022-08-23 13:28:10 +02:00
Martin
d1297bc1f5 tech(rubocopify): ... just clean up ... 2022-08-23 13:28:10 +02:00
Martin
5e8210b8f8 feat(Administrateur::ExportsController#*): prevent SuperAdmin to ask/download export 2022-08-23 13:28:10 +02:00
Martin
bfd0f3379f feat(Instructeur::ArchivesController#*): prevent SuperAdmin to index/download archives 2022-08-23 13:28:10 +02:00
Martin
c2e0994e11 feat(Administrateur::ArchivesController#*): prevent SuperAdmin to index/download archives 2022-08-23 13:28:10 +02:00
Martin
ef67958324 feat(manager): add #add_administrateur_with_confirmation and #confirm_add_administrateur so SuperAdmin requires another SuperAdmin approval to add an administrator to a procedure. Add #add_administrateur_and_instructeur for SuperAdmin willing to be administrateur/instructeur for 24 2022-08-23 13:28:10 +02:00
simon lehericey
adf194cc08 fix(editeur_de_champ): can join an pj template 2022-08-11 15:01:48 +02:00
Kara Diaby
58f2f6bd9d Manager : permet au super admin de se retirer d'une démarche 2022-08-11 10:58:58 +02:00
Christophe Robillard
e087582f57 Can get dossier vide if procedure is closed 2022-08-05 16:00:08 +02:00
Colin Darie
bc7cdb6b8e fix(contact): translate captcha honeypot label 2022-08-03 11:57:26 +02:00
Colin Darie
d53aba4d24 fix(dossier_transfer): require a valid email
Cf #7621
2022-08-03 11:44:54 +02:00
Colin Darie
a5d5f4307f fix(dossier_transfer): avoid all transfers without valid email
Cf #7621
2022-08-03 11:44:54 +02:00
Colin Darie
707ea37b33
chore(sentry): tag dossier & procedure ids on dossier endpoints 2022-08-03 10:34:10 +02:00
Martin
7f1018c5b0 feat(Users::CommencerController#commencer): ensure to redirect to replaced_by_procedure when it exisits 2022-08-02 13:08:36 +02:00
Colin Darie
4284f14ad8 fix(services): can destroy with discarded procedures
Closes #7626
2022-08-02 11:45:16 +02:00
Paul Chavard
782af3322a fix(patron): when rendering “patron” champs should have dossier 2022-07-28 12:10:32 +02:00
Paul Chavard
b616a4c1e9 fix(stats): remove Helpscout from stats page 2022-07-27 18:26:25 +02:00
Christophe Robillard
c8abe092c1 display alert message when no email is given for an invite
no exception is raised anymore in this case
2022-07-27 15:05:00 +02:00
simon lehericey
369141c7f7 Fix(procedure library): replace infinite list by a basic search 2022-07-26 12:38:05 +02:00
Colin Darie
cdbee11c2e chore(patron): drop down list with other input 2022-07-25 13:45:37 +02:00
Martin
3e56fdd1d7 fix(export): when it takes more than 3 hours, exports are purge before being generated. make it possible to have an export that takes more than 3 hours and share this behaviour with kind of same class archive 2022-07-25 10:48:54 +02:00
Martin
87af7f3261 feat(exports): implement admin export 2022-07-20 14:08:33 +02:00
simon lehericey
c0e8a07868 perf: 500 queries -> 250 procedure show (id: 34908) 2022-07-18 14:28:35 +02:00
simon lehericey
9cfa6205b5 perf: editor public 250 queries -> 15 queries 2022-07-18 14:28:35 +02:00
Colin Darie
d3232a28cd chore(api_entreprise): intercept token expiration for a more contextual frontend message
Auparavant le service échouait silencieusement et ne retournait rien,
ce qui dans les implémentations du front aboutissait au message que
l'établissement/l'entreprise n'a pas été trouvé.

Un type d'erreur spécifique sur l'expiration du token permet d'afficher
le message lié à un problème temporaire de récupération d'infos.
2022-07-18 09:57:19 +02:00
Paul Chavard
d00a91aea5 feat(dossier): check conditions on en construction dossier 2022-07-13 10:49:17 +02:00
Paul Chavard
120b593015 feat(dossier): toggle conditional champs visibility 2022-07-12 17:33:42 +02:00
simon lehericey
6f7fb9841c fix: make edition annotation work again 2022-07-12 14:17:05 +02:00
Colin Darie
8c08d0295b Revert "feat(champ): customizable placeholders for text & textarea champs"
This reverts commit 9e26ee932e.

Finalement les champs génériques ne doivent pas avoir de placeholder
personnalisable, ce sera uniquement via la description.
2022-07-12 11:37:58 +02:00
Paul Chavard
1c8efea465 fix(preview): gon should not crash on preview pages 2022-07-12 11:16:41 +02:00
simon lehericey
0179a0a826 update conditions_controller 2022-07-12 10:44:40 +02:00
simon lehericey
2fee0ddfd4 feature: type_de_champ_controller 2022-07-12 10:44:40 +02:00
simon lehericey
2da0aa6525 refactor: add draft helper 2022-07-12 10:44:40 +02:00
simon lehericey
5bee34cc34 refactor: before_action 2022-07-12 10:44:40 +02:00
Colin Darie
9e26ee932e
feat(champ): customizable placeholders for text & textarea champs
Closes #7429
2022-07-11 17:16:20 +02:00
simon lehericey
1751ddf713 add condition controller 2022-07-06 16:35:23 +02:00
Paul Chavard
9b45dcea3f feat(demarche): add possibility to reset draft revision 2022-07-06 14:18:01 +02:00
simon lehericey
a475515f3e use params[:stable_id] 2022-07-05 11:53:18 +02:00
simon lehericey
5ebaf59fdb parent_id -> parent_stable_id 2022-07-05 11:53:18 +02:00
simon lehericey
1342356651 after_id -> after_stable_id 2022-07-05 11:53:18 +02:00
Martin
7fb85c97cb feat(Administrateur::ArchivesControllers): add archives #index and #create for admin 2022-07-04 14:18:46 +02:00
Christophe Robillard
45d48bd269 administrators can specifiy if demarche's descriptive is opendata 2022-06-23 14:11:09 +02:00
Martin
ab4d4c83a8 feat(GroupeInstructeurs.closed): add closed option to GroupeInstructeur in order to prevent usagers to submit dossier 2022-06-20 16:32:06 +02:00
Martin
274b5eab2e feat(invite): wrap invitation with targeted_user_links 2022-06-17 16:44:37 +02:00
Paul Chavard
1573d20ee9 types_de_champ controller to use turbo 2022-06-17 11:04:09 +02:00
Martin
56f7133799 fix(procedure_presentation): can not present a 'virtual field' like depose_since
fix(data): add migration to remove fields depose_since from existing procedure presentation
2022-06-14 09:02:37 +02:00
Martin
8b487c847b fix(instructeurs/avis#revive): ArgumentError on AvisMailer.avis_invitation 2022-06-14 08:41:09 +02:00
Kara Diaby
d58ecb3fcc Lors de la restauration d'une démarche supprimée, met sur les dossiers liés hidden_by_administration_at à nil 2022-06-10 12:33:47 +02:00
Kara Diaby
d2bd2ffcbe controller 2022-06-08 14:38:17 +02:00
Kara Diaby
df2b4408c2 procedure.service.nom instead of organisation if service exists 2022-06-01 15:11:26 +02:00
Pierre de La Morinerie
c1616adf8c app: remove procedure-estimated-fill-time feature-flag
The feature is now enabled for every procedure.

Ref #7338
2022-06-01 11:11:55 +02:00
Martin
cb890343ff feat(targeted_user_link): add targeted user link to wrap expert invitation in order to avoid access issue when the expert is connected with another account
feat(user.merge): ensure to merge user.targeted_user_link

Update app/models/targeted_user_link.rb

Co-authored-by: LeSim <mail@simon.lehericey.net>

Update app/models/targeted_user_link.rb

Co-authored-by: LeSim <mail@simon.lehericey.net>

Update app/models/targeted_user_link.rb

Co-authored-by: LeSim <mail@simon.lehericey.net>

feat(db/create_targeted_user_links): ensure not null with fk
2022-05-31 14:50:31 +02:00
Paul Chavard
a36672239d refactor(revision): rename find_or_clone_type_de_champ 2022-05-31 08:58:53 +02:00
Paul Chavard
6f98def288 refactor(revision): remove old code 2022-05-31 08:58:53 +02:00
Kara Diaby
37272f90a0 controller 2022-05-30 14:40:49 +02:00
Kara Diaby
3c5808fe03 controller 2022-05-26 12:45:05 +02:00
Pierre de La Morinerie
ac6ae94c93 controllers: add a TypesDeChamp#estimate_fill_duration action 2022-05-25 21:50:49 +02:00
Christophe Robillard
fd98247b48 [manager] add list of dubious procedures 2022-05-25 14:44:53 +02:00
Paul Chavard
5ddda15961 refactor(invites): use turbo 2022-05-24 18:44:51 +02:00
Paul Chavard
e257a05150 feat(dossier): preview should save dossier 2022-05-24 17:02:05 +02:00
Paul Chavard
50aa50b047 refactor(type_de_champ): use children_of when serializing type_de_champ 2022-05-23 18:22:42 +02:00
Paul Chavard
99a8786dd5 fix(expert): expert should be allowed to delete messages 2022-05-20 15:47:48 +02:00
simon lehericey
8bd3de2050 remove use of repetition.types_de_champ (except rebase) 2022-05-18 15:18:17 +02:00
Paul Chavard
e33022ffc7 refactor(dossier): export to use turbo-poll 2022-05-17 16:08:47 +02:00
Paul Chavard
e9b02642c5 refactor(attachment): attachments controller to use turbo 2022-05-17 16:08:47 +02:00
Paul Chavard
2eb7da5227 fix(dossier): redirect on not found dossiers 2022-05-17 11:42:10 +02:00
Paul Chavard
95bd13872b refactor(dossier): change state with turbo 2022-05-13 17:38:09 +02:00
Martin
da57a1dc9e fix(commencer#commencer): broken due to missing interpolated variable in i18n 2022-05-13 13:15:31 +02:00
Martin
0826baeba3 bug(commencer#commencer): raise when procedure does not have a service
fix(commencer#commencer): use alternate message when procedure does not have a service
2022-05-12 16:41:11 +02:00
Paul Chavard
c9b8d43acd feat(autosave): use new autosave controller 2022-05-10 18:10:20 +02:00
Kara Diaby
990fc04b03 controller 2022-05-10 16:16:16 +02:00
Paul Chavard
9e0b3b642f cleanup(sendinblue): remove sendinblue tracking 2022-05-06 11:14:44 +02:00
Kara Diaby
5f6f19871f tests 2022-05-06 09:04:15 +02:00
Paul Chavard
dcd9e44ce7 fix(dossier): on dossier update render empty js response 2022-05-05 13:39:24 +02:00
Martin
3737311390 feat(procedure.procedure_expires_when_termine_enabled): enable by default, allow contributor to choose the default settings of this flag using an env var during migration. ie: DEFAULT_PROCEDURE_EXPIRES_WHEN_TERMINE_ENABLED=true|false
feat(administrateurs/procedures#show): warning/alert when procedure_expires_when_termine_enabled is not true on current procedure

feat(administrateur/procedure#update): after an update redirect to procedure show: suggested by: https://ux.stackexchange.com/questions/55291/after-updating-form-should-redirect-back-to-form-itself-or-to-the-show-page-or-b and confirmed by Olivier

clean(Flipper.archive_zip_globale): no more in use, so remove all occurences

Update app/views/administrateurs/procedures/_suggest_expires_when_termine.html.haml

Co-authored-by: Pierre de La Morinerie <kemenaran@gmail.com>

Update app/views/administrateurs/procedures/_suggest_expires_when_termine.html.haml

Co-authored-by: Pierre de La Morinerie <kemenaran@gmail.com>

Update app/views/administrateurs/procedures/_suggest_expires_when_termine.html.haml

Co-authored-by: Pierre de La Morinerie <kemenaran@gmail.com>

Update spec/views/administrateurs/procedures/show.html.haml_spec.rb

Co-authored-by: Pierre de La Morinerie <kemenaran@gmail.com>

fix(review): typo, why ena?, who knows

fix(env.example.optional): add missing DEFAULT_PROCEDURE_EXPIRES_WHEN_TERMINE_ENABLED
2022-05-05 13:07:11 +02:00
Paul Chavard
1a9f2f0eef refactor(champ): improuve repetition champ 2022-05-04 17:18:52 +02:00
Pierre de La Morinerie
9bc5364ca2 app: add controller and view to generate a deposit receipt 2022-05-04 16:09:52 +02:00
Paul Chavard
2d1370d123 refactor(champ): simplify repetition champ 2022-05-03 16:14:54 +02:00
Paul Chavard
39ecc669b1 refactor(champ): simplify dossier link champ 2022-05-03 16:14:54 +02:00
Paul Chavard
4604be0796 refactor(champ): simplify carte champ 2022-05-03 16:14:54 +02:00