Commit graph

8840 commits

Author SHA1 Message Date
Colin Darie
d911bc02c0 refactor(mailer): set dolist header in DeviseUserMailer 2023-01-10 16:07:35 +01:00
Colin Darie
5ae5de0d9c refactor(email): log event when error occurs before recipients was set 2023-01-10 16:07:35 +01:00
Colin Darie
1f51267b25 chore(manager): link email users to events 2023-01-10 16:07:35 +01:00
Colin Darie
b9c1799e60 refactor(mailer): shared error concern 2023-01-10 16:07:35 +01:00
Colin Darie
812376cfb2 fix(manager): default resource order 2023-01-10 16:07:35 +01:00
Colin Darie
22e2749357 chore(manager): basic dashboard for EmailEvents 2023-01-10 16:07:35 +01:00
Colin Darie
0a22c1d2f0 chore(email): log smtp errors 2023-01-10 16:07:35 +01:00
Colin Darie
6cb2389eef chore(email): add an observer which log the emails dispatched 2023-01-10 16:07:35 +01:00
Colin Darie
07167cead9 chore(schema): create email_events 2023-01-10 16:07:35 +01:00
Colin Darie
0a890acc33 fix(conditional): huge perf improvement by caching champ visibility
Hyper nécessaire lorsqu'il y a des champs qui dépendent d'autres champs
en cascade.

