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
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
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
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