simon lehericey
9043bed3a0
refactor(procedure_presentation): add required tags
2023-01-11 14:05:17 +01:00
Colin Darie
820cb4bd27
fix(rna): some associations don't have date_publication
...
https://sentry.io/organizations/demarches-simplifiees/issues/3698792231/events/fde901fac5a44129adcafc891d59d086/?project=1429550
2023-01-11 12:30:02 +01:00
François Vantomme
fe518fed8c
refactor(links): move FAQ from footer to common scope
2023-01-11 11:28:03 +01:00
François Vantomme
faa5dda761
refactor(links): use FAQ URL locale everywhere
2023-01-11 11:28:03 +01:00
Colin Darie
05b517a847
fix(mailer): observers on balancer and balanced delivery methods
...
- Les observers doivent être déclarés *avant*
le chargement de nos delivery methods (Sendinblue & Dolist),
sinon ils seront ignorés par ces derniers
- dans le balancer, on ne peut pas appeler `.deliver` une seconde fois,
sinon les observers (et interceptors) sont invoqués deux fois.
2023-01-11 00:57:16 +01:00
Paul Chavard
afc1f12028
feat(graphql): implement add/remove instructeurs via API
2023-01-10 20:33:35 +01:00
Paul Chavard
af33d5d65c
refactor(repetition): use row_id instead of row
2023-01-10 19:31:41 +01:00
Lisa Durand
7abf51ca81
split filter in 2 partials too display filters tags on its own div to have more spaces
2023-01-10 18:05:23 +01:00
François Vantomme
0e3fe055e4
fix(archive): typo on flash notice
2023-01-10 17:23:48 +01:00
Colin Darie
d58e6a2f9c
refactor(email): remove pseudonymization, it will be done at dump-time
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
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
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
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
Paul Chavard
940f8c0474
fix(graphql): fix departements with alphanumeric codes
2023-01-05 17:33:03 +01:00
Lisa Durand
080747f60b
reorganise multiple buttons on top of table from instructeur procedure view
2023-01-05 17:22:53 +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
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
Sébastien Carceles
1de969915a
rename file to match controller name ( #8371 )
2023-01-05 14:38:56 +01:00
Paul Chavard
26e02c7173
fix(template): trix will transform double spaces in
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
Colin Darie
a91fc3bbe1
chore(usager/wording): Dossiers => Mes dossiers in main tab
2023-01-04 13:15:10 +01:00
Colin Darie
b89fc16999
style(instructeurs/expiration): convert banner to DSFR
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
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
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
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
9b3fa4dd3c
refactor(revision): changes should be domain objects
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
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
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
Paul Chavard
4c516a6991
feat(dossier): allow to rebase champs with value made mandatory
2022-12-22 13:08:04 +01:00
Paul Chavard
00218fded2
fix(dossier): update spec
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
Christophe Robillard
00536b949a
fix system specs by adding zone for new procedure
2022-12-21 09:02:16 +01:00
Christophe Robillard
f4977f358b
fix spec procedure_cloning
...
add zone to new procedure
2022-12-21 09:02:16 +01:00
Christophe Robillard
11a18516b2
remove feature flag zonage
2022-12-21 09:02:16 +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
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
f1595d1f50
wrap resultset tuples in ProcedureDetail
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
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
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
39a9660df6
remove redundant and failing test
2022-12-15 10:04:25 +01:00
Lisa Durand
eea42aad6b
fix linter
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
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
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
Colin Darie
3a9a71079a
Merge branch 'main' into pj-en-construction-replace
2022-12-14 16:59:48 +01:00
sebastiencarceles
4e1dff0dce
fix schema about prefilled default
2022-12-14 15:44:27 +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
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
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
sebastiencarceles
bfdba0c513
review: system spec
2022-12-08 15:27:39 +01:00
sebastiencarceles
69d61913f5
review: unauthorize complex champs
2022-12-08 15:27:39 +01:00
sebastiencarceles
cdd790e3d3
review: document prefilling with json or array injection
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
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
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
16a48c02aa
feat(cond): add tests
2022-12-08 09:38:12 +01:00
simon lehericey
fe8bd15939
feat(timestamp): ensure signature is openssl compatible
2022-12-07 19:28:01 +01:00
simon lehericey
c085c7820f
fix(spec): update spec with new timestamp
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
ebbada752f
feat(api_token): add APIToken model
2022-12-07 18:19:37 +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
73ff739c52
refactor(graphql): extract stored queries spec in a separate file
2022-12-07 12:06:55 +01:00
Colin Darie
8cf8c2c88a
test(attachment): maybe fix flaky test
2022-12-06 16:37:11 +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
Martin
d96fba1341
bug(export.pjs): sur l'export, les champs de type piece justificative devraient renvoyer un tableau de la meme dimension quelque soit le nombre de pj joint
2022-12-06 15:04:50 +01:00
Paul Chavard
b8a9b7223c
refactor(groupe_instructeur): improuve controller
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
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
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
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
simon lehericey
8771205679
clean(flipper): remove unused expert_not_allowed_to_invite
2022-12-05 12:22:29 +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
53d4395cbd
test(attachments): system test for multiple attachments upload
2022-12-05 10:47:10 +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
cb2afc74b0
style(attachments): better UX when we can try to upload without network
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
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
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
e1270d5ffe
test(api): add a test to cover single (flat) attachment extension
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
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
Kara Diaby
92b4c31293
tests
2022-12-02 11:30:49 +01:00
Paul Chavard
00556715d6
fix(typography): fix quotes
2022-12-01 17:59:11 +01:00
Martin
235da8b04a
amelioration(sanitize): assainie aussi les balises <img>
2022-12-01 17:42:24 +01:00
Paul Chavard
886a409abf
fix(dossier): fix links to empty pdf templates
2022-12-01 17:35:01 +01:00
Paul Chavard
c5901fbb95
clean(type_de_champ): remove magic factory
2022-12-01 16:36:59 +01:00
Colin Darie
acdd0b2350
test(a11y): verify on basic pages external link say it will open a new tab
2022-11-30 09:27:46 +01:00
Paul Chavard
20007824c9
spec(graphql): add tests to ensure that stable ids are stable
2022-11-29 19:55:40 +01:00
Paul Chavard
1fb051c3cc
refactor(attestation_template): remove unused code
2022-11-29 19:36:56 +01:00
Paul Chavard
06f43f99d0
fix(dossier): excluded deleted dossiers from demarche overview
2022-11-29 16:41:31 +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
20fcfdeb5e
clean(avis_controller_spec): procedure_id: procedure.id -> procedure_id:
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
simon lehericey
3be17da70e
fix(avis_controller): revoked acl on update
2022-11-29 16:21:06 +01:00
simon lehericey
cb2e1db52e
clean(avis_controller_spec): update
2022-11-29 16:21:06 +01:00
simon lehericey
6aa2ccacd4
fix(avis_controller): fix revoked acl on create_avis
2022-11-29 16:21:06 +01:00
simon lehericey
3c477691c3
clean(avis_controller_spec)
2022-11-29 16:21:06 +01:00
simon lehericey
c17bc50def
fix(avis_controller): acl on instruction
2022-11-29 16:21:06 +01:00
simon lehericey
f500cb8dc7
fix(avis_controller): procedure do not show revoked avis
2022-11-29 16:21:06 +01:00
simon lehericey
dcae06ae84
fix(avis_controller): index do not linked to revoked avis
2022-11-29 16:21:06 +01:00
simon lehericey
6ad048955b
clean(avis_controller_spec)
2022-11-29 16:21:06 +01:00
simon lehericey
644b88ea0e
clean(avis_controller_spec)
2022-11-29 16:21:06 +01:00
simon lehericey
d0c0d6c491
fix(spec): speed up *5
2022-11-29 16:21:06 +01:00
simon lehericey
f96a7f432c
clean(dossier): useless method
2022-11-29 15:33:10 +01:00
Paul Chavard
ee30a95847
fix(graphql): check if tokens are revoked
2022-11-25 16:27:11 +01:00
Colin Darie
f625d99934
chore(dossier_transfer): extract i18n
2022-11-25 13:34:12 +01:00
sebastiencarceles
c294ce70ca
fix: escape characters when showing page title
2022-11-25 09:30:20 +01:00
Paul Chavard
5a9ce7a331
feat(graphql): make demarche schema public
2022-11-24 18:21:33 +01:00
Christophe Robillard
3539b00652
search admins by email
2022-11-24 15:05:46 +01:00
Paul Chavard
234975b806
feat(graphql): expose groupe_instructeur state and update mutation
2022-11-24 14:33:29 +01:00
Martin
bb993d552e
amelioration(avis): sur une page listant les avis en attente sur une procedure, on remonte le dernier avis demandé en premier
2022-11-24 14:23:06 +01:00
Paul Chavard
e395ab5c87
fix(invite): do not render menu when invite not found
2022-11-24 09:43:19 +01:00
Paul Chavard
405d2a695f
refactor(attestation_template): remove from revisions
2022-11-23 12:26:26 +01:00
Paul Chavard
cafda4f6f0
refactor(attestation_template): move to procedure
2022-11-23 12:26:26 +01:00
Paul Chavard
55c5de2c2c
feat(attestation_template): assign attestations templates to procedures
2022-11-23 12:26:26 +01:00
Paul Chavard
ff470ada48
fix(dossier): fix dossier brouillon spec
2022-11-23 11:56:35 +01:00
Paul Chavard
c0fd080d0e
refactor(operation_log): store data in jsonb instead of files
2022-11-22 18:06:05 +01:00
Paul Chavard
d306583a7b
refactor(active_storage): PiecesJustificativesService::FakeAttachment -> ActiveStorage::FakeAttachment
2022-11-22 18:05:26 +01:00
Christophe Robillard
8e95c6a2ba
search procedures by libelle
2022-11-22 17:08:17 +01:00
simon lehericey
f532eee9f6
fix(spec): remove strange click
2022-11-22 16:41:20 +01:00
simon lehericey
4babee2591
fix(admin): ignore active column
...
the attribut should be retrieve from the user model as the administrateur is no more a devise model
2022-11-22 16:41:20 +01:00
simon lehericey
30b53ec927
feat(procedure_admins): allow self remove from procedure
2022-11-22 16:41:20 +01:00
Lisa Durand
e7c3181fc9
add spec for api
2022-11-18 11:15:16 +01:00
Lisa Durand
3953470c78
remove change on api V1 and update graphql for sensitive data
2022-11-18 11:15:16 +01:00
Lisa Durand
f34c890278
add a label for api and export for sensitive data as titre_identite_champ
2022-11-18 11:15:16 +01:00
Paul Chavard
0c0618aa79
feat(export): add GeoJSON export
2022-11-18 10:04:35 +01:00
Paul Chavard
29bdd82b59
refactor(procedure): types_de_champ -> active_revision.types_de_champ_public
2022-11-17 13:54:14 +01:00
simon lehericey
6a7621b731
feat(support): add task to remove ex team member
2022-11-16 17:52:48 +01:00
simon lehericey
fcfe09f05a
refactor(user): rename delete_and_keep_track_dossiers
2022-11-16 17:52:47 +01:00
Colin Darie
54699d35a8
test(manager): fix test after administrate upgrade
2022-11-15 17:28:04 +01:00
Colin Darie
7b9ff5ebe8
test(manager): add basic test on dossiers index & show
2022-11-15 16:30:18 +01:00
Lisa Durand
c2de73c09d
simplify and improve perf by making the feature works only for id search
2022-11-15 10:51:36 +01:00
Lisa Durand
d245e12559
remove render_views in spec and correct the way to retrieve dossiers
2022-11-15 10:51:36 +01:00
Lisa Durand
ba0799b684
it displays a message if instructor is looking for a dossier that is not in his instructor group
2022-11-15 10:51:36 +01:00
Martin
18b7f4e4fa
remaniement(dossier.clone): simplifications, pas de callback/after, pas d'heritage, mm interface pour cloner les champs public/prive, clonage des PJs avec le nouveau service de clone, ajoute une cle etrangere sur la colonne parent_dossier_id
2022-11-14 09:53:19 +01:00
Martin
90f7d265c6
amelioration(clone.piece_justificative): gestion du clonage des piece justificative dans une tache asynchrone
2022-11-14 09:13:54 +01:00
Martin
05dcf5e7cf
amelioration(usager.liste_des_dossier): ajout du bouton pour cloner un dossier
2022-11-14 09:13:54 +01:00
Martin
844004818a
amelioration(dossier.clone): dossier.clone, permet de cloner un dossier
2022-11-14 09:13:52 +01:00
Paul Chavard
e6288c39f2
refactor(dossier): champs -> champs_public
2022-11-10 22:44:39 +00:00
Christophe Robillard
cc35788d26
extract computation to controller
2022-11-10 18:02:20 +01:00
Christophe Robillard
c96781cfad
list all admins
2022-11-10 18:02:20 +01:00
Christophe Robillard
24e7de71e3
add procedures_filter specs
2022-11-10 18:02:20 +01:00
Paul Chavard
95f65900d3
refactor(active_storage): no download on clone
2022-11-10 12:25:55 +00:00
Paul Chavard
5e87539d6d
fix(groupe_instructeur): add explicit order to groupe_instructeurs
2022-11-09 10:56:40 +00:00
Christophe Robillard
a5fa21ca1b
add from_publication_date filter
2022-11-09 10:41:06 +01:00
Martin
b3f80dc5f9
amelioration(Procedure.revision_changes): ajout du support pour les texte complementaire affichable au clique des champs de type explication
...
Co-authored-by: Paul Chavard <github@paul.chavard.net>
2022-11-08 17:49:24 +01:00
Martin
fe0411203f
amelioration(types_de_champ/editor): en mode edition d'un champ de type explication, permet de choisir d'afficher ou pas cette explication derriere un collapse
2022-11-08 17:49:24 +01:00
Martin
a1dbc40f57
evolution(helpscout.webhooks): mise en place des rappel web afin de notifier l'equipe tech des bug identifies par le support
...
Co-authored-by: Colin Darie <colin@darie.eu>
2022-11-08 17:00:03 +01:00
Martin
571452c530
bug(a11y.dropdown): la dropdown d'aide usager sur une procedure n'est pas a11y compatible
2022-11-08 16:40:17 +01:00
Martin
48b12d03f6
spec(wcag_usager_spec): add test on dropdown. broken 🤭
2022-11-08 16:40:17 +01:00
Martin
3f37102f97
spec(wcag_usager_spec): add test to dossiers_path with at least one dossier
2022-11-08 16:40:17 +01:00
Martin
0a4f17d245
chore(wcag_usager_spec): remove skips
2022-11-08 16:40:17 +01:00
simon lehericey
db3ebfa6d2
feat(FranceConnect): list and allow to unlink FC identities
2022-11-08 16:17:06 +01:00
Christophe Robillard
c0231dffa2
extract ProceduresFilter class
2022-11-08 12:14:26 +01:00
Paul Chavard
f47b39f389
fix spec
2022-11-07 13:34:58 +00:00
simon lehericey
1760ccbc01
fix(merge): transfers hidden procedures
2022-11-07 14:11:05 +01:00
Paul Chavard
7de52d582a
feat(conditional): remove conditional feature flag
2022-11-04 13:37:37 +00:00
Paul Chavard
3ced06d59b
feat(graphql): improuve groupe instructeur query
2022-11-04 11:27:58 +00:00
Eric Leroy-Terquem
aca2775874
remove routee? method
2022-11-04 12:03:44 +01:00
Eric Leroy-Terquem
b51770c151
toggle routing after groupe instructeur update
2022-11-04 12:03:44 +01:00
Eric Leroy-Terquem
5578115acf
update routee? method
2022-11-04 12:03:43 +01:00
Eric Leroy-Terquem
110953e450
constraint logic to active groups
2022-11-04 12:03:43 +01:00
Eric Leroy-Terquem
63ae328bee
update wording and cards order
2022-11-04 12:03:43 +01:00
Eric Leroy-Terquem
b419c48262
toggle routing when adding or deleting groupe_instructeurs
2022-11-04 12:03:43 +01:00
Paul Chavard
40d1e2ee44
Fix typos
...
Co-authored-by: mfo <mfo@users.noreply.github.com>
2022-11-04 09:08:41 +00:00
Paul Chavard
33fc8a45ab
feat(emails): show email errors on procedure page
2022-11-04 09:08:41 +00:00
Paul Chavard
dd4c1f2fac
feat(emails): validate tags in notification emails
2022-11-04 09:08:41 +00:00
simon lehericey
5ee065c8f0
chore(capybara): increase waiting time as workers are slow
2022-11-03 15:26:48 +01:00
Eric Leroy-Terquem
09c5b9dc99
remove categories_type_de_champ feature flag
2022-11-03 14:28:27 +01:00
Kara Diaby
4d6ff768c4
Ajoute les dossiers déposés dans les statistiques Datagouv
2022-11-03 10:24:04 +01:00
Martin
9562108c60
amelioration(archive.nom-de-fichier): ameliore le nom du fichier d'une archive mensuelle pour eviter les confusion
2022-11-02 16:56:50 +01:00
Martin
e56441b7f5
correctif(Administrateurs::Archives#index): mauvaise comparaison
2022-11-02 14:07:53 +01:00
Paul Chavard
5487ce0458
feat(graphql): implement stored queries
2022-11-02 11:26:57 +01:00
Paul Chavard
2ed11308a8
feat(graphql): improuve reptition champs schema
2022-11-02 11:09:56 +01:00
Paul Chavard
e7766694d3
fix(messages): retry stale blobs
2022-11-02 09:19:51 +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
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
Christophe Robillard
f9f31b721a
get zones of an admin
2022-10-31 16:12:02 +01:00
Martin
fb73838bb8
bug(export.global): Export.find_for_groupe_instructeurs devrait remonter les exports globaux
2022-10-31 14:32:17 +01:00
Colin Darie
010c9a0dcb
feat(procedure): includes read duration of explication/non fillable champs
...
Long explications can significantly increase global fill duration,
so we can't ignore them.
Closes #7963
2022-10-31 12:17:16 +01:00
Colin Darie
7731c6ad64
feat(procedure): estimate fill duration takes account of libelle & description read time
...
Sometimes long description on types de champ
significantly increases global fill duration.
140 words per minute is a good estimate of attentive off-voice read time.
(This is independent of characters per word).
Closes #7963
2022-10-31 12:17:16 +01:00
Colin Darie
408f57d2d1
fix(rna): date_creation may be null
...
Closes #7975
2022-10-31 12:02:37 +01:00
Paul Chavard
2ed26e8699
fix(graphql): properly handle variables json parse errors
2022-10-31 11:32:30 +01:00
Paul Chavard
ac75afb77c
fix(graphql): do not load brouillon or deleted linked dossier
2022-10-31 10:53:22 +01:00
Martin
5ced9fb431
chore(create_procedure_presentation): homogénéise l'interface sur les procédure présentation. pas d'objet 'build', sinon les export/filtres deviennent compliqués
2022-10-31 09:29:27 +01:00
Martin
50c43f4819
correct(export): la creation d'archive pour un groupe d'instructeur, avec des filtres differents et identique doit etre consistante
2022-10-31 09:29:27 +01:00
Martin
cf51be85e0
bug(export): la creation d'une archive avec un filtre different devrait etre effective, ce n'est pas le cas
2022-10-31 09:29:27 +01:00
simon lehericey
e7666e274f
fix(spec/system): wait for merci page
2022-10-28 14:51:41 +02:00
simon lehericey
d859f1ed0a
fix(spec/system): add delay when dealing with pj
2022-10-28 14:51:41 +02:00
simon lehericey
db0fcec019
conf(capybara): make JS_LOG work for head and headless
2022-10-28 14:51:41 +02:00
simon lehericey
091a522cbf
conf(capybara): add MAKE_IT_SLOW option to reveal bugs
2022-10-28 14:51:41 +02:00
Colin Darie
9f2fa5ee1c
fix(invitation): don't fail when dossier is hidden & user signed on another account
...
Suite de 45994ff567
Cf https://sentry.io/organizations/demarches-simplifiees/issues/3422144920/events/e1c83ea74dbc410ea22aa17ef29fb329/?project=1429550
2022-10-28 08:56:03 +02:00
Martin
c7c46c9dff
design(page de configuration de procedure): passage de la grille au DSFR
2022-10-27 14:00:44 +02:00
simon lehericey
d1a8731bfc
refactor(spec): faster service spec
2022-10-25 14:44:43 +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
simon lehericey
0a1ab733b6
refactor(spec): stabilize api_particulier_spec
2022-10-25 14:44:43 +02:00
simon lehericey
dbb5b7deec
clean(js): remove unused autosave:reset
2022-10-25 14:44:43 +02:00
simon lehericey
e71b7eeee5
refactor(spec): wait for debounce and in flight promise
2022-10-25 14:44:43 +02:00
simon lehericey
00d1552060
clean(spec): remove useless autosave
2022-10-25 14:44:43 +02:00
simon lehericey
4ec13d652a
core(capybara): disable_animation
2022-10-25 14:44:43 +02:00
simon lehericey
5d38345478
feat(system-spec): display js console error
2022-10-25 14:44:43 +02:00
simon lehericey
1e88d1a1d7
chore(capybara): use same size in headless or not
2022-10-24 22:13:16 +02:00
Kara Diaby
9529c6ba9c
tests
2022-10-21 19:13:12 +02:00
Paul Chavard
f109220df3
fix(dossier): test for non breaking space replacement in champ label
2022-10-21 16:34:19 +02:00
Paul Chavard
f2e8dba8e4
fix(dossier): tag can contain non breaking space
2022-10-21 16:34:19 +02:00
Paul Chavard
d7c5dcf8bb
fix(dossier): a tag can be preceded by a -
2022-10-21 16:06:32 +02: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
Martin
2cd74d1010
amelioration(archives): positionne le fichier des reporting des erreurs en tête de l'arborescence
2022-10-20 15:14:57 +02:00
Colin Darie
45994ff567
fix(invitation): when dossier is not visible anymore
...
https://sentry.io/organizations/demarches-simplifiees/issues/3422144920/
2022-10-20 09:08:36 +02:00
simon lehericey
5fa5d46d8c
fix(admin_merge): a case where 2 admins have the same service
2022-10-19 16:54:34 +02:00
simon lehericey
c6e7db3622
fix(export): bug when combining revision and conditional
2022-10-18 11:53:13 +02:00
simon lehericey
fbf089d60e
refactor(dossier): rename check_mandatory_champs -> check_mandatory_and_visible_champs
2022-10-18 11:13:41 +02:00
simon lehericey
9bba2093be
refactor(champ): mandatory_blank_and_visible? -> mandatory_blank?
...
As the method does not check visibility
2022-10-18 11:13:41 +02:00
Paul Chavard
c097f70543
fix(graphql): hide champs based on conditions
2022-10-14 11:33:25 +02:00
simon lehericey
d5d031e15d
fix(export): do not export invisible champ
2022-10-14 10:30:27 +02:00
simon lehericey
de875632e6
refactor(spec): use match_array
2022-10-14 09:45:58 +02:00
simon lehericey
40a3fff593
perf(dossiers_controller): do not load pj template in update, -10ms
2022-10-13 22:36:56 +02:00
Eric Leroy-Terquem
2147a1865c
add test
2022-10-13 19:49:32 +02:00
Martin
d09c47f5ce
correctif(usager.fusion): leve une erreur quand on essaie de fusionner un compte sur lui même
2022-10-13 17:00:20 +02:00
Paul Chavard
d409b6f4ef
feat(dossier): do not save dossier on submit
2022-10-13 14:44:46 +02:00
Paul Chavard
dd38fa4458
refactor(spec): add wait_for_autosave helper
2022-10-13 14:44:46 +02:00
Paul Chavard
03c714e86d
test(flipper): cleanup flipper calls in tests
2022-10-12 14:14:30 +02:00
Paul Chavard
155c71b169
test(flipper): reset flipper flags before each test
2022-10-12 14:14:30 +02:00
Paul Chavard
36e9b27e8c
chore(webdriver): update
2022-10-12 13:17:44 +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
f30798eeec
Merge branch 'feature/add_rna_type_de_champs' of https://github.com/betagouv/demarches-simplifiees.fr into feature/add_rna_type_de_champs
2022-10-11 16:18:35 +02:00
Damien Le Thiec
3acb0fc3cb
Remove test external id
2022-10-11 16:18:15 +02:00
Damien Le Thiec
73f6063c87
Merge branch 'main' into feature/add_rna_type_de_champs
2022-10-11 15:36:46 +02:00
Colin Darie
073656342e
fix(api_address): support Adresse BAN without postcode
...
Des adresses n'ont pas de code postal (dans certains TOM par exemple).
On fallback sur un string vide plutôt que nil pour limiter les effets de bord.
2022-10-11 12:25:12 +02:00
LeSim
1c3990083b
Merge branch 'main' into be_stupid_about_spec_system_logout
2022-10-11 12:08:41 +02:00
simon lehericey
d870d1d848
fix(spec): fix dubious procedure spec
2022-10-11 11:50:41 +02:00
Paul Chavard
a19bf050ef
fix(iban): format iban after validation
2022-10-11 10:43:32 +02:00
Colin Darie
10917af523
style: signin button styled accordingly to UX
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
simon lehericey
7e03f0c825
refactor(dossier_preloader): add load_one api
2022-10-10 12:31:40 +02:00
simon lehericey
5920168077
refactor(dossier_preloader): preload piece_justificative_template
2022-10-10 12:31:40 +02:00
simon lehericey
1f95f68fcc
refactor(dossier_preloader): assign champ.parent
2022-10-10 12:31:40 +02:00
simon lehericey
01f6e5a06b
spec(dossier_preloader): add spec
2022-10-10 12:31:40 +02:00
Martin
c921e6e1ee
fix(ProcedureExportService): downloadable_sorted_batch is scoped by export, no need to re-filter them via downloadablable_sorted_batch otherwise export for supprimes_recemment does not includes dossier.supprimes_recemment
2022-10-10 11:11:21 +02:00
Martin
1f8bf201a2
feat(procedure_serializer): just add an empty string for direction
2022-10-07 18:39:17 +02:00
Martin
6752da40a9
test(procedure.direction): can we drop this column ?
2022-10-07 18:39:17 +02:00
simon lehericey
fa133d03d0
spec(system): try to fix logout
2022-10-07 18:23:41 +02:00
simon lehericey
ceaf8ebbe7
fix: orphan tdc due to reset_draft
2022-10-07 17:44:30 +02:00
krichtof
44018a86de
a procedure without zone is finally valid
2022-10-07 16:59:12 +02:00
Christophe Robillard
272c8cae09
cannot publish a procedure if no zones
2022-10-07 10:48:35 +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
simon lehericey
ba805a7436
fix: invite_mailer previews
2022-10-06 17:43:09 +02:00
simon lehericey
6cba489a54
fix: send_notifications preview
2022-10-06 17:43:09 +02:00
simon lehericey
878958b23b
fix: invite_instructeur preview
2022-10-06 17:43:09 +02:00
simon lehericey
b9ef8c5001
fix: add_instructeur preview
2022-10-06 17:43:09 +02:00
simon lehericey
0e75f9960b
fix: send_dossier_decision preview
2022-10-06 17:43:09 +02:00
simon lehericey
ab0392fb36
fix: avis_mailer preview
2022-10-06 17:43:09 +02:00
simon lehericey
6812b35a3d
chore: remove dead code
2022-10-06 17:43:09 +02:00
simon lehericey
6841e80414
fix: administrateur_mailer preview
2022-10-06 17:43:09 +02:00
Martin
a256dfbaa0
fix(spec): missed a failed spec previously. sorry
2022-10-06 15:34:29 +02:00
mfo
8a3550cda4
Merge pull request #7860 from mfo/US/procedure-duree-up-to-manager
...
feat(procedure.max_duree_conservation_dossiers_dans_ds): make it more flexible
2022-10-06 11:36:50 +02:00
Martin
405a885160
feat(procedure.max_duree_conservation_dossiers_dans_ds): make it more flexible
2022-10-05 17:27:09 +02:00
Damien Le Thiec
abbbef1461
Fix tests
2022-10-05 13:07:39 +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
Paul Chavard
432c4690b5
feat(tags): replace regexp based parser with a parser combinator
2022-10-05 11:25:37 +02:00
Eric Leroy-Terquem
ff2e9f0816
add feature flag
2022-10-05 09:21:08 +02:00
Eric Leroy-Terquem
acd874ccdf
reorder inside categories
2022-10-05 09:21:08 +02:00
Damien Le Thiec
ecd54de854
Extend RNA adapter while keeping depreciated version
2022-10-04 19:59:39 +02:00
Damien Le Thiec
fa1f0fc240
Improve rna champ tests
2022-10-04 17:19:30 +02:00
Martin
91eeb4bf1c
fix(spec.flacky): maybe flacky due to css animation not loved by capy
2022-10-04 15:20:22 +02:00
Martin
54a47fadae
fix(sentry/3422144920): old email using TargetUserLink creates confusing errors
2022-10-04 11:41:32 +02:00
simon lehericey
6a5a82ce06
fix(instructeur dashboard): dossiers filtered on multiple states
2022-10-03 15:18:46 +02:00
Martin
35c556fc89
bug(multiple_drop_down_list): when their is a coma in label, comas is splitted as an item
2022-09-30 12:24:00 +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
Christophe Robillard
da0738c661
unschedule export demarches opendata
2022-09-30 07:26:48 +02:00
simon lehericey
3f0fd506bd
fix(system spec): increase timeout for log out
2022-09-29 17:31:38 +02:00
simon lehericey
7a9c5e8d19
refactor(ujs): turbo use an id for turbo_stream.update id
not a class
2022-09-29 17:04:15 +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
DanteZ5
3826121751
switch from id to class
2022-09-28 17:19:17 +02:00
DanteZ5
7e29fe40f6
fix-ux(issue#7774) : indicateur menu email navbar
2022-09-28 17:19:17 +02:00
Colin Darie
da22c29688
feat(procedure): warn administrator that notice links are not shareable
...
Closes #7681
2022-09-28 17:01:25 +02:00
Colin Darie
6a943ad13f
feat(champ_pj): warn administrators about ephemeral template links
...
Closes #7681
2022-09-28 17:01:25 +02:00
Martin
d7cce3c982
fix(instructeur/procedures#show): Procedure presentation filterable state field is in conflict with projected state field. quick fix, maybe will refactor both to align them
2022-09-28 15:28:51 +02:00
simon lehericey
6b35155bd8
fix condition_controller_spec
2022-09-28 10:06:32 +02:00
simon lehericey
5129fedac4
add a test
2022-09-28 10:06:32 +02:00
simon lehericey
7e1963865e
compatibility from left
2022-09-28 10:06:31 +02:00
simon lehericey
43f926a1de
to_s
2022-09-28 10:06:31 +02:00
simon lehericey
f98d1463a6
compatible_type
2022-09-28 10:06:31 +02:00
simon lehericey
cd2b08e39b
options
2022-09-28 10:06:31 +02:00
simon lehericey
12b6a0d6d6
errors
2022-09-28 10:06:31 +02:00
simon lehericey
70022450cf
type
2022-09-28 10:06:31 +02:00
Martin
17ed80b18a
clean(Champs::Engagement): migrate to Champs::Checkbox, some for TypeDeChamp
2022-09-27 19:09:28 +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
e18dbb976f
fix(graphql/serializer): PersonneMorale#date_creation may be null
...
Ça fix le passage du dossier dans un dossier "terminé" pour un dossier
dont un champ avec SIRET correspond à un établissement sans date de creation
connue.
2022-09-26 18:05:04 +02:00
Christophe Robillard
ddd5f6ece2
make label method name more explict
2022-09-26 16:58:53 +02:00
Christophe Robillard
f846393ec0
make populate_zones an after_party task
2022-09-26 16:58:53 +02:00
Christophe Robillard
240f1b249f
makes the NA label for zone more explicit
2022-09-26 16:58: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
Christophe Robillard
62f19aba8a
get all available zones at specific date
2022-09-26 16:58:53 +02:00
Christophe Robillard
9773977496
know if a zone exist at a specific date
2022-09-26 16:58:53 +02:00
Christophe Robillard
bc5ea8e906
update zones with new government
2022-09-26 16:58:53 +02:00
Christophe Robillard
59cce4203a
get zone label at specific date
2022-09-26 16:58:53 +02:00
Christophe Robillard
a504e82021
add zone label
2022-09-26 16:58:53 +02:00
simon lehericey
bae60339a7
fix: wording
2022-09-26 10:21:15 +02:00
simon lehericey
f53e8608ae
refactor(conditional): error message system
2022-09-26 10:21:15 +02:00
simon lehericey
fcb9b55bc4
feat(conditional): add include operator
2022-09-26 10:21:15 +02:00
Martin
d9432ccd3b
fix(etablissement.as_degraded_mode): backfill missing data via a cron
2022-09-23 15:12:25 +02:00
Damien Le Thiec
bd0df2b60b
Clean rna champ_row
2022-09-22 17:14:05 +02:00
Damien Le Thiec
542c5b518f
Improve and connect RNA Adapter
2022-09-22 17:13:53 +02:00
Colin Darie
6a4a9c8e03
fix(cron/procedure-declarative): don't auto accept a dossier still in degraded mode
2022-09-22 16:26:14 +02:00
Colin Darie
9b929c86ea
Merge pull request #7760 from betagouv/dsfr-dossier-top-form
...
DSFR: convert dossier top form elements
2022-09-21 16:44:51 +02:00
Colin Darie
39322e6dff
feat(instructeurs): warn about acceptation/reject unavailable due to incomplete etablissement
2022-09-21 16:00:59 +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
Colin Darie
e7de19b24d
fix(dossier): avoir final state if etablissement is still in degraded mode
...
Maintenant qu'on autorise un dossier pour entreprise a être créé en mode "dégradé",
(avec établissement incomplet suite à API Entreprise/INSEE down…),
on empêche de l'accepter/refuser/classer sans suite tant qu'on a pas
vérifié son SIRET.
Fix https://sentry.io/organizations/demarches-simplifiees/issues/2839832517/?project=1429550&query=is%3Aunresolved
2022-09-21 16:00:59 +02:00
Damien Le Thiec
2791871c9a
Clean exports tests
2022-09-21 15:56:01 +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
a5e1d8865b
style(france_connect_account): convert notice about FC user to DSFR
2022-09-21 15:47:35 +02:00
Damien Le Thiec
d8afe81034
Setup RNA champ
2022-09-21 15:18:08 +02:00
Damien Le Thiec
606ac48964
Add new RNA Type de champ
2022-09-21 15:17:23 +02:00
Colin Darie
7e1c542807
fix: FranceConnect button was not visible anymore, convert to DSFR
2022-09-21 09:28:54 +02:00
Kara Diaby
3e43597440
tests
2022-09-19 13:34:43 +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
Martin
eae05b0a6f
feat(export.xslx): add code commune to geo_area.label
2022-09-17 08:59:06 +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
Colin Darie
d1c06aa92e
feat(api_entreprise): add service api_up?, connected to their status page
2022-09-15 18:46:53 +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
simon lehericey
c43bf2e5c9
fix(conditional): only parse user input as int if compared with a number
2022-09-09 11:28:32 +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
Paul Chavard
d35ceb7214
fix(champs): finish EditableChampComponent refactor
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
simon lehericey
ac0ac171ad
perf(dossier): remove unused row validation
...
Gain, one request per champ not child
2022-09-07 15:00:40 +02:00
sebastiencarceles
b643660017
'Choix parmi une liste' becomes 'Choix unique'
...
closes #7374
2022-09-06 11:26:30 +02:00
Martin
df3ef23f7e
fix(spec): 1. visit new_user_session_path instead of navigating to it. 2. change way to submit search according to dsfr html. 3. avoid nav without aria label. 4. various lint fixes
2022-09-06 10:09:12 +02:00
Martin
73f94b9635
feat(header): switch to DSFR translate component and dropdown component
2022-09-06 10:09:12 +02:00
Martin
96cdae0dd5
feat(DSFR.header): switch to DSFR header
2022-09-06 10:09:12 +02:00
Martin
549eda6fe3
feat(DSFR.breadcrumb): switch to DSFR breadcrumb style since it is part of new service UI
2022-09-06 10:09:12 +02:00
Colin Darie
3c9b41e233
fix(manager/services): d'ont search in etablissement_adresse (this is not a schema field)
2022-09-06 09:23:52 +02:00
Colin Darie
23fbc9210e
test(graphql): don't perform irrelevant & unmocked APIEntreprise::ServiceJob
...
They would require heavy mocks otherwise
2022-09-06 09:23:52 +02:00
Colin Darie
91c735a219
chore(service): SIRET is required
2022-09-06 09:23:52 +02:00
Colin Darie
9d59a50cd4
chore(manager/services): show etablissement adresse & geopoint
2022-09-06 09:23:52 +02:00
Colin Darie
67cbc61e1e
chore(services): update etablissement adresse & geocode when siret changes
2022-09-06 09:23:52 +02:00
Colin Darie
8762acc0b5
chore(services): fetch etablissement adresse from API Entreprise
2022-09-06 09:23:52 +02:00
Colin Darie
7d39cc6b3e
chore(schema): +services#etablissement_{infos,geopoint}
...
- `etablissement_infos` est une représentation partielle en jsonb
de ce qui est renvoyé par l'API Entreprise.
(On ne conserve que l'adresse pour le moment, utilisée pour le geocodage)
- `etablissement_geopoint` est le point (x,y) issu du géocodage de
l'établissement
2022-09-06 09:23:52 +02:00
Colin Darie
f8cf8aaab7
test(api_entreprise): add missing tests for API Entreprises privileges & adapter
2022-09-06 09:23:52 +02:00
Colin Darie
b75cff2fc3
refactor: API Entreprise instancified, more flexible for various input params
...
En fonction des resources, l'API est appelée :
- dans le contexte d'une Procedure ou non
- avec ou sans token injecté
- avec ou sans siret/siren
- avec ou sans user
2022-09-06 09:23:52 +02:00
Colin Darie
64ce2719ed
feat(services): accept an optional SIRET
...
Closes #7359
2022-09-06 09:23:52 +02:00
Colin Darie
54181bd920
refactor(spec/services): dynamic procedure reference instead of hardcoded id
2022-09-06 09:23:52 +02:00
Colin Darie
54e7a713b4
refactor(spec): service_specs with be_valid syntax
2022-09-06 09:23:52 +02:00
Colin Darie
7f1764fa66
test(support): add contact-admin spec
2022-09-05 17:41:17 +02:00
Colin Darie
be965e4fdd
fix(api_entreprise): don't fail with entreprise without date_creation
2022-09-05 15:52:06 +02:00
Colin Darie
4e3b063b87
feat(carte/export): list geo labels
2022-09-05 11:02:51 +02:00
simon lehericey
d612c39438
fix(admin procedure preview): redirect is procedure invalid
2022-09-05 10:18:33 +02:00
Kara Diaby
a52aeb6fdc
tests
2022-09-02 16:23:27 +02:00
Martin
289b8f78b8
feat(Administrateur::Services#index): rework list of services
2022-08-31 14:56:00 +02:00
Martin
5f2b290407
feat(Procedure.clone): reset subject.duree_conservation_dossiers_dans_ds when procedure.duree_conservation_etendue_par_ds was extended. only extends it on demand otherwise admin could clone old procedure with higher duree_conservation_dossiers_dans_ds
2022-08-31 14:56:00 +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
6e31decc2d
feat(Procedure.clone): stop cloning procedure service which is confusing for some administrateurs
2022-08-31 14:56:00 +02:00
Colin Darie
4ece7c2494
fix(champ): remove null byte before save
...
Les null bytes peuvent être injectés lors de c/c depuis certains documents,
et ne sont pas sauvegardables en base, rendant la sauvegarde d'un dossier impossible.
Closes #7656
https://sentry.io/organizations/demarches-simplifiees/issues/3194932607/activity/?project=1429550&query=is%3Aunresolved
2022-08-31 11:39:34 +02:00
Martin
c230db1ec4
bug(brouillon.edit.form): when their is a type de champs repetition having a child being mandatory. if the condition is not met, should be able to submit form
2022-08-24 15:18:05 +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
e35da17ce8
bug(instructeurs/archives#create): month should not be nil
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
Martin
dc524cf615
fix(spec): broken spec due to TDD and refacto on former code
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
simon lehericey
6b5f38ce74
spec
2022-08-11 14:03:04 +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
simon lehericey
650c36e3e2
feat(conditional): add not eq operator
2022-08-10 11:59:09 +02:00
simon lehericey
00d0813292
ensure the mandatory star hint is always displayed
2022-08-09 10:29:41 +02:00
simon lehericey
898badb579
a champ is mandatory when visible with a mandatory tdc
2022-08-09 10:25:47 +02:00
simon lehericey
ec40836589
spec
2022-08-08 18:02:28 +02:00
simon lehericey
0b90c81c3a
wrap existing spec in specific context
2022-08-08 18:02:28 +02:00
Christophe Robillard
e087582f57
Can get dossier vide if procedure is closed
2022-08-05 16:00:08 +02:00
Paul Chavard
a24885c2ee
feat(champ): can condition on other option
2022-08-04 15:28:54 +02:00
Paul Chavard
bbca7344e5
fix(conditional): mandatory champs inside hidden repetition should not be validated
2022-08-04 14:48:40 +02:00
Paul Chavard
65e96002b1
refactor(spec): raise if old style factory is used
2022-08-04 12:10:32 +02:00
Paul Chavard
2d7803cd48
refactor(spec): use new procedure.types_de_champ factory
2022-08-04 12:10:32 +02:00
Paul Chavard
5e890cdb36
fix(factory): fix options handling on drop_down_list
2022-08-04 11:37:56 +02:00
Colin Darie
1601a18c34
test(combobox): increase wait time because component may be slow to render
...
Fix erreur type 'Unable to find css "li[role=\"option\"]'
Ce problème peut-être reproduit en local, en diminuant le wait à 0.001 ;
avec une plus grande valuer il disparaît.
2022-08-03 16:15:40 +02:00
Colin Darie
9ebcbbbd67
test(brouillon_spec): fix random errors due to db champs not yet updated
2022-08-03 16:15:40 +02:00
Colin Darie
e8b088c2c5
test(brouillon_spec): remove unecessary manual sleep, improve "brouillon" feedback testing
2022-08-03 16:15:39 +02:00
Colin Darie
81a9258c8a
test(brouillon_spec): use capybara wait matchers
2022-08-03 16:15:39 +02:00
Colin Darie
983815bfe8
test(brouillon_spec): fix frequent dossier_link error by using an existing dossier
2022-08-03 16:15:39 +02:00
Colin Darie
9e9b429100
test: fix frequent too many open files with webmock & capybara
2022-08-03 16:15:39 +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
8dc966feb4
fix(dossier_transfer): requires an actual email
...
Closes #7621
2022-08-03 11:44:54 +02:00
Paul Chavard
f48048179c
fix(conditional): enable conditional per procedure
2022-08-03 09:16:10 +02:00
Paul Chavard
a88390c6d3
refactor(types_de_champ): use new types_de_champ factory
2022-08-02 16:21:33 +02:00
Paul Chavard
21d47fa875
test(factory): spec new procedure.types_de_champ factory
2022-08-02 16:21:33 +02:00
Paul Chavard
ee9851091f
test(factory): add a new way to build/create types_de_champ
2022-08-02 16:21:33 +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
Kara Diaby
058d6baae6
tests
2022-07-29 11:17:22 +02:00
Paul Chavard
31d80d80bd
fix(dossier): prevent users from removing mandatory fiels after submission
2022-07-28 11:19:47 +02:00
Colin Darie
197fa54ea4
fix(archives): purge stuck pending archives
...
Cf 0cb096b3d6440a4da05ca2902ed6fa72a93e6579
2022-07-27 15:26:59 +02:00
Colin Darie
f1957e51f8
fix(exports): purge stuck (pending) exports, not generated or failed
...
Avec l'autre PR, ça reproduit le comportement d'avant, c'est à dire
que quoiqu'il arrive un export est purgé :
- soit 16h après sa génération (on a 16h pour le télécharger)
- soit 12h après sa création, et qu'il est bloqué
Auparavant, tous les exports étaient purgés au bout de 3h quelle que soit
le statut.
2022-07-27 15:26:59 +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
Paul Chavard
8cba80116e
fix(types_de_champ): fix exception on validation errors
2022-07-26 18:17:48 +02:00
Colin Darie
6845b2ed08
fix(export): fix PurgeStaledExportsJob regression with stale
scope
...
cc #7547
2022-07-26 14:26:22 +02:00
simon lehericey
369141c7f7
Fix(procedure library): replace infinite list by a basic search
2022-07-26 12:38:05 +02:00
Paul Chavard
4276745338
fix(autosave): morph instead of replace to preserve controller instances
2022-07-26 11:15:10 +02:00
Colin Darie
11cd73b4ac
feat(export/csv): list etablisement entreprise_etat_administratif
2022-07-25 10:58:02 +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
Colin Darie
f05e9331a7
chore(entreprises): save etat_administratif from API
2022-07-25 10:58:02 +02:00