Co-authored-by: simon lehericey <mail@simon.lehericey.net>
Co-authored-by: mfo <martin@sharypic.com>
2023-01-10 11:41:08 +01:00
Paul Chavard
5128b9a086 refactor(demarches): use turbo_stream template 2023-01-10 09:48:32 +01:00
Martin
0ce293d2e0 fix(instructeurs/dossier#show): missing preload on dossier 2023-01-09 14:29:47 +01:00
Lisa Durand
67c104c8eb affiner le scope 2023-01-09 11:58:51 +01:00
Lisa Durand
25a7fa5a34 add bulk action 'follow' 2023-01-09 11:58:51 +01:00
Sébastien Carceles
177dec2bdb
feat(dossier): add dossier id to prefill response (#8382) 2023-01-06 13:46:27 +00:00
Paul Chavard
416550c6ea refactor(batch): simplify stimulus controller 2023-01-06 14:25:46 +01:00
Paul Chavard
5a4cefc5c5 fix(dossier): fix rebase with drop down options 2023-01-06 14:15:46 +01:00
Sébastien Carceles
06b8a0f734
feat(dossier): prefill boolean champs (#8381) 2023-01-06 14:01:59 +01:00
Martin
1944624082 fix(PiecesJustificativesService.safe_attachment): utilise la nouvelle API pour comparer le resultat du scan antivirus 2023-01-06 10:54:27 +01:00
Paul Chavard
dfe65136be refactor(repetition): add row_id to champs 2023-01-05 18:04:54 +01:00
Paul Chavard
940f8c0474 fix(graphql): fix departements with alphanumeric codes 2023-01-05 17:33:03 +01:00
Lisa Durand
5a4a5d89fd remove highlight paragraph from the fluid container 2023-01-05 17:22:53 +01:00
Lisa Durand
b65a3d4baf puts filters in span to display correctly multiples filters 2023-01-05 17:22:53 +01:00
Lisa Durand
080747f60b reorganise multiple buttons on top of table from instructeur procedure view 2023-01-05 17:22:53 +01:00
Lisa Durand
4afb873afc feedbacks from Martin 2023-01-05 16:20:18 +01:00
Martin
3918757dc9 correctif(test): desormais l'association batch_operations.groupe_instructeurs passe par le dossier. Mise a jour des tests 2023-01-05 16:20:18 +01:00
Martin
018a94f43b correctif(batch_operation): empeche de changer l'etat d'un dossier en cas d'erreur. et s'assure de delinker le dossier en cas de dossier invalid 2023-01-05 16:20:18 +01:00
Lisa Durand
8df0147fd1 fix linter 2023-01-05 16:20:18 +01:00
Lisa Durand
7fcc892398 imrpove dropdown bulk action style 2023-01-05 16:20:18 +01:00
Lisa Durand
1ecdf5f544 remove manipulating checkbox with JS and set just one form instead of 2 2023-01-05 16:20:18 +01:00
Lisa Durand
59468fe351 add justificatif_motivation field to batch operation accepter 2023-01-05 16:20:18 +01:00
Lisa Durand
1bc0609543 add motivation field to batch operation accepter 2023-01-05 16:20:18 +01:00
Lisa Durand
d7ebb67889 implement first step - accepte without motivation and PJ 2023-01-05 16:20:18 +01:00
Paul Chavard
378f3c5fb0 use join table instead of arrays 2023-01-05 16:20:18 +01:00
Paul Chavard
26e02c7173 fix(template): trix will transform double spaces in &nbsp; 2023-01-05 13:23:24 +01:00
Sébastien Carceles
fa6fc077b4
normalize boolean values (#8320)
* extract parent for yes no and checkbox champs

* checkbox stores true / false instead of on / off

* normalize blank value to nil

* normalize invalid value to false

* after party task: normalize checkbox values

* after party task: normalize yes_no values
2023-01-05 11:18:27 +00:00
Sébastien Carceles
22ecbc2ffb
remove preremplir admin button (#8366) 2023-01-05 10:31:48 +01:00
Colin Darie
b89fc16999 style(instructeurs/expiration): convert banner to DSFR 2023-01-04 13:15:10 +01:00
Colin Darie
c05c765ba7 style(user/expiration): convert banner to DSFR 2023-01-04 13:15:10 +01:00
Colin Darie
6a9afdc2fc fix(dossier/i18n): correct pluralization of delay expiration button 2023-01-04 13:15:10 +01:00
Colin Darie
0b033a7025 refactor(email): improve wording of automatic deletion to user
Closes #7688
2023-01-04 13:15:10 +01:00
Colin Darie
7d16ae83e8 refactor(email): improve wording of near deletion to user
Closes #7688
2023-01-04 13:15:10 +01:00
Paul Chavard
c4a30084fe refactor(virus_scan): remove lock 2023-01-04 12:12:11 +01:00
Paul Chavard
6e18090fb3 refactor(virus_scan_result): use column instead of metadata on blob 2023-01-04 12:12:11 +01:00
Paul Chavard
d469bca0ae refactor(watermark): use column instead of metadata on blob 2023-01-04 12:07:08 +01:00
Sébastien Carceles
456be420fa
feat(demarche): describe dossier prefilling with POST (#8298)
* feat(demarche): describe dossier prefilling with POST

* show response example
2023-01-04 07:31:31 +00:00
Martin
c35d33a5a8 amelioration(role): utilise le role de status plutot que celui de alert afin d'eviter les confusion sur les role aria 2023-01-03 16:52:30 +01:00
Martin
a4d6692bc6 accessibilite(pages-authentification): evolutions des pages de connexion/creation de compte pour respecter le DSFR et supporter une meilleure accessibilite
Update app/components/dsfr/input_component/input_component.html.haml

Co-authored-by: Colin Darie <colin@darie.eu>
2023-01-03 16:26:05 +01:00
Colin Darie
008e04e356 fix(home/i18n): cache key in views must depend of locale 2023-01-03 15:43:42 +01:00
mfo
5a0e1db0a4
Merge pull request #8350 from colinux/a11y-demande-dossier
fix(a11y): html structure in dossier summary
2023-01-03 15:40:24 +01:00
Martin
76301d4c32 correctif(api_entreprise_token): les nouveaux tokens stockent les roles dans sous la clé scopes et non plus roles 2023-01-03 15:32:50 +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
Colin Darie
9d3b2f6027 fix(a11y): html structure in dossier summary
Closes #8162
2023-01-02 18:06:50 +01:00
Eric Leroy-Terquem
f82fba3e2f add folders number for instructor group 2023-01-02 15:43:13 +01:00
Kara Diaby
f7cb24ce40 Supprime le feature flag pour que tous les administrateurs puissent ajouter des tags sur les démarches 2023-01-02 11:13:31 +01:00
Damien Le Thiec
ffdb6c0104
Merge branch 'main' into improvement/link_to_dossier_description 2023-01-02 10:15:39 +01:00
Damien Le Thiec
775eb16d95 Add link to prefill description from procedure show 2022-12-29 16:11:59 +01:00
Damien Le Thiec
e6d4b3061e Improve text for prefill description page 2022-12-29 10:56:42 +01:00
mfo
acd461c110
Merge pull request #8342 from mfo/US/naf-can-be-nil
correctif(PersonneMoraleType): il arrive que le code naf d'une entreprise puisse ne pas exister [trop vieux pour etre mappable]
2022-12-28 16:02:42 +01:00
Martin
aeca2b28e4 correctif(PersonneMoraleType): il arrive que le code naf d'une entreprise puisse ne pas exister [trop vieux pour etre mappable] 2022-12-28 15:38:22 +01:00
mfo
1f5db1faf2
Merge pull request #8340 from mfo/US/fix-champs-pays
sentry(3830513995): champs pays peut avoir un external_id a '', test la presence d'external_id sinon on peut renvoyer du nil via Champs::PaysChamp.name
2022-12-28 09:51:18 +01:00
Martin
a2d3ec7a21 sentry(3830513995): champs pays peut avoir un external_id a '', test la presence d'external_id sinon on peut renvoyer du nil via Champs::PaysChamp.name 2022-12-27 16:28:34 +01:00
mfo
31735e16d8
Merge pull request #8339 from mfo/US/fix-departement-champs
Us/fix departement champs
2022-12-27 16:01:35 +01:00
Martin
186d4e6539 correctif(ChampDepartement): gere les departement a 3 codes 2022-12-27 14:55:57 +01:00
Paul Chavard
0e73415904 feat(revision): improuve changes dashboard 2022-12-27 11:06:51 +00:00
Paul Chavard
9b3fa4dd3c refactor(revision): changes should be domain objects 2022-12-27 10:58:53 +00:00
Paul Chavard
7aa6f172dc feat(revision): show number of pending dossiers for each revision 2022-12-27 10:58:53 +00:00
Martin
48c80e9387 correctif(api/v1): ajoute la methode manquante for_api sur le type de champs departement 2022-12-27 11:45:43 +01:00
Martin
3732c079a7 correctif(champ.normalize): enleve les null chars uniquement si il y en a. sinon on rappel value=() avec nos champs surchargeant ce setter 2022-12-27 11:43:34 +01:00
mfo
72791bd5b6
Merge pull request #8337 from mfo/US/instructeur#telecharger_pjs
correctif(instructeurs/dossier#telecharger_pjs): ne pas inclure les bills et horodatage quand on telecharge un dossier unitairement
2022-12-27 09:07:48 +01:00
Paul Chavard
0b10c73bcf feat(prefill): allow to prefill private annotations 2022-12-26 22:14:17 +00:00
Paul Chavard
4a4ce67ef6 fix(dossier): explicitly send draft notification email 2022-12-26 22:02:33 +00:00
Paul Chavard
fc4afb9793 fix(pays): some Île are written with î for some reason… 2022-12-26 21:54:45 +00: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
mfo
99a652c297
Merge pull request #8267 from mfo/a11y/use-alert-for-dossier-state
accessibilite(page#dossiers): utiliser les role=alert sur le status des dossiers
2022-12-26 17:44:59 +01:00
Martin
69aed18b46 correctif(instructeurs/dossier#telecharger_pjs): ne pas inclure les bills et horodatage quand on telecharge un dossier unitairement 2022-12-26 17:11:10 +01:00
Damien Le Thiec
9e083ea3f7
Merge branch 'main' into feature/prefill_civility 2022-12-26 11:31:52 +01:00
mfo
62813f3d74
Merge pull request #8323 from tchak/fix-graphql-champs
feat(graphql): add pays champ to API
2022-12-22 13:51:02 +01:00
mfo
e3bf0d8fec
Merge pull request #8327 from tchak/feat-rebase-after-repasser-en-instruction
feat(dossier): rebase after repasser en instruction
2022-12-22 13:50:43 +01:00
mfo
f7cdbe56ab
Merge pull request #8326 from tchak/feat-allow-rebase-champs-with-value-made-mandatory
feat(dossier): allow to rebase champs with value made mandatory
2022-12-22 13:49:09 +01:00
Paul Chavard
f4f38982b4 feat(dossier): rebase after repasser en instruction 2022-12-22 13:44:03 +01:00
Paul Chavard
6363206c44 fix(dossier): when rebase creates a champ always push in to champs 2022-12-22 13:44:03 +01:00
Paul Chavard
4c516a6991 feat(dossier): allow to rebase champs with value made mandatory 2022-12-22 13:08:04 +01:00
Martin
087ad18936 correctif(visuel): les trix-editor avec un contenu long ont un max-height 2022-12-22 12:47:17 +01:00
Paul Chavard
072156d38e feat(graphql): add pays champ to API 2022-12-22 11:56:45 +01:00
Paul Chavard
f17690b1d3 feat(graphql): expose departement and region 2022-12-21 14:03:02 +01:00
Paul Chavard
bd9fe7eb7c feat(export): add pays, region and departement codes 2022-12-21 14:03:02 +01:00
Paul Chavard
3f0f5e381f refactor(regions): champ regions to use simple select 2022-12-21 14:03:02 +01:00
Paul Chavard
e0b0a42bc3 refactor(departements): champ departements to use simple select 2022-12-21 14:03:02 +01:00
Paul Chavard
f7c1dff22a refactor(pays): champ pays to use simple select 2022-12-21 14:03:02 +01:00
Paul Chavard
4d4c378724 feat(api_geo): add api_geo service 2022-12-21 14:03:02 +01:00
François Vantomme
993c1b8676 fix(batch operation): ensure to append bigint to SQL array 2022-12-21 11:59:55 +01:00
Colin Darie
66e2db909c style(alert): no double link underline, there is already DSFR 2022-12-21 10:48:31 +01:00
Martin
9dbe4845b3 correctif(a11y.contact-page): #8058 (utiliser le type email sur l'input prenant l'email de l'usager), #8056 (ajuster les erreurs de contraste par l'usage des composants du DSFR) 2022-12-21 10:48:31 +01:00
Christophe Robillard
cfc2aec334 display all demarches only if zonage enabled 2022-12-21 09:02:16 +01:00
Christophe Robillard
11a18516b2 remove feature flag zonage 2022-12-21 09:02:16 +01:00
Paul Chavard
227296682b fix(dossier): clone should include more attachments 2022-12-20 21:30:32 +01:00
Colin Darie
7cc7c414ad style(instructeurs): improve dossier header layout
Closes #8292
2022-12-20 19:07:00 +01:00
Colin Darie
c673950e56 fix(instructeurs): behavior of sort by notifications checkbox (updated_at desc) 2022-12-20 15:51:47 +01:00
Damien Le Thiec
c4e427642f Allow prefill civility 2022-12-20 14:38:05 +01:00
Sébastien Carceles
e4a7a4c391
hide values and examples for unprefillable champs (#8309)
* hide values and examples for unprefillable champs

*  put prefillable champs first
2022-12-20 13:37:25 +00:00
Christophe Robillard
a0da04e83c use config.ds_opendata_enabled
don't use anymore opendata feature flag
2022-12-20 12:52:56 +01:00
Christophe Robillard
edffd0a7a8 extract ds_opendata_enabled 2022-12-20 12:52:56 +01:00
Christophe Robillard
daa4411abe Revert "unschedule export demarches opendata"
This reverts commit da0738c661.
`ExportAndPublishDemarchesPubliqjesJob` is now schedulable
2022-12-20 12:52:56 +01:00
Sébastien Carceles
dd0a05c1d8
feat(prefill): add possible values (#8299)
* update layout in order to show possible values

* filter out non fillable types de champ
2022-12-20 11:04:42 +01:00
Damien Le Thiec
d9bc44ac8b
Fix css bug code_blocks (#8301) 2022-12-20 09:45:13 +01:00
Kara Diaby
7bdc7c2cad manager procedure controller 2022-12-19 15:28:09 +01:00
Kara Diaby
86e1d1dd97 layout 2022-12-19 15:28:09 +01:00
Martin
4e201a245b accessibilite(page#dossiers): utiliser les role=alert sur le status des dossiers 2022-12-19 15:16:57 +01:00
Sébastien Carceles
0a10a08c21
feat(demarche): describe procedure prefilling (#8187)
* feat(demarche): description

Show the description of an opendata procedure (published or draft),
with help about how to prefill a dossier for this procedure.

Co-authored-by: Damien Le Thiec <damien.lethiec@gmail.com>
2022-12-19 11:32:09 +00:00
Martin
2be4441a70 amelioration(attestion.et.mail): deduplique les message d'erreur, améliore les messages d'erreur, gère la pluralisation des erreurs lorsque plusieurs tags sont concernés 2022-12-19 09:28:46 +01:00
Martin
dd74834689 amelioration(attestation.et.mail): desactive les tags sur les champs conditionnés et informe l'usager que ca arrivera 2022-12-19 09:28:46 +01:00
Martin
ef389eab41 amelioration(attestation.et.mail): repositionne les messages d'erreur lié à la substitution des balises a proximité du formulaire pour faciliter la comprehension. passage des champs au DSFR 2022-12-19 09:28:46 +01:00
Christophe Robillard
672e56a099 schedule job during a no-busy time 2022-12-16 18:02:36 +01:00
Christophe Robillard
f1595d1f50 wrap resultset tuples in ProcedureDetail 2022-12-16 15:51:49 +01:00
Christophe Robillard
5de0c8722e i18n for procedure attributes and values 2022-12-16 15:51:49 +01:00
Christophe Robillard
f3f8bc74c7 fetch procedure info on demand
Co-authored-by: Paul Chavard <paul.chavard@beta.gouv.fr>
Co-authored-by: Colin Darie <colin@darie.eu>
Co-authored-by: Martin <martin@sharypic.com>
2022-12-16 15:51:49 +01:00
Christophe Robillard
112fae8f00 improve style 2022-12-16 15:51:49 +01:00
Christophe Robillard
3a660349ad export all demarches 2022-12-16 15:51:49 +01:00
Christophe Robillard
cea92c0488 perf: remove n+1 queries to count admin 2022-12-16 15:51:49 +01:00
Christophe Robillard
d167a3ec71 fix: select distinct procedures 2022-12-16 15:51:49 +01:00
Colin Darie
acb227bffe feat(pdf): list department with champ commune 2022-12-16 10:25:54 +01:00
Eric Leroy-Terquem
2645ac85f7 update wording and order in types de champ select 2022-12-16 09:30:36 +01:00
Paul Chavard
cb5b60ccda Revert "Revert "Merge pull request #7907 from tchak/feat-cond-repetitions""
This reverts commit 0d10d36cb0.

# Conflicts:
#	app/models/dossier.rb
#	app/models/dossier_preloader.rb
2022-12-15 19:09:25 +01:00
Lisa Durand
2fff6faed6 fix checkbox rendering in all pages 2022-12-15 14:46:05 +01:00
Paul Chavard
17901d9be2 fix(fetch): always use post http method 2022-12-15 11:52:11 +01:00
Sébastien Carceles
b8ff0ba4a2
feat(demarche): sign up when prefilling a dossier (#8247)
* store prefill params in session

Instead of using query params on /dossier/new, we assume the user comes
from /commencer/:path, which is the new prefill link.

There, we store the prefill params in session, and use them to prefill
the dossier when creating it, in /dossiers/new.

* spec: cover the case

* review: serialize with json instead of yaml

* review: rename method

* review: store only query params

* review: comment why we dont override already stored params
2022-12-15 10:58:17 +01:00
Lisa Durand
ff7c1fef65 adapt button icons to bulk action 2022-12-15 10:04:25 +01:00
Lisa Durand
89730b485b add bulk action feature for 'passer_en_instruction' 2022-12-15 10:04:25 +01:00
Colin Darie
7ff04c1a05
style(instructeurs): human/i18n value for state filter 2022-12-15 09:34:10 +01:00
Colin Darie
7ff6455440
style(instructeurs): convert filters to DSFR tags 2022-12-15 09:34:10 +01:00
Colin Darie
84aabd4187
style(instructeurs): convert some dropdowns buttons to DSFR 2022-12-15 09:34:10 +01:00
mfo
74cd385b35
Merge pull request #8274 from tchak/fix-parent-dossiers
fix(dossier): parent_dossiers is really cloned_dossiers
2022-12-15 09:20:10 +01:00
Paul Chavard
243a8301bb fix(dossier): authorize passage en instruction if auto archive is on and is in the past 2022-12-14 22:16:13 +01:00
Colin Darie
a2f8ab37bc
style(instructeurs): fix dropdown visibility when table height is short 2022-12-14 18:57:34 +01:00
Colin Darie
ae296e70ed
style(instructeurs): table dossiers in full width in a fluid container 2022-12-14 18:57:33 +01:00
Paul Chavard
59bdd4bd92 fix(tags): relax parser roules 2022-12-14 17:53:36 +01:00
Paul Chavard
9149e0fcd7 feat(revision): allow more dossiers to rebase 2022-12-14 17:42:27 +01:00
Paul Chavard
5dfb96383a fix(types_de_champ): ensure we always reset dossier after demarche changes 2022-12-14 17:42:27 +01:00
Paul Chavard
1f54986ab8 clean(admin): remove unused code from old controller 2022-12-14 17:42:27 +01:00
Colin Darie
3a9a71079a
Merge branch 'main' into pj-en-construction-replace 2022-12-14 16:59:48 +01:00
Paul Chavard
1b95809f14 refactor(dossier): flatten champ attributes 2022-12-14 13:03:06 +01:00
Paul Chavard
0d10d36cb0 Revert "Merge pull request #7907 from tchak/feat-cond-repetitions"
This reverts commit 1900f8ff4c, reversing
changes made to febffc2d64.

# Conflicts:
#	app/models/dossier.rb
2022-12-14 11:25:45 +01:00
Colin Darie
a3425f5074
chore(i18n): translate missing attachments titles keys 2022-12-14 09:58:15 +01:00
Colin Darie
013a05f24a
feat(piece_justificative): replace with multiple attachments for dossier en_construction 2022-12-14 09:58:15 +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
ece70efbea refactor(dossier): improuve dossiers_safe_scope on batch operation 2022-12-14 09:45:53 +01:00
Paul Chavard
9510142cd8 fix(dossier): parent_dossiers is really cloned_dossiers 2022-12-14 09:44:19 +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
c93eba38ea chore(turbo-poll): convert to setInterval, turbo morph compatible.
Interval is not exponential anymore, so increase max checks.
2022-12-08 20:36:15 +01:00
Colin Darie
4824363879 refactor(attachment): rename user_can_download -> explicit view_as
- link: shows a simple link to open attachment
- download: shows complete DSFR download UI
2022-12-08 20:36:15 +01:00
Colin Darie
7c5d27d8e9 feat(attachment): allow user to "view" a file without the complete download UI 2022-12-08 20:36:15 +01:00
Colin Darie
7719ce1865 chore(attachment): increase poll antivirus timeout and make it clear it's not blocker 2022-12-08 20:36:15 +01:00
Paul Chavard
7929b7d0d7 clean(api_token): remove administrateur token support 2022-12-08 17:35:21 +01:00
Martin
e018d2975d amelioration(administrateur/carte-email): la carte des emails affichait toujours 'A configurer'. Desormais si les 5 mail configurable on ete modifiés, on affiche 'Validé' + on affiche le nombre de mail personnalisé 2022-12-08 16:25:08 +01:00
sebastiencarceles
69d61913f5 review: unauthorize complex champs 2022-12-08 15:27:39 +01:00
sebastiencarceles
bf03e3b35a review: prefix typed ids with 'champ_' 2022-12-08 15:27:39 +01:00
sebastiencarceles
11fed2c934 review: champs exist because stable ids exist 2022-12-08 15:27:39 +01:00
sebastiencarceles
a5c1c68a91 review: style 2022-12-08 15:27:39 +01:00
Sébastien Carceles
9dfb498806 review: prefer if to unless
Co-authored-by: LeSim <mail@simon.lehericey.net>
2022-12-08 15:27:39 +01:00
Damien Le Thiec
006a1257b5 Refacto prefill_params construction (remove merge) 2022-12-08 15:27:39 +01:00
sebastiencarceles
373e8aeadb review: validate prefilled champs only 2022-12-08 15:27:39 +01:00
sebastiencarceles
1e21a3d3e1 review: query the db only once 2022-12-08 15:27:39 +01:00
sebastiencarceles
ab30af5fe5 review: move Prefillable to concern directory 2022-12-08 15:27:39 +01:00
sebastiencarceles
3939644030 validate prefilled champs when editing brouillon 2022-12-08 15:27:39 +01:00
sebastiencarceles
79ef48cafb make the dossier prefillable 2022-12-08 15:27:39 +01:00
sebastiencarceles
f4e1a09e73 prepare prefilled values from ctrl params 2022-12-08 15:27:39 +01:00
sebastiencarceles
24802985a2 feat(dossier): prefill dossier from query params 2022-12-08 15:27:39 +01:00
Paul Chavard
52a32051c4 feat(dossier): add dossier.champs_public_all 2022-12-08 09:38:12 +01:00
Paul Chavard
d513c364d8 feat(cond): enable conditional on champs in repetitions 2022-12-08 09:38:12 +01:00
Paul Chavard
6ce7064ffd feat(dossier): add repetition champs to champs_for_condition 2022-12-08 09:38:12 +01:00
Colin Darie
40a1eaaaed fix(annuaire-education): schema should not require adresse_1, type_contrat_prive attributes
https://sentry.io/organizations/demarches-simplifiees/issues/3328955794/events/147affe4b73b43a391c257b97d298bb9/?project=1429550
2022-12-07 22:23:34 +01:00
simon lehericey
fe8bd15939 feat(timestamp): ensure signature is openssl compatible 2022-12-07 19:28:01 +01:00
simon lehericey
86cda6a0b9 fix(timestamp spec): rewind io after before_save check 2022-12-07 19:28:01 +01:00
simon lehericey
de2c5c69be feat(timestamp): use certigna to timestamp 2022-12-07 19:28:01 +01:00
simon lehericey
172a9d5599 feat(timestamp): add certigna 2022-12-07 19:28:01 +01:00
Paul Chavard
52c8fc7e8d feat(api_token): api v2 use new token 2022-12-07 18:19:37 +01:00
Paul Chavard
a47a056ee8 feat(api_token): api v1 use new token 2022-12-07 18:19:37 +01:00
Paul Chavard
3c21090a88 feat(api_token): add profile api token card 2022-12-07 18:19:37 +01:00
Paul Chavard
3d1f57df83 feat(api_token): add api token controller 2022-12-07 18:19:37 +01:00
Paul Chavard
ebbada752f feat(api_token): add APIToken model 2022-12-07 18:19:37 +01:00
Lisa Durand
64134d1b08 fix deleted notification in table after batch feature implementation 2022-12-07 16:21:15 +01:00
Paul Chavard
30a5c592e6 refactor(graphql): use shorthand syntax in mutations 2022-12-07 13:21:55 +01:00
Paul Chavard
4fe081e4be fix(dossier): send notifications on declarative dossiers 2022-12-07 13:14:59 +01:00
Paul Chavard
bb47e8d2ab fix(dossier): dossier.repasser_en_construction! should take disable_notification 2022-12-07 13:14:59 +01:00
Paul Chavard
e6fa7f0a9f feat(graphql): update stored query to use files instead of file 2022-12-07 12:06:55 +01:00
Paul Chavard
c008cad1f9 feat(graphql): prepare avis and messages to handle multiple files 2022-12-07 12:06:55 +01:00
Colin Darie
f4eb32af29 fix(messagerie): attachment open in new tab 2022-12-06 16:44:24 +01:00
Colin Darie
182bfcd3e3
style(attachment): delete button replaces bullet when user can download + destroy 2022-12-06 16:37:10 +01:00
Colin Darie
5b20713893
style(attachment): fix antivirus badge when uploading as downloadable 2022-12-06 16:37:10 +01:00
Colin Darie
f4d403a81c fix(apiv1): piece_justificative continue to returns a single attachment 2022-12-06 15:47:06 +01:00
Martin
2eaa06b22b correctif(export.pjs): sur l'export, les champs de type piece justificative renvoyent un tableau de la meme dimension quelque soit le nombre de pj joint 2022-12-06 15:22:53 +01:00
Paul Chavard
b8a9b7223c refactor(groupe_instructeur): improuve controller 2022-12-06 12:01:54 +01:00
Paul Chavard
f49a1baeec refactor(groupe_instructeur): remove mailer should take a list of instructeurs 2022-12-06 12:01:54 +01:00
Paul Chavard
9fe93ded7f refactor(groupe_instructeur): add instructeur.find_or_invite 2022-12-06 12:01:54 +01:00
Colin Darie
4ba76e6844 fix(api-v1): dossier -> avis -> piece_justificative_file_attachment relation name 2022-12-06 11:48:42 +01:00
Paul Chavard
ed4d5cb36a refactor(demarche): make declarative demarche processing syncroneous 2022-12-06 11:41:25 +01:00
Martin
91ef618a42 clean(code): stick to usage of present?/empty? instead of count zero etc 2022-12-06 11:28:48 +01:00
Martin
8f1478b00f clean(deadcode): remove deadcode 2022-12-06 11:28:48 +01:00
Martin
b5f69c8961 review(dossier.reload): evite de recharger le batch qui peut etre confusant 2022-12-06 11:28:48 +01:00
Martin
7c65af3be0 poc(batch_operation_alert): simplier wording 2022-12-06 11:28:48 +01:00
Lisa Durand
3d2f0ebb88 add icon on submit button and simplify i18n 2022-12-06 11:28:48 +01:00
Martin
ea8bd13bcf poc(batch_operation.purge): nettoie les batch terminé ou inutiles 2022-12-06 11:28:48 +01:00
Martin
6556fda218 clean(spec): rubocopify / fix specs 2022-12-06 11:28:48 +01:00
Lisa Durand
0563ac391b small css adjustements to improve table display 2022-12-06 11:28:48 +01:00
Martin
b0ae2e8a0f clean(spec): rubocopify / fix specs 2022-12-06 11:28:48 +01:00
Martin
5875f9b572 spec(batch_operation): system spec batch operation poc 2022-12-06 11:28:48 +01:00
Lisa Durand
7b3cbcb8f6 display batch operation alerts 2022-12-06 11:28:48 +01:00
Lisa Durand
2615da1e28 setup seen_at to hide alert when batch is finished and alert has been seen 2022-12-06 11:28:48 +01:00
Lisa Durand
6859882a58 display batch operation alert to instructeur groups not only instructeur 2022-12-06 11:28:48 +01:00
Lisa Durand
c52443f221 change flash alert wording and display message in show if dossier is in batch 2022-12-06 11:28:48 +01:00
Lisa Durand
1beb219fdd display batch operation alerts 2022-12-06 11:28:48 +01:00
Martin
e5944eed34 poc(batch_operation): habtm groupe instructeurs, permettra de visualiser plus facilement les batch en cours pour les instructeurs du meme groupe 2022-12-06 11:28:48 +01:00
Martin
eaf72162da poc(batch_operation): some rewrite to avoid various conflict (when an instructeur try to create a job with an incompatible dossier regarding the current task). also soome cleanup to isole spec in least involved model 2022-12-06 11:28:48 +01:00
Martin
4266ab93c5 poc(batch_operation): track dossier processed safely 2022-12-06 11:28:48 +01:00
Martin
7a51ecec5d poc(batch_operation): quand un dossier est dans un batch, impossible de faire les actions : archive, unarchive, follow, unfollow, passer_en_instruction, repasser_en_construction, repasser_en_instruction, terminer, restore, destroy, extend_conservation 2022-12-06 11:28:48 +01:00
Martin
35dbc4021e poc(batch_operation): show locked files 2022-12-06 11:28:48 +01:00
Martin
beb39027d0 poc(batch_operation.ui): implement simple ui to trigger a batch of current page 2022-12-06 11:28:48 +01:00
Martin
7df86c50fb poc(batch_operations_controller): implement simple [not yet with procedure_presentation] action to create a batch operation 2022-12-06 11:28:48 +01:00
Martin
b11dbafc59 poc(batch_operation_job): implement archive dossiers with async behaviour, lock, run_at, finished_at, failed_dossier_ids, success_dossier_ids 2022-12-06 11:28:48 +01:00
Martin
61f4cded75 poc(batch_operation): just the model and some specs and a poc for archive them without async 2022-12-06 11:28:48 +01:00
Martin
9193581ae2 correctif(admin/procedures/configuration): pour une procedure, la tuile instructeurs est considérée valide si le routage est activé ou si il y a des instructeurs declarés
Update app/components/procedure/card/instructeurs_component/instructeurs_component.html.haml

Co-authored-by: Paul Chavard <github@paul.chavard.net>
2022-12-06 10:20:17 +01:00
Colin Darie
a2e80cfcca fix(clone-rescue): when record was invalid 2022-12-05 18:19:17 +01:00
Colin Darie
00e1e90cb6 fix: multipart upload on instructeurs import & acceptation avec PJ
Les options html dans un `form_tag` ne doivent pas être définies
sous la clé `html` mais directement à la "racine".

Fix régression introduite dans #7958
2022-12-05 17:28:12 +01:00
Martin
1cdfc9ded0 amelioration(liens-de-telechargement): permet de specifier si le lien de téléchargement se fait sur l'onglet actuel ou vers un nouvel onglet 2022-12-05 15:59:50 +01:00
simon lehericey
8771205679 clean(flipper): remove unused expert_not_allowed_to_invite 2022-12-05 12:22:29 +01:00
Colin Darie
f7d6350e05 fix(a11y/identite): indicates that all fields are required
Closes #8096
2022-12-05 11:37:36 +01:00
Colin Darie
b9d6397a9b
fix(pj_template): private proxy template url so their links are non expirable
Closes #7920
2022-12-05 11:30:00 +01:00
Colin Darie
c98021e58a chore(attachment): input name attribute follows form object name for nested attributes 2022-12-05 10:47:10 +01:00
Colin Darie
6e8302101f fix(attachments): cleanup useless kwarg 2022-12-05 10:47:10 +01:00
Colin Darie
cb2afc74b0 style(attachments): better UX when we can try to upload without network 2022-12-05 10:47:10 +01:00
Colin Darie
42b84384dd fix(a11y/attachment): associate input to label, no empty id 2022-12-05 10:47:10 +01:00
Colin Darie
1db40de70e style(attachments): improve when we can download our multiple attachments (dossier en_construction) 2022-12-05 10:47:10 +01:00
Colin Darie
920f90d2e3 chore(titre_identite): render template if exists 2022-12-05 10:47:10 +01:00
Colin Darie
3e617f34ec chore(admin): can download an uploaded PJ template 2022-12-05 10:47:10 +01:00
Colin Darie
42363e0b0d refactor(attachment): extract PendingPoll component 2022-12-05 10:47:10 +01:00
Colin Darie
b110e58f2f refactor(attachment): extract i18n 2022-12-05 10:47:10 +01:00
Colin Darie
2f84346ba3 fix(dossier/sticky-footer): above dsfr buttons have a z-index = 1 2022-12-05 10:47:10 +01:00
Colin Darie
fe0312b1d7 style(procedure/form): fix bg on input file within non-dsfr forms 2022-12-05 10:47:10 +01:00
Colin Darie
e3ddb7779f fix(form): multipart option must be set under "html" to ensure rendering as expected 2022-12-05 10:47:10 +01:00
Colin Darie
6ac0114992 test(attachments): more components tests & improvements 2022-12-05 10:47:10 +01:00
Colin Darie
fefc326e6b refactor(attachment): extract shared Attachment::ProgressComponent 2022-12-05 10:47:10 +01:00
Colin Darie
7cbe6bbaa4 fix(attachment): clone piece justificatives with multiple attachments 2022-12-05 10:47:10 +01:00
Colin Darie
b609c3dae4 refactor(attachment): bring batch user_can_destroy, update tests 2022-12-05 10:47:10 +01:00
Colin Darie
df135b080b refactor(attachment): remove useless id arg 2022-12-05 10:47: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
84ca01bdf7 fix(piece_justicative): don't modify validator accepted formats in place
Previous implementation caused to add multiple times ".acidcsa".
2022-12-05 10:47:10 +01:00
Colin Darie
3e992589c5 style(piece_justificative): input ux & list accepted formats 2022-12-05 10:47:10 +01:00
Colin Darie
f66a0cf5a9 chore(piece_justificative): tells admins multiple files could be attached 2022-12-05 10:47:10 +01:00
Colin Darie
636645f686 refactor: minor piece_justificative_multiple? question mark use 2022-12-05 10:47:10 +01:00
Colin Darie
a726350f0d feat(procedure): allow admin to enable multiple uploads for piece justificative on existing procedures 2022-12-05 10:47:10 +01:00
Colin Darie
3affd1660f fix(api-v1): piece justificative serialization 2022-12-05 10:47:10 +01:00
Colin Darie
1f8d28c678 feat(piece_justificative): limit to 1 upload for existing procedures 2022-12-05 10:47:10 +01:00
Colin Darie
0014ce4b91 chore(schema): +procedures#piece_justificative_multiple 2022-12-05 10:47:10 +01:00
Colin Darie
ed1c6ec515 style(piece_justificative): use DSFR Téléchargement de fichiers for instructeurs & experts 2022-12-05 10:47:10 +01:00
Colin Darie
1138604748 feat(api): PieceJustificativeChamp: deprecate file in favor of files 2022-12-05 10:47:10 +01:00
Colin Darie
6a0379086d chore(piece_justificative): continue attachments refactor 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
Colin Darie
ab1928dc33 style(attachment): enable underlined link on refresh link 2022-12-05 10:47:10 +01:00
Colin Darie
91f4971df2 feat(champ): has_one_attached => has_many_attached piece_justificative_file 2022-12-05 10:47:10 +01:00
Colin Darie
ac234b7744 chore(footer): remove obsolete footer partial & i18n keys 2022-12-05 10:38:16 +01:00
Colin Darie
52b6502cbd test(a11y): ensure we don't mix aria-label and title on main pages
Actuellement, on fait le choix de ne pas avoir d'éléments porteurs à la
fois d'aria-label et title.
Bien qu'en principe l'aria-label quand elle est gérée par un navigateur,
prenne précédence sur le title, en pratique un bug dans NVDA cumule les 2
et rend la navigation difficile.

On prend donc le parti (provisoire?) de n'avoir que l'un ou l'autre.

Nous gardons le title si l'info qu'il contient est également pertinente
pour les navigateurs graphiques qui l'affichent en guise de tooltip ;
autrement on bascule sur l'aria-label qui est plus largement supporté
par les navigateurs a11y.
2022-12-05 10:38:16 +01:00
Colin Darie
f653a25cc2 fix(i18n/a11y): translate "Edit file" button title
Closes #8136
2022-12-05 10:38:16 +01:00
Colin Darie
762942f468 chore(i18n): translate meta title for main user pages 2022-12-05 10:38:16 +01:00
Colin Darie
70d4d7848b feat(i18n): more footer translations 2022-12-05 10:38:16 +01:00
Colin Darie
f15363e178 feat(i18n): basic home translation 2022-12-05 10:38:16 +01:00
Paul Chavard
36195acb29 feat(component): add CopyButtonComponent 2022-12-02 11:30:49 +01:00
Kara Diaby
1efcacd845 add copy button component 2022-12-02 11:30:49 +01:00
Kara Diaby
fe04244138 locales 2022-12-02 11:30:49 +01:00
Kara Diaby
d0ba0e2d63 layout 2022-12-02 11:30:48 +01:00
Kara Diaby
f5e4c28fc1 controller 2022-12-02 11:30:48 +01:00
Colin Darie
6803fbeddb feat(instructeurs): list archiver email & date 2022-12-01 18:27:18 +01:00
Paul Chavard
00556715d6 fix(typography): fix quotes 2022-12-01 17:59:11 +01:00
Paul Chavard
886a409abf fix(dossier): fix links to empty pdf templates 2022-12-01 17:35:01 +01:00
Paul Chavard
ece68076a7 feat(dossier): add some metadata to archive and remove operation log 2022-11-30 16:20:13 +01:00
Colin Darie
cd87390262 fix(a11y/dossiers): add a caption to dossiers table (critere 5.4)
Closes #8090
2022-11-30 13:41:13 +01:00
Colin Darie
80106bf4e6 fix(a11y/search): table th/td associations (critère 5.7)
Closes #8094
2022-11-30 13:41:13 +01:00
Colin Darie
3a2fae9cc2 fix(a11y): table having role=presentation (critere 5.3)
Closes #8154
2022-11-30 13:41:13 +01:00
Colin Darie
8baac2087e style(mobile): fix burger menu alignment: we need a left icon (match UX) 2022-11-30 12:08:59 +01:00
Colin Darie
436c1951cc fix(locale-switcher): attributes & wording issues
Cf #8059
2022-11-30 12:08:59 +01:00
Paul Chavard
a90dada104 fix(patron): dossier should have a procedure and champ should delegate to dossier 2022-11-30 10:54:03 +01:00
Colin Darie
8c16eb1543 fix(a11y): more external link having title saying it will open in new tab 2022-11-30 09:27:46 +01:00
Colin Darie
ff879eb0c2 fix(a11y/dossier): fix non explicit link (6.1)
Closes #8136
2022-11-30 09:27:46 +01:00
Colin Darie
edc2eaac30 fix(footer/home): add missing rel noopener/noreferer on external links 2022-11-30 09:27:46 +01:00
Colin Darie
4d00fcc2d9 fix(a11y/home): add missing title attributes
Cf #8050
2022-11-30 09:27:46 +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
e60fb1f0c1 fix(a11y/footer): img with alt for beta gouv logo
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
1fb051c3cc refactor(attestation_template): remove unused code 2022-11-29 19:36:56 +01:00
Eric Leroy-Terquem
76605f2c0b fix pagination 2022-11-29 17:46:30 +01:00
Paul Chavard
06f43f99d0 fix(dossier): excluded deleted dossiers from demarche overview 2022-11-29 16:41:31 +01:00
simon lehericey
bffd8015d8 fix(avis_controller): check revoked avis by default 2022-11-29 16:21:06 +01:00
simon lehericey
801d594efd fix(avis_controller): revoked_acl on telecharger_pjs 2022-11-29 16:21:06 +01:00
simon lehericey
a84269e66e fix(avis_controller): revoked acl on bilans_pdf 2022-11-29 16:21:06 +01:00
simon lehericey
d764959659 fix(avis_controller): revoked acl on create_commentaire 2022-11-29 16:21:06 +01:00
simon lehericey
8929af2767 fix(avis_controller): revoked acl on messagerie 2022-11-29 16:21:06 +01:00
simon lehericey
71dd0b99ab fix(avis_controller): revoked acl on update_expert 2022-11-29 16:21:06 +01:00
simon lehericey
531cbf2612 fix(avis_controller): revoked acl on update 2022-11-29 16:21:06 +01:00