Commit graph

344 commits

Author SHA1 Message Date
Damien Le Thiec
dbb92e7fd3 Merge branch 'main' into feature/prefill_repetible 2023-02-11 22:40:56 +01:00
simon lehericey
a1487e9923 fix: allow a tag in various admin text 2023-02-06 11:01:28 +01:00
Damien Le Thiec
e1748a2666 Fix "see more" link for prefillable fields 2023-01-31 16:48:38 +01:00
Paul Chavard
5b9e534b3f chore(turbo): morph all the things 2023-01-25 13:45:26 +01:00
Paul Chavard
7f9414012e refactor(turbo): use @coldwired/actions 2023-01-16 21:40:10 +01:00
Sébastien Carceles
20136b7ac8
feat(demarche): create and prefill a dossier with POST request (#8233)
* add base controller for public api

* add dossiers controller with basic checks

* create the dossier

* ensure content-type is json

* prefill dossier with given values

* mark a dossier as prefilled

When a dossier is prefilled, it's allowed not to have a user.

Plus, we add a secure token to the dossier, which we will need later to set a
user after sign in / sign up.

* set user as owner of an orphan prefilled dossier

When a visitor comes from the dossier_url answered by the public api,
the dossier is orphan:
- when the user is already authenticated: they become the owner
- when the user is not authenticated: they can sign in / sign up / france_connect
and then they become the owner

So here is the procedure:
- allow to sign in / sign up / france connect when user is unauthenticated
- set dossier ownership when the dossier is orphan
- check dossier ownership when the dossier is not
- redirect to brouillon path when user is signed in and owner

* mark the dossier as prefilled when it's prefilled
(even with a GET request, because it will be useful later on, for
exmample in order to cleanup the unused prefilled dossiers)

* system spec: prefilling dossier with post request
2023-01-03 14:46:10 +01:00
Martin
da8e876dd3 a11y(dossier.status): ajout de l'attribut role=alert aux status du dossier
fix(a11y): role status et non alert
2022-12-26 17:45:43 +01:00
Colin Darie
3a9a71079a
Merge branch 'main' into pj-en-construction-replace 2022-12-14 16:59:48 +01:00
Colin Darie
4049240c2c
feat(piece_justificative): allow user to replace a PJ for dossier en_construction 2022-12-14 09:58:15 +01:00
Paul Chavard
8c173e45bf fix(admin): go to the right tab when click on breadcrumb link 2022-12-13 15:55:10 +01:00
Colin Darie
0a114270af refactor(attachment): update Attachment::EditComponent everywhere 2022-12-05 10:47:10 +01:00
Colin Darie
b13c5e56f6 refactor(piece_justificative): UX follows mockups 2022-12-05 10:47:10 +01:00
Colin Darie
7ae6efe776 refactor(attachment): remove replace feature 2022-12-05 10:47:10 +01:00
Colin Darie
b8296c6d4d feat(piece_justificative): supports multiple files
Closes #7924
2022-12-05 10:47:10 +01:00
Paul Chavard
886a409abf fix(dossier): fix links to empty pdf templates 2022-12-01 17:35:01 +01:00
Colin Darie
436c1951cc fix(locale-switcher): attributes & wording issues
Cf #8059
2022-11-30 12:08:59 +01:00
Colin Darie
720995f48f fix(a11y/footer): add "new tab" suffix on title links
Cf #8050
2022-11-30 09:27:46 +01:00
Colin Darie
c55148f694 fix(a11y): root title link more explicit + i18n
Closes #8050
2022-11-30 09:27:46 +01:00
Paul Chavard
0c0618aa79 feat(export): add GeoJSON export 2022-11-18 10:04:35 +01:00
Paul Chavard
b020cb31b6 fix(publication): improuve publication warnings 2022-11-08 10:20:35 +00:00
Eric Leroy-Terquem
aca2775874 remove routee? method 2022-11-04 12:03:44 +01:00
Paul Chavard
85581e72e9 refactor(turbo): simplify custom actions implementation now that turbo has support for it 2022-10-21 10:24:00 +02:00
Colin Darie
df1d7ae2bd style(procedures): dsfr compat instructeurs/expert procedures list 2022-10-11 09:50:21 +02:00
Colin Darie
5a50383a27 style: download links (notice & template) with expected DSFR design & details
Closes #7829
2022-10-11 09:50:21 +02:00
Christophe Robillard
94ca93e130 can choose multiple zones 2022-10-07 10:48:35 +02:00
krichtof
92807edd03 fix zone labels when building a new procedure 2022-10-05 12:37:08 +02:00
Paul Chavard
a5d78fea1a refactor(ujs): remove old ujs helpers 2022-09-29 16:51:53 +02:00
Christophe Robillard
9a9330159c choose zone options with correct label
label of the zone is the one available when the procedure has been published (or at the creation if the procedure has not been published)
2022-09-26 16:58:53 +02:00
Colin Darie
fcb478eb53 refactor(fc_info): use Dsfr::Notice for france connect informations 2022-09-21 15:47:35 +02:00
Colin Darie
3cd02ceae3
fix(etablissement): improve annuaire_link, with SIRET & as search
Dans certaines circonstances le SIREN pouvait être vide alors qu'on a
toujours le SIRET. Aussi, on se base sur la recherhce qui redirige vers
le bon namespace car il n'y a pas forcément que des entreprises : certaines
sont listées sous "etablissement".
2022-09-16 10:43:59 +02:00
Paul Chavard
d35ceb7214 fix(champs): finish EditableChampComponent refactor 2022-09-08 11:26:29 +02:00
Colin Darie
5f08df7561 refactor(dsfr/button): remove useless & verbose Dsfr::ButtonComponent, in favor of good link_to / f.submit 2022-09-07 17:56:19 +02:00
Colin Darie
64ce2719ed feat(services): accept an optional SIRET
Closes #7359
2022-09-06 09:23:52 +02:00
Colin Darie
4e3b063b87
feat(carte/export): list geo labels 2022-09-05 11:02:51 +02:00
simon lehericey
a3e8c09e71 component all the champ 2022-09-01 09:48:27 +02:00
Colin Darie
f4c76ca677 fix(a11y/flash): add role=alert or status to flash messages 2022-08-31 17:46:04 +02:00
simon lehericey
adf194cc08 fix(editeur_de_champ): can join an pj template 2022-08-11 15:01:48 +02:00
Paul Chavard
782af3322a fix(patron): when rendering “patron” champs should have dossier 2022-07-28 12:10:32 +02:00
Colin Darie
4699d15853 fix(archives): don't fail when there are no weight estimation
A priori ça peut arriver lorsqu'il n'y a pas de dossier terminé sur une procédure

Closes #7615
2022-07-27 15:12:18 +02:00
Colin Darie
22fed3d9de feat: show entreprise etat "en activité" | "fermé in entreprise summary
Closes #7505
2022-07-25 10:58:02 +02:00
Paul Chavard
d9eea35ae8 fix(dossier): decoralate dropdown behaviour from autosave 2022-07-21 18:40:16 +02:00
Paul Chavard
0578f4f305 fix(champ): use safe_join in champ helpers
fix #7411
2022-07-18 16:29:41 +02:00
Paul Chavard
d00a91aea5 feat(dossier): check conditions on en construction dossier 2022-07-13 10:49:17 +02:00
Paul Chavard
3c46447851 chore(vite): add a coment with link to original legacy plugin code 2022-07-04 19:32:18 +02:00
Paul Chavard
72636f3332 fix(vite): porte vite fallback logic from vite legacy plugin 2022-07-01 10:25:24 +02:00
Paul Chavard
0e803b1f81 fix(vite): temporary use legacy build in all browsers 2022-06-30 10:34:06 +02:00
Paul Chavard
2979d6ac2c chore(vite): do not use legacy build in development 2022-06-23 15:22:55 +02:00
Paul Chavard
1573d20ee9 types_de_champ controller to use turbo 2022-06-17 11:04:09 +02:00
Paul Chavard
cf81e8ecd5 feat(turbo): add turbo:morph helper 2022-06-17 11:04:09 +02:00
Paul Chavard
65bd996f2a refactor(types_de_champ_editor): remove old react editor 2022-06-17 11:04:09 +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
Pierre de La Morinerie
71d33a7004 helpers: fix name of procedure_estimated_fill_duration feature-flag 2022-05-31 15:26:59 +02:00
Pierre de La Morinerie
2b90d7cc01 helpers: allow champ without persisted dossier
This fixes the /patron page. I also added an end-to-end test
to avoid breaking this page in the future.
2022-05-31 15:12:29 +02:00
Martin
25a0daf0a2 fix(avis#instruction): use safer claiment.email with a simple helper 2022-05-30 15:42:36 +02:00
Pierre de La Morinerie
c738d7d07f js: display estimated duration in champ editor 2022-05-25 21:50:49 +02:00
Pierre de La Morinerie
8936461d5b app: cache the duration estimate for published procedures 2022-05-25 10:39:18 +02:00
Pierre de La Morinerie
3e91a16895 app: display estimated fill duration on procedure description 2022-05-25 10:39:15 +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
32bd1b6d9f refactor(attachment): remove unused helpers 2022-05-17 16:08:47 +02:00
Paul Chavard
c9b8d43acd feat(autosave): use new autosave controller 2022-05-10 18:10:20 +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
1500a1cf28 feat(turbo): add enable and disable mutations 2022-05-04 14:11:43 +02:00
Paul Chavard
9b12178bbd refactor(champ): simplify piece justificative champ 2022-05-03 16:14:54 +02:00
simon lehericey
ea361643be types_de_champ -> types_de_champs_public 2022-05-03 11:05:24 +02:00
Paul Chavard
26df3aaa58 refactor(dossier): remove preview special case 2022-04-28 12:20:41 +02:00
Martin
be090a1bec feat(administrateur/procedure#create): allow admin to add a lien to the DPO, allow user to consult link to dpo. enhance spec on _procedure_footer.html
Update spec/views/users/_procedure_footer.html.haml_spec.rb

Co-authored-by: Pierre de La Morinerie <kemenaran@gmail.com>
2022-04-27 15:09:02 +02:00
Paul Chavard
d2ab8b5593 feat(message): replace message partial with MessageComponent 2022-04-26 14:54:58 +02:00
Paul Chavard
0bd71ad51a feat(turbo): add turbo event helpers 2022-04-21 19:41:27 +02:00
Paul Chavard
572e1dca8e fix(a11y): html lang should reflect locale
fix #7150
2022-04-21 10:28:23 +02:00
Paul Chavard
64c599e208 refactor(stimulus): initiate react components via stimulus 2022-04-20 14:08:47 +02:00
Paul Chavard
90dd5bc9c5 fix(dossiers): dossier extend_conservation actually works 2022-04-08 13:40:28 +02:00
Paul Chavard
e82dc9c8b5 feat(exports): add ability to create exports with filters 2022-04-06 17:08:38 +02:00
Christophe Robillard
447612abdf fix a11y-8.9.1
no p tag when Champ text with no value
2022-02-02 19:03:40 +01:00
Pierre de La Morinerie
2e1a3c32cb helpers: handle flash[:error]
Errors generated by the `invisible-catcha` gem are reported as
`flash[:error]` (which differs from Rail's usual `flash[:alert]`).

We probably shouldn't use flash[:error] in our own codebase; but we can
handle its use in third-party libraries.
2022-01-06 14:09:31 +01:00
Pierre de La Morinerie
68b112e00a helpers: don't crash on unknown flash level
Errors generated by the `invisible-catcha` gem are reported as
`flash[:error]` (which differs from Rail's usual `flash[:alert]`).

Avoid crashing when the flash level passed to this helper is not known.
2022-01-06 14:09:26 +01:00
Paul Chavard
fc058f721d a11y(champs): expose ids for UI on champ 2022-01-05 12:33:40 +01:00
Christophe Robillard
829d644c10 group related options in zone select box 2021-12-15 19:37:32 +01:00
Pierre de La Morinerie
b86dec8251 views: prevent procedure publication on validation error 2021-11-30 13:34:41 +01:00
Martin
b6adf5fc72 feat(dossiers/show): enhance header with expirations message/banner. also ensure consistent design between dossier states
fix(spec): broken due to last refactoring

spec(dossier.extend_conservation): add system spec

lint(ruby): still not yet ready for auto lint in IDE...
2021-11-23 05:50:25 +01:00
mfo
82b23b92c0
Merge branch 'main' into 6624/etq-instructeur-je-souhaite-supprimer-des-messages-envoyes-par-erreur 2021-11-17 05:41:56 +01:00
Paul Chavard
e74d599042 feat(procedure): remove duree_conservation_dossiers_hors_ds 2021-11-16 19:55:56 +03:00
Martin
0aecc301c9 refactor(Commentarie.soft_delete): use discard 2021-11-16 14:28:38 +01:00
Pierre de La Morinerie
9be16a1208 views: rename the procedure_publish_label helper
The new text makes more sense.
2021-10-12 16:25:11 +02:00
Paul Chavard
c288739f13 Update app/helpers/procedure_helper.rb
Co-authored-by: LeSim <mail@simon.lehericey.net>
2021-09-27 15:06:17 +02:00
Paul Chavard
7deedf8245 feat(refactor): unify dossiers header 2021-09-27 15:06:17 +02:00
Paul Chavard
357c684688 feat(routage): self managing instructeurs 2021-09-27 15:06:17 +02:00
lydiasan
7de10731a6 i18n: localize dossiers edition 2021-07-20 14:18:20 +02:00
Paul Chavard
280e54b59d Enable test revisions 2021-07-01 15:59:07 +02:00
Paul Chavard
f238710044 Add last_month export 2021-06-23 09:23:10 +02:00
simon lehericey
6be0bbaa9c Change bottom champs editor button from enregistrer to continuer 2021-06-15 09:54:32 +02:00
Christophe Robillard
41569efe9d extract estimate_weight
and rename nb_dossiers by nb_dossiers_termines
2021-06-09 10:52:38 +02:00
Paul Chavard
9b0dae4cc2 Fix apostrophes ‘ -> ’ 2021-05-26 18:05:14 +02:00
Paul Chavard
3b85ade440 Add compatibility cadsatre layer with old API GEO 2021-05-24 11:57:00 +02:00
Pierre de La Morinerie
b8f71bd52c i18n: fix enum values for Dossier.state
According to Rails i18n guide, enum values should be localized
as `<model>/<enum>`, not as sub-values to the attribute.

This fixes an exception in administrate when displaying a Dossier
in the Manager.

Note: we need to change the way GraphQL attributes are generated, because
`AASM::Core::State#display_name` doesn’t honor the `model/attribute.value`
convention (and instead tries to localize as `model.attribute/value`).
So instead we lookup the localized name using ActiveRecord.
2021-05-06 14:38:25 +02:00
Christophe Robillard
6086f05524 corrige le lien annuaire lorsque le siren n'est pas connu 2021-05-06 09:59:27 +02:00
Christophe Robillard
f40d96fbd2 Revert "Revert "Export de tous les dossier d'une démarche""
This reverts commit d9a588b52e.
2021-04-29 17:29:47 +02:00
krichtof
d9a588b52e
Revert "Export de tous les dossier d'une démarche" 2021-04-29 16:07:18 +02:00
Christophe Robillard
8b2849408c instructeurs can create and download archives 2021-04-28 11:40:58 +02:00
Pierre de La Morinerie
76e74003ad manager: fix SendInBlue emails 2021-04-13 10:57:26 +02:00