Commit graph

2088 commits

Author SHA1 Message Date
Colin Darie
deb40caae1 feat(manager): schedule a dolist report from manager 2023-01-18 09:56:40 +01:00
Sébastien Carceles
5c7b2ba1f3
feat(dossier): prefill drop down list champ (#8361)
* feat(dossier): prefill drop down list champ

* decorate the types de champ to avoid if / else

In order to avoid doing if this a drop down ? / else at several places,
we decorate the types de champ and let the decorator give the possible
and example values.

* show all possible values when there are too many

* allow to prefill 'other' option

* review: remove duplicate

* review: refactor for readability

* validate that value is in options

* review: exclude disabled options
2023-01-18 09:47:22 +01:00
Colin Darie
ae7e3cf887 fix: indentation 2023-01-17 14:26:11 +01:00
Paul Chavard
44488c7014 feat(dossier): use select in filters bygroupe instructeur 2023-01-16 14:00:08 +01:00
Colin Darie
f02f9a13a8 fix(i18n): fix same typo with missing a word 2023-01-16 13:19:11 +01:00
Damien Le Thiec
5e26acb0e1
Make date and datetime prefillable (#8304)
* Make date and datetime prefillable

* Format in ISO8601 format
2023-01-12 17:42:02 +01:00
Paul Chavard
289d48f697 refactor(js): use autosubmit controller in filter_component 2023-01-12 11:58:46 +01:00
Paul Chavard
5641c2b078 fix(groupe_instructeur): only show to administrators the number of visible files 2023-01-11 21:49:08 +01:00
Martin
822eda7c42 correctif(safe_mailer): fix bug sur de la synthax 2023-01-11 20:29:51 +01:00
Martin
3e1f4f0209 correctif(safe_mailer): autorise le new/create depuis le manager 2023-01-11 18:34:30 +01:00
Martin
3e6b82ed9e amelioration(safe_mailer): ajoute au manager la fonction pour configurer le routage des mails sur un fournisseur unique
Update app/mailers/devise_user_mailer.rb

Co-authored-by: LeSim <mail@simon.lehericey.net>
2023-01-11 17:32:24 +01:00
Damien Le Thiec
493a60f221 Add prefill api to rack_attack 2023-01-11 15:35:43 +01:00
François Vantomme
f430647064 refactor(storage): move S3_* variables to config/env.example.optional 2023-01-11 12:59:19 +01:00
François Vantomme
eb812032e1 security(csp): whitelist amazon AWS for S3 storage 2023-01-11 12:59:19 +01:00
François Vantomme
3ab4482ff7 feat(storage): add S3 storage support 2023-01-11 12:59:19 +01:00
François Vantomme
08d276472b refactor(links): use localized FAQ URLs 2023-01-11 11:28:03 +01:00
François Vantomme
fe518fed8c refactor(links): move FAQ from footer to common scope 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
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
Colin Darie
22e2749357 chore(manager): basic dashboard for EmailEvents 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
Paul Chavard
5128b9a086 refactor(demarches): use turbo_stream template 2023-01-10 09:48:32 +01:00
Sébastien Carceles
177dec2bdb
feat(dossier): add dossier id to prefill response (#8382) 2023-01-06 13:46:27 +00:00
Lisa Durand
080747f60b reorganise multiple buttons on top of table from instructeur procedure view 2023-01-05 17:22:53 +01:00
Sébastien Carceles
7679ba26b2
⚰️ remove dead route (#8372) 2023-01-05 14:07:39 +00: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
c05c765ba7 style(user/expiration): convert banner to DSFR 2023-01-04 13:15:10 +01:00
Colin Darie
6a9afdc2fc fix(dossier/i18n): correct pluralization of delay expiration button 2023-01-04 13:15:10 +01:00
Colin Darie
0b033a7025 refactor(email): improve wording of automatic deletion to user
Closes #7688
2023-01-04 13:15:10 +01:00
Colin Darie
7d16ae83e8 refactor(email): improve wording of near deletion to user
Closes #7688
2023-01-04 13:15:10 +01:00
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
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
Eric Leroy-Terquem
f82fba3e2f add folders number for instructor group 2023-01-02 15:43:13 +01:00
Damien Le Thiec
ffdb6c0104
Merge branch 'main' into improvement/link_to_dossier_description 2023-01-02 10:15:39 +01:00
Damien Le Thiec
775eb16d95 Add link to prefill description from procedure show 2022-12-29 16:11:59 +01:00
Damien Le Thiec
e6d4b3061e Improve text for prefill description page 2022-12-29 10:56:42 +01:00
Paul Chavard
0e73415904 feat(revision): improuve changes dashboard 2022-12-27 11:06:51 +00:00
Paul Chavard
9b3fa4dd3c refactor(revision): changes should be domain objects 2022-12-27 10:58:53 +00:00
Paul Chavard
7aa6f172dc feat(revision): show number of pending dossiers for each revision 2022-12-27 10:58:53 +00:00
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
mfo
36b86e99be
Merge pull request #8333 from adullact/refactor/remove-useless-env-var
remove useless DOSSIER_DEPOSIT_RECEIPT_LOGO_SRC env var
2022-12-26 16:19:52 +01:00
Damien Le Thiec
9e083ea3f7
Merge branch 'main' into feature/prefill_civility 2022-12-26 11:31:52 +01:00
Martin
f333fa6048 correctif(email.sans-confirmation): manque de la maj des traductions des mails sans confirmations 2022-12-26 10:32:19 +01:00
François Vantomme
043dde8841
refactor(env): remove useless DOSSIER_DEPOSIT_RECEIPT_LOGO_SRC var 2022-12-22 19:44:57 +01:00
Christophe Robillard
cfc2aec334 display all demarches only if zonage enabled 2022-12-21 09:02:16 +01:00
Christophe Robillard
11a18516b2 remove feature flag zonage 2022-12-21 09:02:16 +01:00
Colin Darie
7cc7c414ad style(instructeurs): improve dossier header layout
Closes #8292
2022-12-20 19:07:00 +01:00
Damien Le Thiec
c3c1801a62 Add example values civilité 2022-12-20 14:53:46 +01:00
Christophe Robillard
edffd0a7a8 extract ds_opendata_enabled 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
Kara Diaby
b1b8f1b12e routes 2022-12-19 15:28:09 +01:00
Martin
4e201a245b accessibilite(page#dossiers): utiliser les role=alert sur le status des dossiers 2022-12-19 15:16:57 +01:00
Sébastien Carceles
0a10a08c21
feat(demarche): describe procedure prefilling (#8187)
* feat(demarche): description

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

Co-authored-by: Damien Le Thiec <damien.lethiec@gmail.com>
2022-12-19 11:32:09 +00:00
Martin
2be4441a70 amelioration(attestion.et.mail): deduplique les message d'erreur, améliore les messages d'erreur, gère la pluralisation des erreurs lorsque plusieurs tags sont concernés 2022-12-19 09:28:46 +01:00
Martin
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
5de0c8722e i18n for procedure attributes and values 2022-12-16 15:51:49 +01:00
Christophe Robillard
f3f8bc74c7 fetch procedure info on demand
Co-authored-by: Paul Chavard <paul.chavard@beta.gouv.fr>
Co-authored-by: Colin Darie <colin@darie.eu>
Co-authored-by: Martin <martin@sharypic.com>
2022-12-16 15:51:49 +01:00
Eric Leroy-Terquem
2645ac85f7 update wording and order in types de champ select 2022-12-16 09:30:36 +01:00
simon lehericey
172a9d5599 feat(timestamp): add certigna 2022-12-07 19:28:01 +01:00
Paul Chavard
3d1f57df83 feat(api_token): add api token controller 2022-12-07 18:19:37 +01:00
Paul Chavard
f49a1baeec refactor(groupe_instructeur): remove mailer should take a list of instructeurs 2022-12-06 12:01:54 +01:00
Martin
6556fda218 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
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
simon lehericey
8771205679 clean(flipper): remove unused expert_not_allowed_to_invite 2022-12-05 12:22:29 +01:00
simon lehericey
905e3ab64e clean(flipper): remove unused gates 2022-12-05 12:22:29 +01:00
simon lehericey
ebd68484df clean(flipper): remove unused groups 2022-12-05 12:22:29 +01:00
Colin Darie
f7d6350e05 fix(a11y/identite): indicates that all fields are required
Closes #8096
2022-12-05 11:37:36 +01:00
Colin Darie
b9d6397a9b
fix(pj_template): private proxy template url so their links are non expirable
Closes #7920
2022-12-05 11:30:00 +01:00
Colin Darie
b13c5e56f6 refactor(piece_justificative): UX follows mockups 2022-12-05 10:47:10 +01:00
Colin Darie
ac234b7744 chore(footer): remove obsolete footer partial & i18n keys 2022-12-05 10:38:16 +01:00
Colin Darie
52b6502cbd test(a11y): ensure we don't mix aria-label and title on main pages
Actuellement, on fait le choix de ne pas avoir d'éléments porteurs à la
fois d'aria-label et title.
Bien qu'en principe l'aria-label quand elle est gérée par un navigateur,
prenne précédence sur le title, en pratique un bug dans NVDA cumule les 2
et rend la navigation difficile.

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

Nous gardons le title si l'info qu'il contient est également pertinente
pour les navigateurs graphiques qui l'affichent en guise de tooltip ;
autrement on bascule sur l'aria-label qui est plus largement supporté
par les navigateurs a11y.
2022-12-05 10:38:16 +01:00
Colin Darie
f653a25cc2 fix(i18n/a11y): translate "Edit file" button title
Closes #8136
2022-12-05 10:38:16 +01:00
Colin Darie
762942f468 chore(i18n): translate meta title for main user pages 2022-12-05 10:38:16 +01:00
Colin Darie
70d4d7848b feat(i18n): more footer translations 2022-12-05 10:38:16 +01:00
Colin Darie
daefdc19af fix(footer): link to our new github org 2022-12-05 10:38:16 +01:00
Colin Darie
f15363e178 feat(i18n): basic home translation 2022-12-05 10:38:16 +01:00
Paul Chavard
4778c773b3 fix(dev): fix helo integration 2022-12-02 19:13:56 +01:00
Kara Diaby
016f3701d8 routes 2022-12-02 11:30:49 +01:00
Kara Diaby
fe04244138 locales 2022-12-02 11:30:49 +01:00
Colin Darie
6803fbeddb feat(instructeurs): list archiver email & date 2022-12-01 18:27:18 +01:00
Paul Chavard
00556715d6 fix(typography): fix quotes 2022-12-01 17:59:11 +01:00
Martin
235da8b04a amelioration(sanitize): assainie aussi les balises <img> 2022-12-01 17:42:24 +01:00
Eric Leroy-Terquem
bf9a7026a8 update explanation 2022-12-01 12:11:24 +01:00
Colin Darie
cd87390262 fix(a11y/dossiers): add a caption to dossiers table (critere 5.4)
Closes #8090
2022-11-30 13:41:13 +01:00
Colin Darie
f6068e6151 fix(i18n): english burger menu label 2022-11-30 12:08:59 +01:00
Colin Darie
436c1951cc fix(locale-switcher): attributes & wording issues
Cf #8059
2022-11-30 12:08:59 +01:00
Colin Darie
8c16eb1543 fix(a11y): more external link having title saying it will open in new tab 2022-11-30 09:27:46 +01:00
Colin Darie
b448cd3f36 fix(footer): beta.gouv.fr title with "Premier Ministre" 2022-11-30 09:27:46 +01:00
Colin Darie
fc74a6731e fix(a11y): root index with aria-label i18n-ready
Closes #8072
Closes #8095
2022-11-30 09:27:46 +01:00
Colin Darie
720995f48f fix(a11y/footer): add "new tab" suffix on title links
Cf #8050
2022-11-30 09:27:46 +01:00
Colin Darie
e60fb1f0c1 fix(a11y/footer): img with alt for beta gouv logo
Cf #8050
2022-11-30 09:27:46 +01:00
Colin Darie
c55148f694 fix(a11y): root title link more explicit + i18n
Closes #8050
2022-11-30 09:27:46 +01:00
Colin Darie
611120f31f chore(dossier_transfer): notice after transfer invitation sent 2022-11-25 13:34:12 +01:00
Colin Darie
f625d99934 chore(dossier_transfer): extract i18n 2022-11-25 13:34:12 +01:00
Paul Chavard
234975b806 feat(graphql): expose groupe_instructeur state and update mutation 2022-11-24 14:33:29 +01:00
Paul Chavard
405d2a695f refactor(attestation_template): remove from revisions 2022-11-23 12:26:26 +01:00
Paul Chavard
c73b650f85 feat(attestation): validate attestation tags 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
07173401de fix(graphql): load playground from CDN 2022-11-17 15:50:05 +01:00
Paul Chavard
29bdd82b59 refactor(procedure): types_de_champ -> active_revision.types_de_champ_public 2022-11-17 13:54:14 +01:00
mfo
965aef1256
Merge pull request #8042 from adullact/feature/webconsole-private-ranges
feat(web-console): allow private & loopback ranges
2022-11-17 09:22:23 +01:00
mfo
98b9547c36
Merge pull request #8017 from adullact/feature/self-hosted-sentry
Accepter les instances auto-hébergées de Sentry dans la Content Security Policy
2022-11-17 09:22:08 +01:00
Paul Chavard
6f6b3896de refactor(export): reduce repetition in export code hopefully making it more readable 2022-11-16 08:49:37 +01:00
François Vantomme
17cad258dc
feat(web-console): allow private & loopback ranges 2022-11-15 14:36:46 +01:00
Paul Chavard
6ad057dcee feat(graphql): upgrade playground version 2022-11-15 11:48:29 +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
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
05dcf5e7cf amelioration(usager.liste_des_dossier): ajout du bouton pour cloner un dossier 2022-11-14 09:13:54 +01:00
Christophe Robillard
5f5b6bf7c7 use specific route for all admins 2022-11-10 18:02:20 +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
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
simon lehericey
33e803cc79 fix: I18n 2022-11-08 16:17:06 +01:00
simon lehericey
db3ebfa6d2 feat(FranceConnect): list and allow to unlink FC identities 2022-11-08 16:17:06 +01:00
simon lehericey
840e913f50 fix(typo): correct apostrophe 2022-11-08 16:17:06 +01:00
simon lehericey
d2c7bffbb9 fix: typo 2022-11-08 15:59:33 +01:00
CamilyaDellali
2cb14befb4 Précisions- Modification du fichier csv
La modification du fichier csv ne s'opère que pour l'ajout de nouveaux instructeurs. La suppression d'un instructeur s'opère manuellement en cliquant sur le bouton "retirer".
2022-11-08 15:59:12 +01:00
Paul Chavard
b020cb31b6 fix(publication): improuve publication warnings 2022-11-08 10:20:35 +00:00
Martin
bd28c29856 amelioration(manager): ajout de la visualisation des comptes marqués comme membre de l'equipe 2022-11-08 09:55:21 +01:00
François Vantomme
9bdce77faa
chore(csp): allow self-hosted Sentry 2022-11-08 09:49:45 +01:00
Paul Chavard
7de52d582a feat(conditional): remove conditional feature flag 2022-11-04 13:37:37 +00: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
Eric Leroy-Terquem
09c5b9dc99 remove categories_type_de_champ feature flag 2022-11-03 14:28:27 +01:00
Martin
13525a4a68 correctif(typo): étendre plutôt que entendre pour la durée de conservation d'un dossier 2022-11-03 09:53:37 +01:00
Kara Diaby
fee675cbaa routes 2022-11-02 10:19:43 +01:00
Kara Diaby
b5b57b066f config initializers administrate 2022-11-02 10:19:43 +01:00
Christophe Robillard
29be3812af i18n for status 2022-10-31 16:12:02 +01:00
Christophe Robillard
3890b24489 i18n for publication date 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
Martin
c7c46c9dff design(page de configuration de procedure): passage de la grille au DSFR 2022-10-27 14:00:44 +02:00
Colin Darie
72363eea48 chore(delayed_job/sentry): sample traces different from Rails requests 2022-10-26 22:57:41 +02:00
Colin Darie
59c93833a1 chore(delayed_job/sentry): don't wait for all (~25) attempts before reporting 2022-10-26 22:57:41 +02:00
simon lehericey
b65faafc30 improve stability 2022-10-25 14:44:43 +02:00
simon lehericey
097082afc9 fix(dolist): reduce message name variability 2022-10-20 15:29:56 +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
Martin
6000de2095 feat(manager/outdated_procedure): enhance procedure cleanup 2022-10-17 13:35:37 +02:00
Paul Chavard
25c774b3a1 refactor(dossier): extract dossier edit footer into a component 2022-10-13 14:44:46 +02:00
Paul Chavard
d409b6f4ef feat(dossier): do not save dossier on submit 2022-10-13 14:44:46 +02:00
Paul Chavard
12ddb0a8e8 chore(i18n): remove unused locales 2022-10-13 14:44:46 +02:00
Damien Le Thiec
73f6063c87
Merge branch 'main' into feature/add_rna_type_de_champs 2022-10-11 15:36:46 +02:00
Paul Chavard
6ae6b89f8e fix(dossier): en_construction expiration is counted from submit date 2022-10-11 12:46:11 +02:00
Colin Darie
3ae62d9c3a fix(routage): typo nommination => nomination 2022-10-11 10:03:14 +02:00
Colin Darie
3e8f040d49 style(usager/dossier): fix summary actions style 2022-10-11 09:50:21 +02:00