Colin Darie
95ceee38c7
chore(form): don't try to put invalid group classes for non fillable inputs
2023-09-28 18:33:28 +02:00
Colin Darie
60882e0844
chore(form): respect dsfr fr-fieldset and elements expected markup
2023-09-28 18:33:26 +02:00
Martin
d8220395c8
amelioration(usagers.dossiers.erreurs): ETQ usager, lorsque je soumets un dossier avec des erreurs, le format des erreurs est au format du DSFR
...
Update app/components/dossiers/errors_full_messages.rb
Update app/components/dossiers/errors_full_messages/errors_full_messages.html.haml
Co-authored-by: Colin Darie <colin@darie.eu>
2023-09-28 17:50:47 +02:00
Colin Darie
0920b97e4d
fix(admin/archives): fix markup axe issue
2023-09-28 15:34:09 +02:00
Colin Darie
75bf30bed2
feat(champ-numbers): format value in input to a backend compatible value
2023-09-28 15:26:35 +02:00
Colin Darie
123114be81
fix(conditional): don't .to_i/to_f => 0 an invalid number
2023-09-28 15:26:34 +02:00
Colin Darie
aac7de208f
chore(champs-number): render as text input to validate them when invalid
...
Les input=number n'ont pas de value lorsque la valeur saisie n'est pas un
nombre. Par conséquent dans ces cas là, nous ne pouvions faire remonter
au backend pour validation / enregistrement, et il n'y avait aucun
feedback signalement l'erreur à l'usager.
On les convertit en inputs texte, avec les adaptations nécessaires
pour montrer le pavé numérique sur mobile, et un style correct.
2023-09-28 15:26:33 +02:00
Colin Darie
d4198869fb
chore(exports): dropdown menu re-uses the same pending export or create a fresh one
...
Pour permettre d'avoir des données fraiches dans un export tout
en conservant l'historique des exports,
la demande d'export depuis le menu créé toujours un nouvel export sauf:
- si un autre export identique est déjà en préparation
- si un autre export identique s'est terminé il y a moins de 5 minutes
Co-Authored-By: Lisa Durand <lisa.c.durand@gmail.com>
2023-09-28 15:23:31 +02:00
Colin Darie
d9687f7418
chore(exports): minor wording improvements and clarifications
2023-09-28 12:35:26 +02:00
Colin Darie
ec46faf690
fix(exports): don't duplicate exports when belonging to multiple groupe instructeurs
2023-09-28 12:35:24 +02:00
mfo
00a6d02d21
fix(exports): block exports page to super admins so they can't download exports
2023-09-28 12:35:23 +02:00
Colin Darie
2283c7eba7
test(exports): minimal coverage for ExportLinkComponent
2023-09-28 12:35:22 +02:00
Colin Darie
daa8eac9cc
style(exports): download link instead of button
2023-09-28 12:35:21 +02:00
Colin Darie
307ba68970
feat(exports): humanize status name
2023-09-28 12:35:20 +02:00
Colin Darie
3af93735a3
feat(exports): turbo poll for pending exports
2023-09-28 12:35:19 +02:00
Colin Darie
ed057737a5
feat(exports): name the dossiers count
2023-09-28 12:35:18 +02:00
Lisa Durand
c7cd5d2189
improve UX for export page
2023-09-28 12:35:16 +02:00
Lisa Durand
58a143b2c7
improve wording and display for export page
2023-09-28 12:35:15 +02:00
Lisa Durand
282df1b44b
add link to export page in flash message for instructeur
2023-09-28 12:35:14 +02:00
Colin Darie
a867c9a998
feat(instructeurs): notification badge when a new export has been generated
...
Co-Authored-By: Lisa Durand <lisa.c.durand@gmail.com>
2023-09-28 12:35:13 +02:00
Colin Darie
99f5b39dbb
fix(exports): force regenerate export with same statut filter
...
Co-Authored-By: Lisa Durand <lisa.c.durand@gmail.com>
2023-09-28 12:35:12 +02:00
Colin Darie
edb030bb4c
refactor(exports): regenerating exports redirect (back) to exports page
...
Co-Authored-By: Lisa Durand <lisa.c.durand@gmail.com>
2023-09-28 12:35:11 +02:00
Colin Darie
ca0b5c9cb9
refactor(exports): destroy errorable on force to ensure we have fresh export
...
Il semblerait que le destroy échoue parfois silencieusement pour une raison
inconnue, ce qui empêche le create_or_find_export de se dérouler
à cause de la contrainte d'unicité (il rollback), ce qui conduit ensuite
à un comportement inattendu: re-téléchargement de l'ancienne archive
alors qu'on voulait la regénérer.
Co-Authored-By: Lisa Durand <lisa.c.durand@gmail.com>
2023-09-28 12:35:09 +02:00
Colin Darie
fc66f4b05d
refactor(exports): drop useless exports relation dependency for exports dropdown
...
Since the dropdown does not list download links anymore,
we don't have to pass them a dynamic exports list.
Co-Authored-By: Lisa Durand <lisa.c.durand@gmail.com>
2023-09-28 12:35:08 +02:00
Colin Darie
82dd05c189
chore(exports): finders by groupe instructeurs compatible across exports components
...
Co-Authored-By: Lisa Durand <lisa.c.durand@gmail.com>
2023-09-28 12:35:07 +02:00
Lisa Durand
5a571a3535
create export page to list all the exports and remove links from the dropdown
2023-09-28 12:35:04 +02:00
simon lehericey
23b68fa5aa
pj_migration: destroy blob if not found
2023-09-28 10:41:33 +02:00
Lisa Durand
a559bf54eb
Merge pull request #9517 from demarches-simplifiees/change-tabs-for-instructeur-dashboard-ldu
...
[instructeur] Mettre en avant les démarches closes avec des dossiers à traiter
2023-09-28 07:32:07 +00:00
Lisa Durand
db4c8619a9
Update app/views/instructeurs/procedures/index.html.haml
...
Co-authored-by: LeSim <mail@simon.lehericey.net>
2023-09-27 16:51:44 +02:00
Lisa Durand
91018d8f8f
Update app/controllers/instructeurs/procedures_controller.rb
...
Co-authored-by: LeSim <mail@simon.lehericey.net>
2023-09-27 16:51:07 +02:00
Lisa Durand
46e492496e
Update app/controllers/instructeurs/procedures_controller.rb
...
Co-authored-by: LeSim <mail@simon.lehericey.net>
2023-09-27 16:50:55 +02:00
Colin Darie
2cc2c9f77d
Merge pull request #9520 from demarches-simplifiees/filter-instructeur-exclude-en-attente-ldu
...
[instructeur] je veux pouvoir filtrer les dossiers "en construction" sans avoir ceux "en attente de corrections"
2023-09-27 11:57:35 +00:00
krichtof
63ca98b5b6
Merge pull request #9529 from demarches-simplifiees/fix-contact-information
...
Fix contact information
2023-09-27 11:33:41 +00:00
Christophe Robillard
2a39cfead7
fix: display contact info on footer of notif mail
2023-09-27 12:49:24 +02:00
Christophe Robillard
6035a16ecc
fix: can display contact_info nom on footer
2023-09-27 12:09:00 +02:00
Eric Leroy-Terquem
774e375f44
feat(conditional): can condition on departement champ value
2023-09-27 10:22:12 +02:00
Lisa Durand
129230af88
exclude dossiers with pending correction when instructeur filters on 'en_construction'
2023-09-26 16:36:39 +02:00
krichtof
da62a5ec79
Merge pull request #9518 from demarches-simplifiees/9497-description-champs
...
ETQ usager, je suis aidé à la saisie par une description des champs
2023-09-26 13:58:02 +00:00
Christophe Robillard
abad463bb1
remove placeholder for decimal number component
2023-09-25 18:17:04 +02:00
Christophe Robillard
168616b8c6
remove placeholder for phone component
2023-09-25 18:17:04 +02:00
Christophe Robillard
18e5c32363
remove placehoder for rna component
2023-09-25 18:17:04 +02:00
Christophe Robillard
8bacb30e36
remove placeholder for iban component
2023-09-25 18:17:04 +02:00
Christophe Robillard
bd3f7eeb38
remove placeholder for siret component
2023-09-25 18:17:04 +02:00
Christophe Robillard
ae08f044ed
remove placeholder for email component
2023-09-25 18:17:04 +02:00
Christophe Robillard
3ff7bc7234
display max size and format as hint
2023-09-25 18:17:04 +02:00
Christophe Robillard
e972514ec6
remove useless blank line
2023-09-25 18:17:04 +02:00
Christophe Robillard
9c2c378588
use model locales for titre identite hint
2023-09-25 18:17:04 +02:00
Lisa Durand
a4c79e953b
change 'published' tabs by 'en cours' to highlight closed procedure with 'en cours' files
2023-09-25 15:34:37 +02:00
krichtof
f019f1e316
Merge pull request #9345 from adullact/feature-ouidou/existing_procedure_hidden_as_template
...
ETQ superadmin, je peux masquer une démarche de la liste des démarches proposées à la création
2023-09-25 08:46:31 +00:00
Eric Leroy-Terquem
1060aadff7
Merge pull request #9504 from demarches-simplifiees/do-not-route-cloned-procedures-if-admin-is-different
...
Correction : désactive le routage des procédures clonées si l'admin n'est pas aussi admin de la procédure parente
2023-09-22 09:10:42 +00:00
Colin Darie
da06295191
chore(attestation): improve groupe instructeurs signature wording
...
Co-Authored-By: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2023-09-22 10:24:16 +02:00
Colin Darie
d231ec35f4
refactor(attestation): groupe instructeur add signature shared
...
Co-Authored-By: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2023-09-22 10:24:16 +02:00
Colin Darie
4c7664d61c
fix(admin): missing siret & service alert don't override action alert
...
Co-Authored-By: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2023-09-22 10:24:16 +02:00
Colin Darie
934e86a465
refactor(attestation): groupe instructeur signature shared
...
Co-Authored-By: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2023-09-22 10:24:16 +02:00
Christophe Robillard
c02e6f2a77
feat(groupe-instructeur): instructeur can add signature in attestation
2023-09-22 10:24:16 +02:00
Colin Darie
ad10335888
feat(groupe-instructeur): admin can preview signature in attestation
...
Co-Authored-By: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2023-09-22 10:24:16 +02:00
Colin Darie
3e1678c17a
chore(attachments): always render allowed formats when list is short
...
Co-Authored-By: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2023-09-22 10:24:16 +02:00
Colin Darie
44578ba65c
fix(attachment): keep direct_upload behavior in poll url
...
Co-Authored-By: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2023-09-22 10:24:16 +02:00
Christophe Robillard
c121a8b2dc
admin can add groupe_instructeur signature
2023-09-22 10:24:16 +02:00
Christophe Robillard
5482863eea
add signature to groupe_instructeur
2023-09-22 10:24:16 +02:00
Christophe Robillard
7529294845
fix: uninterlace only interlaced png
2023-09-22 10:24:16 +02:00
Christophe Robillard
46edaed6bc
extract uninterlace_png method
2023-09-22 10:24:16 +02:00
seb-by-ouidou
d29bbf6d4f
Merge branch 'main' into feature-ouidou/existing_procedure_hidden_as_template
2023-09-21 15:53:38 +02:00
seb-by-ouidou
5b9423bab3
fix: remove hidden_at_as_template from filter
2023-09-21 13:50:23 +00:00
Eric Leroy-Terquem
70cc8dac4c
fix(procedure): do not route cloned procedures from different admin
2023-09-21 15:24:17 +02:00
Eric Leroy-Terquem
5e4d96654f
fix(dossier clone): always rebase cloned dossiers
2023-09-21 13:50:40 +02:00
Martin
04fe3ad2b6
correctif(repetition.commune): ETQ usager, lorsque j'ai plus d'une repetition ayant un champ commune, les ids des options des input[type=radio] des communes partageant le meme code postal ne sont pas uniques, on boucle sur la 1ere repetition
2023-09-20 17:56:17 +02:00
simon lehericey
4a17dec87b
refactor procedure_controller
2023-09-20 14:11:10 +02:00
simon lehericey
40a15b9be4
refactor dossier_controller
2023-09-20 14:11:10 +02:00
simon lehericey
c248f96f31
fixup base controller
2023-09-20 14:11:10 +02:00
simon lehericey
118242dbd2
refactor api_controller
2023-09-20 14:11:09 +02:00
simon lehericey
2664c3671f
api_tokens_controller: only use turbo
2023-09-20 14:11:09 +02:00
simon lehericey
954c5334ef
use new procedure in view
2023-09-20 14:11:09 +02:00
simon lehericey
9047c2a7de
api_tokens_controller: extract become full_access
2023-09-20 14:11:09 +02:00
simon lehericey
9b440b6c44
api_tokens_controller: extract disallow_procedure
2023-09-20 14:11:09 +02:00
simon lehericey
2a109d3aa4
api_tokens_controller: use before_action set_api_token
2023-09-20 14:11:09 +02:00
simon lehericey
01efae960b
fix component
2023-09-20 14:11:09 +02:00
simon lehericey
05a8fd8ee1
refactor of api_token
2023-09-20 14:11:09 +02:00
simon lehericey
24fd12ed70
explicit about different contexts
2023-09-20 14:11:09 +02:00
simon lehericey
f434c6a6ad
refactor: try base controller
2023-09-20 14:11:09 +02:00
simon lehericey
40ed59a231
rename find_and_verify => authenticate
2023-09-20 14:11:09 +02:00
simon lehericey
87933d3567
introduce token bearer
2023-09-20 14:11:09 +02:00
simon lehericey
0b03ba4d68
remove v1/v2 api token logic
2023-09-20 14:11:09 +02:00
Lisa Durand
83957a41cd
add min height for table with max 2 files to display dropdown
2023-09-19 17:50:38 +02:00
seb-by-ouidou
0d2cd0fe5d
feat(procedure): hide as template
2023-09-19 11:21:27 +00:00
Paul Chavard
b1dc376d1d
fix(champs-editor): add dsfr classes to select elements
2023-09-19 11:09:29 +02:00
Paul Chavard
cf3a35724c
fix(champs-editor): remove unnecessary background color
2023-09-19 11:09:09 +02:00
LeSim
e6f8400cfd
Merge pull request #9477 from demarches-simplifiees/can-route-from-epci-champ
...
ETQ admin je peux router par département depuis le champ EPCI
2023-09-19 08:21:26 +00:00
LeSim
29c52d191e
Merge pull request #9487 from mfo/US/fix-expert-invitation
...
correctif(expert.invite-autre-expert): ETQ expert, je ne pouvais pas demander d'autres avis d'expert
2023-09-19 08:16:53 +00:00
LeSim
3f9f7d59a2
Merge pull request #9489 from colinux/form-identity-siret-dsfr
...
ETQ usager le form pour renseigner son SIRET passe au DSFR et est dispo en anglais
2023-09-19 08:14:03 +00:00
Colin Darie
bccad19e13
chore(siret): translate identity siret form
2023-09-18 19:11:27 +02:00
mfo
25d7333ac3
Update app/controllers/experts/avis_controller.rb
...
Co-authored-by: Colin Darie <colin@darie.eu>
2023-09-18 16:55:07 +02:00
Colin Darie
8358fec884
fix(prefill): don't create Individual for non-individual procedures
...
Closes #9486
2023-09-18 16:45:02 +02:00
Martin
aa10f23b43
correctif(expert.invite-autre-expert): ETQ expert, je ne pouvais pas demander d'autres avis d'expert
2023-09-18 16:23:42 +02:00
Colin Darie
3be39f5a58
style(identite): passe le form d'identité siret au DSFR
2023-09-18 15:05:31 +02:00
Paul Chavard
ae2d9bba47
Merge pull request #9479 from tchak/graphql-fix-pending-deleted-dossiers-sort
...
fix(graphql): improuve sort for pending deleted dossiers
2023-09-18 09:17:26 +00:00
mfo
2e2782c8b0
Merge pull request #9478 from mfo/US/fix-manager-dossier-show
...
correctif(manager#dossiers/show): ETQ superadmin, l'affichage d'un dossier pouvait timeouter car non préloadé
2023-09-18 08:36:54 +00:00
Martin
d203ab2321
amelioration(mail.invitation_instructeur): ajout d'une mention à AgentConnect ds le mail d'invitation des instructeurs
...
Update app/views/agent_connect/agent/index.html.haml
Co-authored-by: Colin Darie <colin@darie.eu>
Update app/views/agent_connect/agent/index.html.haml
Co-authored-by: Colin Darie <colin@darie.eu>
Update app/views/agent_connect/agent/index.html.haml
Co-authored-by: Colin Darie <colin@darie.eu>
Update config/locales/views/agent_connect/agent/fr.yml
Co-authored-by: Colin Darie <colin@darie.eu>
2023-09-18 09:48:41 +02:00
Eric Leroy-Terquem
aac9182ce4
wording(routing): update routing configuration notice
2023-09-18 09:32:07 +02:00
Eric Leroy-Terquem
967139ec88
feat(routing): make routing engine work with epci champ
2023-09-18 09:32:07 +02:00
Eric Leroy-Terquem
588143f9fd
feat(routing): can create simple routing from epci tdc
2023-09-18 09:32:07 +02:00
Eric Leroy-Terquem
60e5abd266
feat(routing): add departements options to value tag if routing by epci
2023-09-18 09:32:07 +02:00
Eric Leroy-Terquem
cf7c7d9761
feat(routing): add epci to routable_types_de_champ
2023-09-18 09:32:07 +02:00
Martin
876e5ef231
amelioration(design): utilise le modele du dsfr pour avoir les boutons en pleinne largueur sur les page de connexion/creation de compte
2023-09-15 17:42:27 +02:00
Martin
038b4cd10b
amelioration(agent_connect): ameliore le design pour fitter aux maquettes ainsi que change le message comme quoi la feature est dispo pour tous
2023-09-15 17:42:27 +02:00
Paul Chavard
21b9a491cb
fix(graphql): improuve sort for pending deleted dossiers
2023-09-15 16:15:43 +02:00
Paul Chavard
fb917a221d
feat(combobox): use ComboboxComponent on drop_down_list champs
2023-09-15 14:49:13 +02:00
Paul Chavard
85024174d4
feat(combobox): implement ComboboxComponent
2023-09-15 14:48:25 +02:00
Paul Chavard
bea8cba6ce
feat(combobox): implement ComboboxController
2023-09-15 14:48:25 +02:00
Paul Chavard
1a531d018f
feat(combobox): implement ComboboxUI
2023-09-15 14:48:25 +02:00
Paul Chavard
628bef562b
feat(combobox): implement Combobox
2023-09-15 14:48:25 +02:00
Martin
720056e844
correctif(manager#dossiers/show): preload un dossier sur le manager
2023-09-15 11:34:20 +02:00
Eric Leroy-Terquem
0454d2066e
Merge pull request #9474 from demarches-simplifiees/can-route-from-commune-champ
...
ETQ admin je peux router par département depuis un type de champ communes
2023-09-15 08:18:24 +00:00
Eric Leroy-Terquem
956048ffea
refactor(type de champ): extract routable? method
2023-09-15 10:02:14 +02:00
Lisa Durand
7311bcebb9
Merge pull request #9363 from demarches-simplifiees/dashboard-usager/make-search-work-with-procedure-filter
...
[refonte usager] Tableau de bord - rendre recherche complémentaire avec filtre par procédure
2023-09-13 12:55:42 +00:00
Colin Darie
f28739d648
Merge pull request #9372 from colinux/svr
...
Admin: permet l'activation du SVR
2023-09-13 12:08:39 +00:00
Colin Darie
50a5e363bd
fix(pdf): enlève des espaces insécables qui étaient affichés comme "?" dans le pdf
2023-09-13 13:50:27 +02:00
Colin Darie
680919a68f
feat(svr): instructor filters with svr wording specific
2023-09-13 13:50:26 +02:00
Colin Darie
d7a9bee63e
feat(svr): instructor menu actions with svr actions
2023-09-13 13:50:25 +02:00
Colin Darie
d7297067af
fix(sva): examples dates in documentation
2023-09-13 13:50:24 +02:00
Colin Darie
e8000adecf
feat(svr): refuses automatically a dossier
2023-09-13 13:50:23 +02:00
Colin Darie
69e673e47e
feat(svr): enablable from configuration
2023-09-13 13:50:22 +02:00
Eric Leroy-Terquem
632314bc0e
wording(routing): update routing configuration notice
2023-09-13 10:45:21 +02:00
Eric Leroy-Terquem
46ff36c2bc
feat(routing): make routing engine work with commune champ
2023-09-13 10:45:21 +02:00
Eric Leroy-Terquem
370d853378
feat(routing): can create simple routing from communes tdc
2023-09-13 10:45:21 +02:00
Eric Leroy-Terquem
d1cf60585a
feat(routing): add departements options to value tag if routing by communes
2023-09-13 10:45:20 +02:00
Eric Leroy-Terquem
50d0587a81
feat(routing): add communes to routable_types_de_champ
2023-09-13 10:45:20 +02:00
Eric Leroy-Terquem
97bfdc774d
wording(routing): update routing configuration notice
2023-09-13 10:22:01 +02:00
Eric Leroy-Terquem
d37fb90b2f
feat(routing): make routing engine work with region champ
2023-09-13 10:22:00 +02:00
Eric Leroy-Terquem
e255bb9929
refactor(routing): extract methods to create groups from tdcs
2023-09-13 10:22:00 +02:00
Eric Leroy-Terquem
c2beca7d6d
feat(routing): can create simple routing from regions tdc
2023-09-13 10:22:00 +02:00
Eric Leroy-Terquem
e9760e5aa3
feat(routing): add regions options to value tag
2023-09-13 10:22:00 +02:00
Eric Leroy-Terquem
5afaa458e2
feat(routing): add regions to routable_type_de_champ
2023-09-13 10:22:00 +02:00
Colin Darie
c9bde31ef2
Merge pull request #9470 from colinux/improve-watermark
...
ETQ instructeur: nouveau filigrane des titres d'identité qui améliore la lisibilité des images
2023-09-12 12:09:58 +00:00
Colin Darie
201b31bf36
refactor(watermark): small text based watermarked to increase document visibility
2023-09-12 13:04:31 +02:00
LeSim
fdb30b9546
Merge pull request #9471 from demarches-simplifiees/feat/9467
...
ETQ Instructeur, je souhaite avoir un autocomplete lorsque je demande l'avis aux experts
2023-09-12 07:51:22 +00:00
LeSim
31db8429b3
Merge pull request #9475 from colinux/favicons-updates
...
Favicons: ajout de l'apple touch icon + mise à jour avec vraies couleurs de la charte graphique
2023-09-12 07:45:54 +00:00
LeSim
fc4d59ec7b
Merge pull request #9469 from demarches-simplifiees/fix_doomed_archive_creation_job
...
fix(archive): ne réessaye de construire une archive périmée
2023-09-12 07:43:19 +00:00
Colin Darie
6e5c466e57
style: update favicons with chart color, apple touch icon and shortcuts names
2023-09-11 17:48:12 +02:00
Kara Diaby
7472b17009
Autocomplete pour instructeurs qui veulent affecter un expert au dossier, avec tous les experts sollicités sur la démarche
2023-09-11 09:13:04 +00:00
Lisa Durand
2f5310a470
Merge pull request #9457 from demarches-simplifiees/create-export-page-ldu
...
Reorganisation des boutons sur l'interface instructeur
2023-09-11 07:59:20 +00:00
krichtof
5aabce488b
Merge pull request #9425 from demarches-simplifiees/9356-service-gi
...
ETQ Usager, je veux voir dans mon dossier les informations de contact de mon groupe instructeur
2023-09-11 07:38:34 +00:00
Christophe Robillard
5b9fbf40ed
fix: admin is redirected to admin groupe instructeur page
...
after creating or editing groupe instructeur service
2023-09-11 08:58:04 +02:00
Christophe Robillard
c5d02cdd6a
display telephone and horaires of service
...
even if the dossier is not in brouillon state
2023-09-11 08:58:04 +02:00
Christophe Robillard
587960cfd9
clone groupe instructeur service
...
if admin owns original procedure
2023-09-11 08:58:04 +02:00
Christophe Robillard
fa70cffa31
display groupe instructeur service for admin
2023-09-11 08:58:04 +02:00
Christophe Robillard
af195d9158
display for user groupe instructeur service when available
2023-09-11 08:58:04 +02:00
Christophe Robillard
e9ff4292fa
instructeur can destroy groupe instructeur service
2023-09-11 08:58:04 +02:00
Christophe Robillard
41b2c9355b
instructeur can update contact information for groupe instructeur
2023-09-11 08:58:04 +02:00
Christophe Robillard
ba0d3fa678
instructeur can create contact information for groupe instructeur
2023-09-11 08:58:03 +02:00