Commit graph

8152 commits

Author SHA1 Message Date
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
Kara Diaby
83efa7eab3 fix title order 2022-09-23 08:41:25 +02:00
Kara Diaby
611cc23920 layout 2022-09-23 08:41:25 +02:00
mfo
7bd288e04a
Merge pull request #7796 from betagouv/fix-cron-declarative-procedure-incomplete-etablissement
fix(cron/procedure-declarative): don't auto accept a dossier still in degraded mode
2022-09-22 18:26:36 +02:00
Martin
daeab50321 fix(data): backfill etablissement as degraded mode 2022-09-22 18:02:47 +02:00
Damien Le Thiec
00ccca88ac Update graphQL Schema 2022-09-22 17:30:51 +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
Colin Darie
53cd041060 refactor(dsfr): components import order accordingly to their README 2022-09-21 15:47:35 +02:00
Colin Darie
55fd4307a1 refactor(header/notice): convert JS to stimulus 2022-09-21 15:47:35 +02:00
Colin Darie
4d5f03b99c style(header): remove fr-header__with-notice-info when notice is closed 2022-09-21 15:47:35 +02:00
Colin Darie
7e6624753a refactor(dossier/pdf): use new france_connect_informations helper 2022-09-21 15:47:35 +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
ab82128585 feat(dsfr): new NoticeComponent 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
80daf3ede1 style(dsfr): dossier form header + notice link 2022-09-21 15:47:35 +02:00
Colin Darie
13beb2bfa5 fix: AgentConnect button visibility 2022-09-21 15:34:31 +02:00
Paul Chavard
16bba911ba Revert "Merge pull request #7637 from tchak/chore-add-missing-foreign-keys"
This reverts commit b21ee46dc2, reversing
changes made to dd85b5c35c.
2022-09-21 15:20:42 +02:00
Damien Le Thiec
2141dd501e Create RNA component 2022-09-21 15:18:23 +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
Colin Darie
cffa8d0b69 style(dsfr/link): doc for explicitly disabling href underlined enabled by dsfr 2022-09-21 09:28:54 +02:00
Paul Chavard
84b9644bcd fix(db): add missing foreign keys 2022-09-20 15:16:52 +02:00
Kara Diaby
ba58558146 fix accessibiliy problems 2022-09-19 13:34:43 +02:00
Kara Diaby
2c4a8e81ba footer layout 2022-09-19 13:34:43 +02:00
Kara Diaby
f3549a7a4d Modify CSS overide and import footer from DSFR 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
simon lehericey
c7d54fc750 feat(champ siret): display an acknowledgment if siret exist 2022-09-19 11:50:33 +02:00
Martin
eae05b0a6f feat(export.xslx): add code commune to geo_area.label 2022-09-17 08:59:06 +02:00
simon lehericey
0f318a1f7f feat(api_entreprise): display partial information when degraded_mode 2022-09-16 14:43:18 +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
3cd02ceae3
fix(etablissement): improve annuaire_link, with SIRET & as search
Dans certaines circonstances le SIREN pouvait être vide alors qu'on a
toujours le SIRET. Aussi, on se base sur la recherhce qui redirige vers
le bon namespace car il n'y a pas forcément que des entreprises : certaines
sont listées sous "etablissement".
2022-09-16 10:43:59 +02:00
Colin Darie
2bacd175df
feat(dsfr): import icons sets 2022-09-16 10:43:59 +02:00
Colin Darie
46b69da396
style(dsfr/callout): more theming for callout component 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
Martin
f47f74fac7 fix(typo): views/administrateurs/_groups_header.haml 2022-09-12 10:26:20 +02:00
mfo
cdf9fe6099
Merge pull request #7752 from mfo/helpcout/1988749
fix(upload.custom-types): army has a custom format for crypted zip. not recognized as an application/octet-stream by the browser. html5[accept] attributes allows to use extensions. So we allow this extension
2022-09-12 10:23:37 +02:00
Martin
67856c2f13 fix(upload.custom-types): army has a custom format for crypted zip. not recognized as an application/octet-stream by the browser. html5[accpet] attributes allows to use extensions. So we allow this extension 2022-09-09 15:54:13 +02:00
Martin
f08d4e9dc0 fix(breadcrumb): extends breadcrumb libelle truncation from 4 to 10 words 2022-09-09 13:08:24 +02:00
mfo
062477dede
Merge pull request #7750 from betagouv/fix_cursor_on_textarea
fix(style): applique un cursor text au textarea
2022-09-09 12:17:35 +02:00
simon lehericey
7449551d3f fix(style): set cursor text on textarea 2022-09-09 12:09:31 +02:00
Martin
93e3f5877e fix(champ_label_component): add missing helpers 2022-09-09 12:02:04 +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
simon lehericey
478a7e68ab refactor(logic): reuse compatible_type 2022-09-09 10:55:42 +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
Colin Darie
e744c9d575
fix(home): signin button should not open on new window (regression) 2022-09-07 19:14:55 +02:00
Colin Darie
b8885140a4
fix(dsfr): checkbox/radio visibility on old firefox
Firefox < 80 ne supporte pas `appearance: auto` injecté par le DSFR,
ce qui rend les checkbox & radio transparentes (invisibles).
2022-09-07 19:14:55 +02:00
simon lehericey
4cd0261099 remove new header baseline 2022-09-07 18:04:25 +02:00
Colin Darie
c927f2c250 refactor(dsfr/card): rename CardComponent => CardVerticalComponent 2022-09-07 17:56:19 +02:00
Colin Darie
e0a15e9821 chore(patron): add Dsfr::CardComponent, but still media query issue 2022-09-07 17:56:19 +02:00
Colin Darie
5f08df7561 refactor(dsfr/button): remove useless & verbose Dsfr::ButtonComponent, in favor of good link_to / f.submit 2022-09-07 17:56:19 +02:00
Colin Darie
5f760585ad refactor(dsfr): CardComponent with footer_buttons slot 2022-09-07 17:56:19 +02:00
Colin Darie
b769def337 refactor(landings): with DSFR button & card components 2022-09-07 17:56:19 +02:00
Colin Darie
0e28a3870a refactor(dsfr/button_component): more modular & signature more like link_to 2022-09-07 17:56:19 +02:00
Colin Darie
abcfc4a64a fix(home/administration): button hover visibility since dsfr + bottom cards 2022-09-07 17:56:19 +02:00
Colin Darie
b4fc46ba32 fix(home): buttons hover visibility since dsfr 2022-09-07 17:56:19 +02:00
Martin
f674f6981b feat(DSFR.ie11): enable legacy mode with our own packaging system 2022-09-07 17:41:56 +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
Paul Chavard
c05bc61c99 fix(revisions): improuve changes information display 2022-09-07 13:52:44 +02:00
sebastiencarceles
c203a7a3fd remove the confusing help ('nom@site.com')
closes #7727
2022-09-07 08:04:26 +02:00
sebastiencarceles
b643660017 'Choix parmi une liste' becomes 'Choix unique'
closes #7374
2022-09-06 11:26:30 +02:00
Martin
abbef510c6 fix(breadcrumb): update turbo usage with new breadcrumb "api" 2022-09-06 10:09:12 +02:00
Martin
ecbe51f928 feat(a11y): avoid wrong heading level 2022-09-06 10:09:12 +02:00
Martin
795f6ab29b fix(header): add missing i18n 2022-09-06 10:09:12 +02:00
Martin
fb0e863efd feat(header): migrate help button to dsfr 2022-09-06 10:09:12 +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
a48a8b6081 feat(title): avoid title issues 2022-09-06 10:09:12 +02:00
Martin
af00936aac ui(header): refine to fit with olivier design 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
3cb25e8393 fix(geopoint_field): no geoportail link without coordinates 2022-09-06 09:23:52 +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
3cda6b7d62 chore(graphql): expose service#siret 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
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
c02f68083c feat(manager/service): show SIRET number 2022-09-06 09:23:52 +02:00
Colin Darie
fd18f8b5f8 feat(services): serializer with siret 2022-09-06 09:23:52 +02:00
Colin Darie
ad52710c3c fix(siret): don't add twice invalid format errors 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
a4d9a45280 chore(schema): +services#siret 2022-09-06 09:23:52 +02:00
Colin Darie
a9aab27589 fix(contact-admin): add missing invisible captcha 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
simon lehericey
e9677c37a1 fix(admin procedure preview): remove preview and continue buttons where procedure invalid 2022-09-05 10:17:05 +02:00
Martin
6114d1ea2f fix(helpscout#1994272872): pdf export contains ? with telecharger_psj. 2022-09-05 09:54:22 +02:00
Paul Chavard
ab3404714a fix(css): rename css file to fix legacy browsers 2022-09-02 19:07:10 +02:00
simon lehericey
8c884b4869 fix(migration): fix avis email notification migration 2022-09-02 17:23:04 +02:00
Kara Diaby
f7039bbb0a layout 2022-09-02 16:23:27 +02:00
Kara Diaby
f8d4644f73 models 2022-09-02 16:23:27 +02:00
Kara Diaby
98f4250214 controller 2022-09-02 16:23:27 +02:00
Martin
4537d2149d fix(service#index): caption absolute positionning does works well with long captions 2022-09-02 10:29:00 +02:00
Martin
ae1e8caf31 fix(dsfr): removed image on link 2022-09-02 09:36:58 +02:00
Martin
7a3dddf9de fix(dsfr): side effect 2022-09-01 17:12:22 +02:00
simon lehericey
bad058891b feat(conditional): block actions and hide revision details if procedure invalid 2022-09-01 15:07:18 +02:00
simon lehericey
f4b465a03f add errors_summary component 2022-09-01 15:07:18 +02:00
Martin
17c7ae1904 fix(a11y): input issue 2022-09-01 14:54:38 +02:00
Paul Chavard
afefa2bfb4 fix(dossier): fix user form component migration errors 2022-09-01 12:43:24 +02:00
simon lehericey
994d73b426 move trad 2022-09-01 09:48:27 +02:00
simon lehericey
a3e8c09e71 component all the champ 2022-09-01 09:48:27 +02:00
Paul Chavard
ebfed21fa8 chore(npm): update dependencies 2022-09-01 09:32:50 +02:00
Colin Darie
b4f791b1f1 fix(rgaa): missing title on signin (8.6) 2022-08-31 17:46:04 +02:00
Colin Darie
ba70cae75a fix(a11y/html): email input with autocomplete=email 2022-08-31 17:46:04 +02:00
Colin Darie
4535810ed4 fix(a11y/html): add role=main on main content 2022-08-31 17:46:04 +02:00
Colin Darie
f4c76ca677 fix(a11y/flash): add role=alert or status to flash messages 2022-08-31 17:46:04 +02:00
Colin Darie
3148266b49 refactor(rgaa/contact): inject invisible_captcha styles into head instead of div 2022-08-31 17:46:04 +02:00
Colin Darie
aab3e3a4be fix(rgaa/layout): invalid button > label 2022-08-31 17:46:04 +02:00
Colin Darie
69fe333aad refactor(rgaa/contact): question type as radio buttons for better rgaa compliance
On suit les recommandations de l'audit RGAA 2021, mais il y aurait encore
peut-être à redire…
2022-08-31 17:46:04 +02:00
Colin Darie
4f8391bc7c fix(rgaa/html): locale dropdown with valid html 2022-08-31 17:46:04 +02:00
Colin Darie
baf88f97e3 fix(rgaa/contact): replace misuse of dl/dd with ul/li
(Critère 9.3)
2022-08-31 17:46:04 +02:00
Colin Darie
cc93beb89e chore(rgaa/images): empty alt / aria hidden for non informative image 2022-08-31 17:46:04 +02:00
Colin Darie
88ceae8b7e chore(views): remove obsolete partial 2022-08-31 17:46:04 +02:00
Colin Darie
b1e9dffbc6 chore(rubocop): enable on .prawn files 2022-08-31 16:52:00 +02:00
Colin Darie
d30f51af79 fix(dossier/attestation_pdf): don't overlap DS name over logo
Le logo contient déjà le nom "demarches-simplifiees.fr", donc inutile
de le redupliquer en texte.
A la place on reprend le layout utilisé sur d'autres PDF.

Closes #7698
2022-08-31 16:52:00 +02:00
Martin
cc2b9b95bf clean(import): dsfr 2022-08-31 15:18:21 +02:00
Martin
14625c29d1 fix(lint): fixlint 2022-08-31 14:56:01 +02:00
Martin
f3ad8e2ead clean(service.edit.html.haml): extract other services 2022-08-31 14:56:01 +02:00
Martin
39b328a984 ui(Administrateur::Procedure::Service): use ds-fr table and some ui refinements 2022-08-31 14:56:01 +02:00
Martin
2649cc477f feat(Administrateur::Procedure::Service.form): resize inputs 2022-08-31 14:56:01 +02:00
Martin
edbff1ceb2 feat(Administrateur::Procedure::Service.form): add back link 2022-08-31 14:56:01 +02:00
Martin
d2b42dda2e feat(Administrateur::Procedure::Service.form): enhance wording and styl 2022-08-31 14:56:00 +02:00
Martin
f086302455 feat(Administrateurs::Procedure::Service#form): wrap explanation within DSFR::CallOut 2022-08-31 14:56:00 +02:00
Martin
289b8f78b8 feat(Administrateur::Services#index): rework list of services 2022-08-31 14:56:00 +02:00
Martin
a2311b1b75 perf(dsfr): only include what alert and its dependencies as refered in README of each components 2022-08-31 14:56:00 +02:00
Martin
17d8c7a371 feat(Administrateurs::Procedure::Service#edit): update UI with new warning as well as DSFR ui
feat(Administrateur::Procedure::Service#edit): add warning message a la DSFR
2022-08-31 14:56:00 +02:00
Martin
1bdbf2a7d7 feat(DesignSysteme): add DSfr and switch to Marianne font 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
Paul Chavard
d1ae98b9a7 feat(css): add dsfr 2022-08-31 14:53:50 +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
Christian
63a4a13323 Graphql: Fix champs sort in repetition 2022-08-31 11:15:28 +02:00
Martin
69ef1d508d fix(brouillon.edit.form): when their is a type de champs repetition having a child being mandatory ; the form being not validatable the browser does not block the submission 2022-08-24 15:18:05 +02:00
Martin
1a1f44c5e6 fix(rubocop): filter does not exists on strong parameter... 2022-08-24 15:03:36 +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
748b8c9d64 fix(instructeurs/archives#create): missing renaming during refacto 2022-08-23 15:31:17 +02:00
Martin
e35da17ce8 bug(instructeurs/archives#create): month should not be nil 2022-08-23 15:31:17 +02:00
Christophe Robillard
d4cdf1fb96 add dolist link to manager 2022-08-23 15:05:20 +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
mfo
5fb2c45540 review(i18n): fix typo and enhance wording. 2022-08-23 13:28:10 +02:00
Martin
d30492a222 tech(clean): better naming 2022-08-23 13:28:10 +02:00
Martin
45e0c15eb0 feat(PurgeManagerAdministrateurSessionsJob): also purge instructeur assign_tos 2022-08-23 13:28:10 +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
Martin
ef67958324 feat(manager): add #add_administrateur_with_confirmation and #confirm_add_administrateur so SuperAdmin requires another SuperAdmin approval to add an administrator to a procedure. Add #add_administrateur_and_instructeur for SuperAdmin willing to be administrateur/instructeur for 24 2022-08-23 13:28:10 +02:00
Martin
f0a4cbb61e feat(assign_tos): add manager column to assign_tos table. Same idea as administrateur_procedures.manager which flag a link between procedure/administrateur coming from a SuperAdmin [target: able to avoid SuperAdmin sec issues] 2022-08-23 13:28:10 +02:00
Martin
ed20951f14 fix(conditional): within section (dark blue bg) ; use white text 2022-08-23 09:23:42 +02:00
simon lehericey
adf194cc08 fix(editeur_de_champ): can join an pj template 2022-08-11 15:01:48 +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
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
Colin Darie
adced0f33a fix(revision): fix stable siblings order when there are multiple identical position
Ça arrive parfois dans les tests, et potentiellement en prod :
après avoir créé un nouveau `revision_type_de_champ`,
on se retrouve très momentanément avec 2
RTDC ayant le même position en attendant le renumérotation peu près.

https://github.com/betagouv/demarches-simplifiees.fr/blob/main/app/models/procedure_revision.rb#L55

Ceci conduisait à une renumérotation erronnée quand la db renvoyait
le nouveau RTDC créé *avant* les précédents.
2022-08-03 18:29:48 +02:00
Paul Chavard
cf315b7246 fix(autosave): on check condition requests do not send file inputs 2022-08-03 12:04:39 +02:00
Paul Chavard
fdbcdfd043 fix(utils): explicitly exclude file type from text inputs 2022-08-03 12:04:39 +02:00
Colin Darie
4a1325eadf fix(view_component): replace form_with with unaffected buffer form_tag helper
form_with/form_for have buffer issues (at least with turbo).

form_tag seems not affected.
2022-08-03 11:57:26 +02:00
Colin Darie
bc7cdb6b8e fix(contact): translate captcha honeypot label 2022-08-03 11:57:26 +02:00
Colin Darie
11a9a6f53f feat(dossier_transfer/email): require email in browser side 2022-08-03 11:44:54 +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
Colin Darie
707ea37b33
chore(sentry): tag dossier & procedure ids on dossier endpoints 2022-08-03 10:34:10 +02:00
Colin Darie
e8210e6c2b fix(agent_connect): constant path
https://sentry.io/organizations/demarches-simplifiees/issues/3248516694/?project=1429550&query=is%3Aunresolved&statsPeriod=14d
2022-08-03 10:19:45 +02:00
Paul Chavard
f48048179c fix(conditional): enable conditional per procedure 2022-08-03 09:16:10 +02:00
Paul Chavard
435a635b3d fix(procedure_presentation): find last instance of type_de_champ through coordinates 2022-08-02 15:24:52 +02:00
Paul Chavard
48a4e8bec5 chore(db): remove already dropped ignored columns 2022-08-02 15:24:52 +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
ec3118e82c Add concern for Datagouv schedulable jobs 2022-07-29 12:25:27 +02:00
Kara Diaby
a156529394 modify export descriptif demarches job 2022-07-29 11:17:22 +02:00
Kara Diaby
d18d89b41b modify Lib Datagouv API 2022-07-29 11:17:22 +02:00
Kara Diaby
181e237cf0 add generation csv service 2022-07-29 11:17:22 +02:00
Kara Diaby
882ee74f88 Comptes créés avec FC par mois : CRON Job 2022-07-29 11:17:22 +02:00
Kara Diaby
dc1d0ce071 Démarches supprimées par mois : CRON Job 2022-07-29 11:17:22 +02:00
Kara Diaby
4a29162c6c Démarches closes par mois : CRON Job 2022-07-29 11:17:22 +02:00
Kara Diaby
999059269e Instructeurs connectés par mois : CRON Job 2022-07-29 11:17:21 +02:00
Kara Diaby
8e9d1eeb6f Nombre de comptes créés par mois : CRON 2022-07-29 11:17:21 +02:00
Kara Diaby
b48a48980a Nombre de dossiers créés par mois : CRON 2022-07-29 11:17:21 +02:00
Kara Diaby
9fa54c3cc8 Nombre de démarches créés par mois : CRON 2022-07-29 11:17:21 +02:00
Kara Diaby
e0dc36926e Nombre d'instructeurs créés par mois : CRON 2022-07-29 11:17:21 +02:00
Kara Diaby
a0a3c6c0ee Administrateurs crées par mois : CRON Job 2022-07-29 11:17:20 +02:00
Paul Chavard
782af3322a fix(patron): when rendering “patron” champs should have dossier 2022-07-28 12:10:32 +02:00
Paul Chavard
31d80d80bd fix(dossier): prevent users from removing mandatory fiels after submission 2022-07-28 11:19:47 +02:00
Paul Chavard
b616a4c1e9 fix(stats): remove Helpscout from stats page 2022-07-27 18:26:25 +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
Colin Darie
bd788ec6bf fix(manager/archives): status => job_status
Closes #7614
2022-07-27 15:26:59 +02:00
Colin Darie
4699d15853 fix(archives): don't fail when there are no weight estimation
A priori ça peut arriver lorsqu'il n'y a pas de dossier terminé sur une procédure

Closes #7615
2022-07-27 15:12:18 +02:00
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
Colin Darie
d4f8f05dec fix(admin/attestation): page layout because of too larger input#size attribute 2022-07-27 14:26: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
67d2cb2061 chore(schema): add exports#job_status
Same behavior as Archive

On destroy tous les exports existants qui n'ont pas cette notion de status.
2022-07-26 17:53:24 +02:00
Colin Darie
6845b2ed08 fix(export): fix PurgeStaledExportsJob regression with stale scope
cc #7547
2022-07-26 14:26:22 +02:00
Paul Chavard
c2091e0978 refactor(vite): use turbo-polyfills 2022-07-26 13:07:24 +02:00
Paul Chavard
0f9983e93a feat(types_de_champ): allow siret in repetition blocks 2022-07-26 12:59:58 +02:00
Paul Chavard
03fbe506f6 perf(graphql): benchmark demarches_publiques query 2022-07-26 12:54:10 +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
Paul Chavard
01c0b4350b fix(autosave): error.message can be readonly 2022-07-26 11:02:15 +02:00
Colin Darie
cdbee11c2e chore(patron): drop down list with other input 2022-07-25 13:45:37 +02:00
Colin Darie
9597b3b4b7 style(champ): remove placeholder of drop down other input, since it's not recommended anymore 2022-07-25 12:37:38 +02:00
Colin Darie
865c8c5af0 fix(champ): let auto input width in "other input" dropdown.
On unset explicitement l'attribut `size` pour ne pas que l'helper
`text_field` réutilise la valeur de maxlength et vienne faire déborder
l'input.
2022-07-25 12:36:37 +02:00
Colin Darie
2364e2dda5 feat(graphql): expose entreprise etat_adminitratif 2022-07-25 10:58:02 +02:00
Colin Darie
11cd73b4ac feat(export/csv): list etablisement entreprise_etat_administratif 2022-07-25 10:58:02 +02:00
Colin Darie
e53b6e4e77 feat(export/pdf): list entreprise etat_administratif in "demandeur" section 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
Colin Darie
e1d3d1f844 chore(schema): add entreprise_etat_administratif to etablissements 2022-07-25 10:58:02 +02:00
Martin
3e56fdd1d7 fix(export): when it takes more than 3 hours, exports are purge before being generated. make it possible to have an export that takes more than 3 hours and share this behaviour with kind of same class archive 2022-07-25 10:48:54 +02:00
simon lehericey
0d3856e84a fix(conditional): handle incorrect user input 2022-07-22 15:55:43 +02:00
Christophe Robillard
e3206f3eec rename datagouv env var 2022-07-21 21:54:15 +02:00
Christophe Robillard
906dd4b509 remove useless DATAGOUV_TMP_DIR env 2022-07-21 21:54:15 +02:00
Christophe Robillard
0e3e6eb62a add schedulable? class method to cron jobs 2022-07-21 21:54:15 +02:00
Christophe Robillard
bed6167010 use specific namespace for datagouv cron jobs 2022-07-21 21:54:15 +02:00
Christophe Robillard
b6c96301ef export and publish opendata demarches 2022-07-21 21:54:15 +02:00
Christophe Robillard
77a9a2ba12 can upload file to datagouv 2022-07-21 21:54:15 +02:00
Christophe Robillard
d294feabe3 gzip demarches publiques export 2022-07-21 21:27:27 +02:00
Paul Chavard
d9eea35ae8 fix(dossier): decoralate dropdown behaviour from autosave 2022-07-21 18:40:16 +02:00
Paul Chavard
7425744f9f refactor(procedure): move cards to components 2022-07-21 18:07:56 +02:00
Paul Chavard
8532c71036 perf(dossier.pdf): use DossierPreloader to generate pdf 2022-07-21 15:02:29 +02:00
Paul Chavard
3e40b6d7bc fix(graphql): handle annotations inside blocks 2022-07-21 14:54:14 +02:00
Paul Chavard
260d8d2fec perf(graphql): add graphql benchmark 2022-07-21 12:29:08 +02:00
Paul Chavard
902dc678de perf(graphql): improuve dossier loading 2022-07-21 12:29:08 +02:00
Paul Chavard
042703cead refactor(dossier): extract dossier preloader 2022-07-21 12:29:08 +02:00
Paul Chavard
1fe82a956e fix(dossier.pdf): load all types_de_champ (including repetitions) 2022-07-21 11:56:23 +02:00
simon lehericey
5d5f46b4d8 instances : prawn does not like svg
win 10% on pdf generation
2022-07-20 15:48:16 +02:00
simon lehericey
821fd2394b small refactor 2022-07-20 15:48:16 +02:00
simon lehericey
ca8dc34196 preload all tdc once for all 2022-07-20 15:48:16 +02:00
simon lehericey
4dbd44d72a includes stuff 2022-07-20 15:48:16 +02:00
simon lehericey
b9ad3bbce1 extract procedure 2022-07-20 15:48:16 +02:00
simon lehericey
9c73bf1932 batch it 2022-07-20 15:48:16 +02:00
Martin
87af7f3261 feat(exports): implement admin export 2022-07-20 14:08:33 +02:00
simon lehericey
72583f846b champ value return nil if champ is hidden 2022-07-20 11:23:57 +02:00
Paul Chavard
e85fe71887 fix(champ): allow to submit when secondary options are empty 2022-07-20 10:49:07 +02:00
Paul Chavard
9fec11bfd0 refactor(dossier): use size and empty? instead of count 2022-07-19 11:11:46 +02:00
Paul Chavard
1657605ef1 fix(dossier): do not include preview dossiers in dossiers counts 2022-07-19 11:11:46 +02:00
Martin
850f9375b7 fix(ujs-error-handling): sometimes body is not yet ready,other calls regarding ajax namespace are wired on document, copy/paste 2022-07-19 10:52:55 +02:00
Martin
5932f2a1f6 fix(MutationObserver): IE 11 kind of silent error: https://stackoverflow.com/questions/50593385/mutationobserver-syntax-error-on-ie-11 2022-07-19 10:52:55 +02:00
simon lehericey
2d26ba3507 fix: binary operator computes false by default 2022-07-19 10:11:24 +02:00
Paul Chavard
0578f4f305 fix(champ): use safe_join in champ helpers
fix #7411
2022-07-18 16:29:41 +02:00
Paul Chavard
a45b76e63a fix(gon): matomo key can be a number 2022-07-18 16:08:42 +02:00
simon lehericey
c0e8a07868 perf: 500 queries -> 250 procedure show (id: 34908) 2022-07-18 14:28:35 +02:00
simon lehericey
9cfa6205b5 perf: editor public 250 queries -> 15 queries 2022-07-18 14:28:35 +02:00
mfo
4b6ae888d2 Update app/views/administrateurs/procedures/_informations.html.haml
Co-authored-by: Paul Chavard <github@paul.chavard.net>
2022-07-18 14:08:53 +02:00
Martin
8ca3a9760b feat(procedure/_information): show new policy regarding data retention [translated so other instances can adapt their support strategy] 2022-07-18 14:08:53 +02:00
Martin
05b6b462b6 feat(new_max_duree_conservation): make it configurable for other instances 2022-07-18 14:08:53 +02:00
Martin
24c8dc5829 feat(procedure.duree_conservation_dossiers_dans_ds): decrease max duree_conservation_dossiers_dans_ds from 36 to 12 2022-07-18 14:08:53 +02:00
Colin Darie
dea1ce40a9 feat(dossier): allows user to edit identity from a brouillon dossier
Closes #7386
2022-07-18 09:57:19 +02:00
Colin Darie
d3232a28cd chore(api_entreprise): intercept token expiration for a more contextual frontend message
Auparavant le service échouait silencieusement et ne retournait rien,
ce qui dans les implémentations du front aboutissait au message que
l'établissement/l'entreprise n'a pas été trouvé.

Un type d'erreur spécifique sur l'expiration du token permet d'afficher
le message lié à un problème temporaire de récupération d'infos.
2022-07-18 09:57:19 +02:00
Colin Darie
1c96ca59dd style(combo): better inputs sizes for pays/regions/departement/communes champs 2022-07-18 09:48:35 +02:00
Colin Darie
71e7f51753 style(champ): remove generic placeholders because new DSFR don't like placeholders in input 2022-07-18 09:48:35 +02:00
Colin Darie
bf20bcf476 style(champ): fix date input width on mobile 2022-07-18 09:48:35 +02:00
Colin Darie
7f7e192df9 style(champs): each composite inputs on its own line (cnaf, dgfip…) with standard width 2022-07-18 09:48:35 +02:00
Colin Darie
ac9313ac69 style: better invitation email width 2022-07-18 09:48:35 +02:00
Colin Darie
44823ddd32 style(champs): reduce width of small inputs
Closes #7427
Cf #7387

Quelques considérations :

- l'attribut `size` ne correspond pas exactement au nombre de caractères
  qui peut être saisi (à moins d'utiliser une font monospace). On doit
  donc utiliser une valeur légèrement supérieure pour être sûr que
  les combinaisons navigateurs/police/taille soient suffisantes.

- on essaye d'harmoniser un peu les largeurs possibles, donc on utilise
  un size=20 qui correspond bien à plusieurs champs concernés

- délicat d'harmoniser avec max-width car les champs de type number &
  date ajoutent des outils/icones à droite de l'input

J'en ai profité pour définir de vrais placeholders pour les champs de
type number.
2022-07-18 09:48:35 +02:00
Colin Darie
b68a62f6b3 fix: CSS warning: float elements ignore display: inline-block 2022-07-18 09:48:35 +02:00
Paul Chavard
98a0bc8c71 refactor(condition): use dom_id with stable_id 2022-07-13 15:38:43 +02:00
Paul Chavard
0adfd92213 refactor(condition): use standard revision change ops 2022-07-13 15:32:25 +02:00
simon lehericey
2cad0e11d3 display condition change between version 2022-07-13 15:10:23 +02:00
simon lehericey
00c4076b32 conditions_component use stable_id 2022-07-13 12:38:52 +02:00
Paul Chavard
d00a91aea5 feat(dossier): check conditions on en construction dossier 2022-07-13 10:49:17 +02:00
Paul Chavard
e82f0fd0c8 feat(dossier): exclude conditionally invisible fields from instructeur interface 2022-07-12 17:33:42 +02:00
Paul Chavard
0f9d8b6a39 feat(dossier): exclude conditionally invisible fields from mandatory check 2022-07-12 17:33:42 +02:00
Paul Chavard
120b593015 feat(dossier): toggle conditional champs visibility 2022-07-12 17:33:42 +02:00
simon lehericey
53fe3c3dd8 fix: remove condition from annotations and children 2022-07-12 14:17:05 +02:00
simon lehericey
6f7fb9841c fix: make edition annotation work again 2022-07-12 14:17:05 +02:00
Paul Chavard
24aae95c63 fix(react): prevent warning about controlled inputs 2022-07-12 11:47:33 +02:00
Paul Chavard
a4681d8832 refactor(autosave): improuve events handling 2022-07-12 11:47:33 +02:00
Colin Darie
d805114a72 Revert "feat(revision): list updated placeholder option for generic type de champ"
This reverts commit fe0282e904.

Continue 2bd33ada45b036f73f3fc78150621092e0667693
2022-07-12 11:37:58 +02:00
Colin Darie
8c08d0295b Revert "feat(champ): customizable placeholders for text & textarea champs"
This reverts commit 9e26ee932e.

Finalement les champs génériques ne doivent pas avoir de placeholder
personnalisable, ce sera uniquement via la description.
2022-07-12 11:37:58 +02:00
Paul Chavard
1c8efea465 fix(preview): gon should not crash on preview pages 2022-07-12 11:16:41 +02:00