Commit graph

2783 commits

Author SHA1 Message Date
Eric Leroy-Terquem
25df48f255 feat(groupe_instructeurs): import instructeurs in unrouted procedure with a proper CSV 2023-02-22 09:49:26 +01:00
Damien Le Thiec
2052bc7840 Remove dependency type_de_champ -> procedure 2023-02-21 16:00:58 +01:00
Christophe Robillard
9bab4f9d76 display dossiers count for each procedure 2023-02-21 10:06:07 +01:00
Eric Leroy-Terquem
343cb5fce6 feat(groupe instructeur mailer): add emailing to added instructeurs 2023-02-20 15:41:19 +01:00
Damien Le Thiec
deb51e3880 Manage GET prefill by creating a dossier 2023-02-20 15:35:14 +01:00
Damien Le Thiec
dce4c84f9a Merge branch 'main' into feature/prefill_repetible 2023-02-16 17:08:30 +01:00
Paul Chavard
c0ad7853cb fix(administrateur): procedure page n+1 2023-02-16 11:29:21 +01:00
Eric Leroy-Terquem
a46faf8cdf feat(groupe instructeur mailer): make two kind of notifications for removed instructeur 2023-02-16 10:37:04 +01:00
Eric Leroy-Terquem
5be58c8223 refactor(groupe instructeur mailer): rename mailer methods 2023-02-16 10:37:04 +01:00
Eric Leroy-Terquem
cbf072961c feat(groupe instructeur mailer): add emailing to removed instructeurs 2023-02-16 10:37:04 +01:00
Paul Chavard
ade9811d10 Revert "Merge pull request #8635 from tchak/graphql-with-traces"
This reverts commit 76520ec77d, reversing
changes made to 2c729ff396.
2023-02-16 10:07:07 +01:00
Paul Chavard
74c6d45b74 feat(graphql): add tracing support for managers 2023-02-15 18:18:45 +01:00
Damien Le Thiec
2533ca50d4 Merge branch 'main' into feature/prefill_repetible 2023-02-15 11:07:56 +01:00
Lisa Durand
b7a5f8bf7f extract actions and info from dropdown 2023-02-14 17:57:50 +01:00
Damien Le Thiec
802a23057b Microtest dossier prefill get without stored queries 2023-02-13 18:15:24 +01:00
Sébastien Carceles
1a72b80f8f
fix: "remove" a champ to prefill (#8612)
* fix: "remove" a champ to prefill

Removing a champ to prefill on /preremplir used to fail, because of a
collusion (having the same form multiple times on un page looks like a
bad idea, when it comes to multiple input fields).

* fix specs
2023-02-13 08:17:22 +00:00
Damien Le Thiec
dbb92e7fd3 Merge branch 'main' into feature/prefill_repetible 2023-02-11 22:40:56 +01:00
sebastiencarceles
6c5b82ebbf filter out locale from stored query params
As 'locale' isn't a param we want to prefill a dossier, we ignore it
and remove it from the stored query params.
2023-02-09 13:51:52 +01:00
sebastiencarceles
e212055ef8 tell when query params have been stored 2023-02-09 13:51:52 +01:00
Colin Darie
e626eb69ce feat(admin): import groupe instructeurs csv when procedure is closed 2023-02-09 11:17:13 +01:00
Paul Chavard
f22cc8812b secu(graphql): log full queries and variables 2023-02-08 15:10:27 +01:00
Colin Darie
786c3d06d6 chore(sentry): set procedure tag to administrateur controller 2023-02-08 14:42:14 +01:00
Eric Leroy-Terquem
6cbc514d56 feat(groupe instructeurs): remove mailing when add instructeurs 2023-02-08 10:36:42 +01:00
Martin
1ee67d511d amelioration(mails): permet a nos mails d'inclure des balises <a> pour faciliter l'usage des mail envoyés 2023-02-06 11:01:28 +01:00
Lisa Durand
f80fe9680f corrections from Sim review 2023-02-03 15:13:06 +01:00
Lisa Durand
93a85ca4b0 add limit of 500 dossiers 2023-02-03 15:13:06 +01:00
Lisa Durand
5802f3f7cf injected dossier_ids in front 2023-02-03 15:13:06 +01:00
Eric Leroy-Terquem
ff5fecef25 fix(dossiers_transfers): can destroy dossiers_transfers 2023-02-03 13:48:39 +01:00
Colin Darie
a221c57fbc feat(manager): resend reset password instructions 2023-02-02 22:15:10 +01:00
simon lehericey
7461d84018 feat(log): log ip and correlation id 2023-02-02 11:20:05 +01:00
Eric Leroy-Terquem
b306dea5cf refactor(avis): rename revive by remind 2023-02-01 09:55:46 +01:00
Eric Leroy-Terquem
004bf5be38 feat(avis): add remind_by! method 2023-02-01 09:55:46 +01:00
Damien Le Thiec
d7b01255fe Merge branch 'main' into feature/prefill_repetible 2023-01-31 16:39:00 +01:00
Damien Le Thiec
f91cc05d95 Small fix link to prefill type de champ 2023-01-31 16:24:32 +01:00
Damien Le Thiec
20ba96ba3c POST working with prefill query example for repeating fields 2023-01-31 14:54:23 +01:00
Martin
88553eec9b correctif(dossier_transfer): le transfer de dossier vers un email contenant des majuscule ne fonctionnait pas 2023-01-31 14:52:57 +01:00
Colin Darie
36d5569114 fix(instructeurs): pdf in exports include info administration 2023-01-30 18:38:54 +01:00
Colin Darie
ef864021f7 refactor(pj_service): explicit options with_{bills,champs_private} because expert & instructeurs does not need the same 2023-01-30 18:04:09 +01:00
Paul Chavard
d82620d1ff fix(attestation template): validate on edit form load 2023-01-30 11:52:35 +01:00
Colin Darie
7c13449b4f feat(conditional): show loader during autosave when other champs are dependent of it 2023-01-26 09:06:30 +01:00
mfo
84a667b8bd
Merge pull request #8454 from tchak/feat-epci
feat(types de champ): add EPCI champ
2023-01-23 16:56:18 +01:00
mfo
1926aa283d
Merge pull request #8425 from adullact/fix/procedure-custom-retention
Fix du support d'une durée personnalisée de conservation des dossiers
2023-01-23 12:11:29 +01:00
Damien Le Thiec
962016e32e
Schema graph_ql (#8406)
* First draft schema graph_ql

* Add tests for json schema procedures
2023-01-23 11:31:06 +01:00
Sébastien Carceles
68ddae7382
feat(demarche): prefilling stats (#8436)
* force json content type for POST / PATCH / PUT

* add specs about stats dossiers funnel

* new endpoint to render stats about a procedure
2023-01-20 13:28:02 +00:00
Paul Chavard
f38ee8f03f feat(dossier): implement refresh_after_update on champs 2023-01-20 11:05:25 +01:00
Martin
ffd6a10618 clean(api/v2/base_controller): remove potential confusion 2023-01-19 18:09:38 +01:00
Martin
3dc26efc61 infra(monitoring): ajoute le webhook pour les notifier des incidents cote sib 2023-01-19 09:50:25 +01:00
Colin Darie
428dd9bf1a fix(dossier): we can't terminer any dossier having etablissements in degraded mode
Closes #8449
2023-01-18 19:23:25 +01:00
Kara Diaby
04b86e9c55 controller 2023-01-18 18:46:42 +01:00
SebastienGt
bd42e93bc6 Correction pour flash.now 2023-01-18 10:03:55 +01:00
SebastienGt
1fd26fad54 Correction 2023-01-18 10:03:55 +01:00
SebastienGt
05d0870cce Correction 2023-01-18 10:03:55 +01:00
SebastienGt
981ae0625f Correction 2023-01-18 10:03:55 +01:00
SebastienGt
b14167837c Decalage notice 2023-01-18 10:03:55 +01:00
SebastienGt
0cb7bd2424 Merging 2023-01-18 10:03:55 +01:00
SebastienGt
0507bb673d Simplification du code en supprimant if 2023-01-18 10:03:55 +01:00
Sebastien
c37ed7a7a1 Adding console output when saving failed 2023-01-18 10:03:55 +01:00
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
simon lehericey
8e75b6ff77 fix(send_dossier): avoid leaking instructeur emails 2023-01-17 16:57:56 +01:00
François Vantomme
e794d4f77b
fix(procedure): deal nicely with custom NEW_MAX_DUREE_CONSERVATION 2023-01-12 14:37:54 +01:00
Paul Chavard
289d48f697 refactor(js): use autosubmit controller in filter_component 2023-01-12 11:58:46 +01:00
Paul Chavard
e8b10fd320 fix(procedure): return most recent demarche for a given path 2023-01-12 10:23:12 +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
Paul Chavard
afc1f12028 feat(graphql): implement add/remove instructeurs via API 2023-01-10 20:33:35 +01:00
Paul Chavard
af33d5d65c refactor(repetition): use row_id instead of row 2023-01-10 19:31:41 +01:00
Martin
0ef46b6f07 amelioration(instructeurs/dossiers#show): supprime le double chargement des champs et annotations privées 2023-01-10 17:36:05 +01:00
François Vantomme
0e3fe055e4
fix(archive): typo on flash notice 2023-01-10 17:23:48 +01:00
Colin Darie
812376cfb2 fix(manager): default resource order 2023-01-10 16:07:35 +01:00
Colin Darie
22e2749357 chore(manager): basic dashboard for EmailEvents 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
Martin
0ce293d2e0 fix(instructeurs/dossier#show): missing preload on dossier 2023-01-09 14:29:47 +01:00
Sébastien Carceles
177dec2bdb
feat(dossier): add dossier id to prefill response (#8382) 2023-01-06 13:46:27 +00:00
Martin
3918757dc9 correctif(test): desormais l'association batch_operations.groupe_instructeurs passe par le dossier. Mise a jour des tests 2023-01-05 16:20:18 +01:00
Lisa Durand
59468fe351 add justificatif_motivation field to batch operation accepter 2023-01-05 16:20:18 +01:00
Lisa Durand
1bc0609543 add motivation field to batch operation accepter 2023-01-05 16:20:18 +01:00
Paul Chavard
378f3c5fb0 use join table instead of arrays 2023-01-05 16:20:18 +01:00
Paul Chavard
c4a30084fe refactor(virus_scan): remove lock 2023-01-04 12:12:11 +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
Kara Diaby
f7cb24ce40 Supprime le feature flag pour que tous les administrateurs puissent ajouter des tags sur les démarches 2023-01-02 11:13:31 +01:00
mfo
72791bd5b6
Merge pull request #8337 from mfo/US/instructeur#telecharger_pjs
correctif(instructeurs/dossier#telecharger_pjs): ne pas inclure les bills et horodatage quand on telecharge un dossier unitairement
2022-12-27 09:07:48 +01:00
Paul Chavard
4a4ce67ef6 fix(dossier): explicitly send draft notification email 2022-12-26 22:02:33 +00:00
Martin
69aed18b46 correctif(instructeurs/dossier#telecharger_pjs): ne pas inclure les bills et horodatage quand on telecharge un dossier unitairement 2022-12-26 17:11:10 +01:00
Paul Chavard
4d4c378724 feat(api_geo): add api_geo service 2022-12-21 14:03:02 +01:00
Kara Diaby
7bdc7c2cad manager procedure controller 2022-12-19 15:28:09 +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
f1595d1f50 wrap resultset tuples in ProcedureDetail 2022-12-16 15:51:49 +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
Christophe Robillard
3a660349ad export all demarches 2022-12-16 15:51:49 +01:00
Christophe Robillard
cea92c0488 perf: remove n+1 queries to count admin 2022-12-16 15:51:49 +01:00
Christophe Robillard
d167a3ec71 fix: select distinct procedures 2022-12-16 15:51:49 +01:00
Paul Chavard
cb5b60ccda Revert "Revert "Merge pull request #7907 from tchak/feat-cond-repetitions""
This reverts commit 0d10d36cb0.

# Conflicts:
#	app/models/dossier.rb
#	app/models/dossier_preloader.rb
2022-12-15 19:09:25 +01:00
Sébastien Carceles
b8ff0ba4a2
feat(demarche): sign up when prefilling a dossier (#8247)
* store prefill params in session

Instead of using query params on /dossier/new, we assume the user comes
from /commencer/:path, which is the new prefill link.

There, we store the prefill params in session, and use them to prefill
the dossier when creating it, in /dossiers/new.

* spec: cover the case

* review: serialize with json instead of yaml

* review: rename method

* review: store only query params

* review: comment why we dont override already stored params
2022-12-15 10:58:17 +01:00
Lisa Durand
89730b485b add bulk action feature for 'passer_en_instruction' 2022-12-15 10:04:25 +01:00
Paul Chavard
5dfb96383a fix(types_de_champ): ensure we always reset dossier after demarche changes 2022-12-14 17:42:27 +01:00
Paul Chavard
1f54986ab8 clean(admin): remove unused code from old controller 2022-12-14 17:42:27 +01:00
Colin Darie
3a9a71079a
Merge branch 'main' into pj-en-construction-replace 2022-12-14 16:59:48 +01:00
Paul Chavard
1b95809f14 refactor(dossier): flatten champ attributes 2022-12-14 13:03:06 +01:00
Paul Chavard
0d10d36cb0 Revert "Merge pull request #7907 from tchak/feat-cond-repetitions"
This reverts commit 1900f8ff4c, reversing
changes made to febffc2d64.

# Conflicts:
#	app/models/dossier.rb
2022-12-14 11:25:45 +01:00
Colin Darie
4049240c2c
feat(piece_justificative): allow user to replace a PJ for dossier en_construction 2022-12-14 09:58:15 +01:00
Colin Darie
4824363879 refactor(attachment): rename user_can_download -> explicit view_as
- link: shows a simple link to open attachment
- download: shows complete DSFR download UI
2022-12-08 20:36:15 +01:00
sebastiencarceles
3939644030 validate prefilled champs when editing brouillon 2022-12-08 15:27:39 +01:00
sebastiencarceles
24802985a2 feat(dossier): prefill dossier from query params 2022-12-08 15:27:39 +01:00
Paul Chavard
d513c364d8 feat(cond): enable conditional on champs in repetitions 2022-12-08 09:38:12 +01:00
Paul Chavard
52c8fc7e8d feat(api_token): api v2 use new token 2022-12-07 18:19:37 +01:00
Paul Chavard
a47a056ee8 feat(api_token): api v1 use new token 2022-12-07 18:19:37 +01:00
Paul Chavard
3c21090a88 feat(api_token): add profile api token card 2022-12-07 18:19:37 +01:00
Paul Chavard
3d1f57df83 feat(api_token): add api token controller 2022-12-07 18:19:37 +01:00
Paul Chavard
bb47e8d2ab fix(dossier): dossier.repasser_en_construction! should take disable_notification 2022-12-07 13:14:59 +01:00
Paul Chavard
b8a9b7223c refactor(groupe_instructeur): improuve controller 2022-12-06 12:01:54 +01:00
Paul Chavard
ed4d5cb36a refactor(demarche): make declarative demarche processing syncroneous 2022-12-06 11:41:25 +01:00
Martin
7c65af3be0 poc(batch_operation_alert): simplier wording 2022-12-06 11:28:48 +01:00
Martin
b0ae2e8a0f clean(spec): rubocopify / fix specs 2022-12-06 11:28:48 +01:00
Lisa Durand
6859882a58 display batch operation alert to instructeur groups not only instructeur 2022-12-06 11:28:48 +01:00
Lisa Durand
c52443f221 change flash alert wording and display message in show if dossier is in batch 2022-12-06 11:28:48 +01:00
Lisa Durand
1beb219fdd display batch operation alerts 2022-12-06 11:28:48 +01:00
Martin
e5944eed34 poc(batch_operation): habtm groupe instructeurs, permettra de visualiser plus facilement les batch en cours pour les instructeurs du meme groupe 2022-12-06 11:28:48 +01:00
Martin
eaf72162da poc(batch_operation): some rewrite to avoid various conflict (when an instructeur try to create a job with an incompatible dossier regarding the current task). also soome cleanup to isole spec in least involved model 2022-12-06 11:28:48 +01:00
Martin
7a51ecec5d poc(batch_operation): quand un dossier est dans un batch, impossible de faire les actions : archive, unarchive, follow, unfollow, passer_en_instruction, repasser_en_construction, repasser_en_instruction, terminer, restore, destroy, extend_conservation 2022-12-06 11:28:48 +01:00
Martin
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
Colin Darie
a2e80cfcca fix(clone-rescue): when record was invalid 2022-12-05 18:19:17 +01:00
simon lehericey
8771205679 clean(flipper): remove unused expert_not_allowed_to_invite 2022-12-05 12:22:29 +01:00
Colin Darie
b9d6397a9b
fix(pj_template): private proxy template url so their links are non expirable
Closes #7920
2022-12-05 11:30:00 +01:00
Colin Darie
0a114270af refactor(attachment): update Attachment::EditComponent everywhere 2022-12-05 10:47:10 +01:00
Colin Darie
b13c5e56f6 refactor(piece_justificative): UX follows mockups 2022-12-05 10:47:10 +01:00
Colin Darie
636645f686 refactor: minor piece_justificative_multiple? question mark use 2022-12-05 10:47:10 +01:00
Colin Darie
a726350f0d feat(procedure): allow admin to enable multiple uploads for piece justificative on existing procedures 2022-12-05 10:47:10 +01:00
Colin Darie
7ae6efe776 refactor(attachment): remove replace feature 2022-12-05 10:47:10 +01:00
Colin Darie
b8296c6d4d feat(piece_justificative): supports multiple files
Closes #7924
2022-12-05 10:47:10 +01:00
Kara Diaby
f5e4c28fc1 controller 2022-12-02 11:30:48 +01:00
Paul Chavard
886a409abf fix(dossier): fix links to empty pdf templates 2022-12-01 17:35:01 +01:00
Paul Chavard
ece68076a7 feat(dossier): add some metadata to archive and remove operation log 2022-11-30 16:20:13 +01:00
Paul Chavard
a90dada104 fix(patron): dossier should have a procedure and champ should delegate to dossier 2022-11-30 10:54:03 +01:00
Paul Chavard
1fb051c3cc refactor(attestation_template): remove unused code 2022-11-29 19:36:56 +01:00
simon lehericey
bffd8015d8 fix(avis_controller): check revoked avis by default 2022-11-29 16:21:06 +01:00
simon lehericey
801d594efd fix(avis_controller): revoked_acl on telecharger_pjs 2022-11-29 16:21:06 +01:00
simon lehericey
a84269e66e fix(avis_controller): revoked acl on bilans_pdf 2022-11-29 16:21:06 +01:00
simon lehericey
d764959659 fix(avis_controller): revoked acl on create_commentaire 2022-11-29 16:21:06 +01:00
simon lehericey
8929af2767 fix(avis_controller): revoked acl on messagerie 2022-11-29 16:21:06 +01:00
simon lehericey
71dd0b99ab fix(avis_controller): revoked acl on update_expert 2022-11-29 16:21:06 +01:00
simon lehericey
531cbf2612 fix(avis_controller): revoked acl on update 2022-11-29 16:21:06 +01:00
simon lehericey
3be17da70e fix(avis_controller): revoked acl on update 2022-11-29 16:21:06 +01:00
simon lehericey
6aa2ccacd4 fix(avis_controller): fix revoked acl on create_avis 2022-11-29 16:21:06 +01:00
simon lehericey
c17bc50def fix(avis_controller): acl on instruction 2022-11-29 16:21:06 +01:00
simon lehericey
f500cb8dc7 fix(avis_controller): procedure do not show revoked avis 2022-11-29 16:21:06 +01:00
simon lehericey
dcae06ae84 fix(avis_controller): index do not linked to revoked avis 2022-11-29 16:21:06 +01:00
Paul Chavard
53eb3e6ad0 chore(dossier): cleanup champs nested attributes 2022-11-29 11:10:59 +01:00
Paul Chavard
ee30a95847 fix(graphql): check if tokens are revoked 2022-11-25 16:27:11 +01:00
Colin Darie
611120f31f chore(dossier_transfer): notice after transfer invitation sent 2022-11-25 13:34:12 +01:00
Paul Chavard
e3da500614 fix(graphql): variables should be a plain hash 2022-11-24 18:21:33 +01:00
Paul Chavard
a760e0a698 feat(demarche): enable revisions for all 2022-11-24 17:35:33 +01:00
Paul Chavard
b3a35ab3aa fix(graphql): fix playground when admin has no procedures or dossiers 2022-11-24 16:18:08 +01:00
Paul Chavard
6f6f4bc60d fix(stats): exported file should be csv
fix #7040
2022-11-24 15:40:46 +01:00
Christophe Robillard
3539b00652 search admins by email 2022-11-24 15:05:46 +01:00
simon lehericey
8acdf7f5ee feat(team_account): link row to admin view 2022-11-24 14:50:26 +01:00
simon lehericey
18bb26a7f2 feat(team_account): add procedures count 2022-11-24 14:50:26 +01:00
Paul Chavard
234975b806 feat(graphql): expose groupe_instructeur state and update mutation 2022-11-24 14:33:29 +01:00
Martin
bb993d552e amelioration(avis): sur une page listant les avis en attente sur une procedure, on remonte le dernier avis demandé en premier 2022-11-24 14:23:06 +01:00
Paul Chavard
e395ab5c87 fix(invite): do not render menu when invite not found 2022-11-24 09:43:19 +01:00
Paul Chavard
cafda4f6f0 refactor(attestation_template): move to procedure 2022-11-23 12:26:26 +01:00
Christophe Robillard
8e95c6a2ba search procedures by libelle 2022-11-22 17:08:17 +01:00
simon lehericey
30b53ec927 feat(procedure_admins): allow self remove from procedure 2022-11-22 16:41:20 +01:00
simon lehericey
66e9b74121 feat(manager): select team_user base on attribute 2022-11-17 16:29:08 +01:00
simon lehericey
fcfe09f05a refactor(user): rename delete_and_keep_track_dossiers 2022-11-16 17:52:47 +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
Colin Darie
3ea57a0416 chore(bundle): bump pundit 2.1.0 => 2.2.0
Fix administrate autoloading.
2022-11-15 17:28:04 +01:00
Colin Darie
a4ed1d07af chore(manager): disable pagination count on massive tables 2022-11-15 17:28:04 +01:00
Colin Darie
a28e31bd97 chore(bundle): update administrate 0.16 => 0.18 2022-11-15 17:28:04 +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
d245e12559 remove render_views in spec and correct the way to retrieve dossiers 2022-11-15 10:51:36 +01:00
Lisa Durand
ba0799b684 it displays a message if instructor is looking for a dossier that is not in his instructor group 2022-11-15 10:51:36 +01:00
Martin
05dcf5e7cf amelioration(usager.liste_des_dossier): ajout du bouton pour cloner un dossier 2022-11-14 09:13:54 +01:00
Paul Chavard
1cac88a621 refactor(dossier): permit old attributes format for smooth migration 2022-11-11 09:17:42 +00:00
Paul Chavard
e6288c39f2 refactor(dossier): champs -> champs_public 2022-11-10 22:44:39 +00:00
Christophe Robillard
cc35788d26 extract computation to controller 2022-11-10 18:02:20 +01:00
Christophe Robillard
3a15178cee use common layout for all procedures and admins 2022-11-10 18:02:20 +01:00
Christophe Robillard
5f5b6bf7c7 use specific route for all admins 2022-11-10 18:02:20 +01:00
Paul Chavard
5e87539d6d fix(groupe_instructeur): add explicit order to groupe_instructeurs 2022-11-09 10:56:40 +00:00
Martin
fe0411203f amelioration(types_de_champ/editor): en mode edition d'un champ de type explication, permet de choisir d'afficher ou pas cette explication derriere un collapse 2022-11-08 17:49:24 +01:00
Martin
a1dbc40f57 evolution(helpscout.webhooks): mise en place des rappel web afin de notifier l'equipe tech des bug identifies par le support
Co-authored-by: Colin Darie <colin@darie.eu>
2022-11-08 17:00:03 +01:00
simon lehericey
db3ebfa6d2 feat(FranceConnect): list and allow to unlink FC identities 2022-11-08 16:17:06 +01:00
Christophe Robillard
c0231dffa2 extract ProceduresFilter class 2022-11-08 12:14:26 +01:00
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
Eric Leroy-Terquem
aca2775874 remove routee? method 2022-11-04 12:03:44 +01:00
Eric Leroy-Terquem
5578115acf update routee? method 2022-11-04 12:03:43 +01:00
Eric Leroy-Terquem
110953e450 constraint logic to active groups 2022-11-04 12:03:43 +01:00
Eric Leroy-Terquem
63ae328bee update wording and cards order 2022-11-04 12:03:43 +01:00
Eric Leroy-Terquem
b419c48262 toggle routing when adding or deleting groupe_instructeurs 2022-11-04 12:03:43 +01:00
Paul Chavard
33fc8a45ab feat(emails): show email errors on procedure page 2022-11-04 09:08:41 +00:00
Paul Chavard
5487ce0458 feat(graphql): implement stored queries 2022-11-02 11:26:57 +01:00
Kara Diaby
329869b929 controllers 2022-11-02 10:19:43 +01:00
Paul Chavard
e7766694d3 fix(messages): retry stale blobs 2022-11-02 09:19:51 +01:00
Paul Chavard
c9adfc3bfa fix(procedure): only set replaced_by if the procedure is effectively published 2022-11-01 15:53:58 +01:00
Martin
1b1568b2c2 remaniement(Administrateurs::ArchivesController): ne passe pas par la table des traitement pour compter le nombre de dossier traites par mois. Depuis que nous avons redescendu la colonne processed_at sur la table dossiers, ce n'\est plus necessaire et le code est compliqué a comprendre 2022-11-01 12:43:49 +01:00
Paul Chavard
8cf9aec0f7 refactor(procedure): expose procedure tags on model 2022-10-31 19:50:25 +01:00
Christophe Robillard
4308f1af26 improve readibility 2022-10-31 16:12:02 +01:00
Christophe Robillard
0799c40aaa add pagination for all demarches view 2022-10-31 16:12:02 +01:00
Christophe Robillard
22fe357d75 list all demarches, filtered by status 2022-10-31 16:12:02 +01:00
Christophe Robillard
9abf1c4af3 list all demarches, filtered by zones 2022-10-31 16:12:02 +01:00
Paul Chavard
2ed26e8699 fix(graphql): properly handle variables json parse errors 2022-10-31 11:32:30 +01:00
Paul Chavard
473a772032 feat(graphql): on api exceptions log query and variables 2022-10-28 12:18:21 +02:00
simon lehericey
6af4fe624a refactor(service): explicit call to service job to avoid test side effect 2022-10-25 14:44:43 +02:00
Kara Diaby
cf8e6a9c67 controller 2022-10-21 19:13:12 +02:00
simon lehericey
fbf089d60e refactor(dossier): rename check_mandatory_champs -> check_mandatory_and_visible_champs 2022-10-18 11:13:41 +02:00
Paul Chavard
736e0b0731 fix(routage): fill dossier groupe instructeur in some edge cases 2022-10-14 17:29:56 +02:00
simon lehericey
40a3fff593 perf(dossiers_controller): do not load pj template in update, -10ms 2022-10-13 22:36:56 +02:00
Paul Chavard
d409b6f4ef feat(dossier): do not save dossier on submit 2022-10-13 14:44:46 +02:00
Paul Chavard
1fd1878370 feat(jobs): add request_id to jobs payload 2022-10-12 14:32:23 +02:00
Damien Le Thiec
29a97fac43
Merge branch 'main' into feature/add_rna_type_de_champs 2022-10-11 18:59:45 +02:00
simon lehericey
7672ad3fe9 fix(editor champ): do not raise on destroy replay 2022-10-11 16:27:49 +02:00
Damien Le Thiec
73f6063c87
Merge branch 'main' into feature/add_rna_type_de_champs 2022-10-11 15:36:46 +02:00
Damien Le Thiec
2e8c0512a5 Remove skip_cleanup option 2022-10-11 15:11:51 +02:00
Damien Le Thiec
bcdc9c18ae Remove skip_fetch_data mechanism 2022-10-11 11:52:59 +02:00
simon lehericey
97529ab6af refactor(user dossier): move ruby logic to controller 2022-10-11 11:39:05 +02:00
simon lehericey
32e01b13ef refactor(user dossier): mutualize update/update_brouillon 2022-10-11 11:39:05 +02:00
simon lehericey
7e03f0c825 refactor(dossier_preloader): add load_one api 2022-10-10 12:31:40 +02:00
simon lehericey
f32b05e8b4 perf(dossier controller): use DossierPreloader 2022-10-10 12:31:40 +02:00
Eric Leroy-Terquem
1177d861f4 add validation on routing_criteria_name 2022-10-10 09:48:11 +02:00
Christophe Robillard
bdcb451d3c procedure publiee must have one zone at least 2022-10-07 10:48:35 +02:00
Christophe Robillard
4d2c37ffdf extract checkboxes zones to dedicated page 2022-10-07 10:48:35 +02:00
Christophe Robillard
94ca93e130 can choose multiple zones 2022-10-07 10:48:35 +02:00
Damien Le Thiec
0131a41266
Merge branch 'main' into feature/add_rna_type_de_champs 2022-10-05 12:38:24 +02:00
Damien Le Thiec
93e89c8968 Fix small bugs rna controller and add tests 2022-10-05 12:31:34 +02:00
Damien Le Thiec
0d9f02c88d First draft autofetch data for RNA 2022-10-04 22:11:01 +02:00
Martin
54a47fadae fix(sentry/3422144920): old email using TargetUserLink creates confusing errors 2022-10-04 11:41:32 +02:00
simon lehericey
77289b7a80 perf(admin_procedure_controller): same with publication page 2022-10-03 20:49:38 +02:00
simon lehericey
e043725d51 refactor(admin_procedure_controller): simplify AR include 2022-10-03 20:49:38 +02:00
simon lehericey
adbb655a4a perf(procedure edition): validate only once to avoid reload tdc with n+1 2022-10-03 20:49:38 +02:00
simon lehericey
122c8107a5 fix(web_graphql): fix graphql web playground authorization 2022-10-03 18:08:03 +02:00
Martin
aceb8996c1 feat(instructeur/procedure#show): enhance sort by notifications as planned by UX
Update app/javascript/controllers/checkbox_controller.ts

Co-authored-by: Paul Chavard <github@paul.chavard.net>
2022-09-30 10:29:51 +02:00
Paul Chavard
462cc41caa refactor(block): use block? instead of repetition? 2022-09-29 17:49:14 +02:00
Paul Chavard
b0aa777315 refactor(ujs): france_connect controller to use turbo 2022-09-29 16:51:54 +02:00
Paul Chavard
df47f4a7ab feat(graphql): new tokens should carry administrateur_id 2022-09-29 11:58:58 +02:00
simon lehericey
8efd305256 add upper_tdcs to condition_form 2022-09-28 10:06:31 +02:00
Martin
ba6c5b4db7 feat(instructeur/procedure#index): enhance filter to support processed_at and state [plus en_instruction_at/since]
feat(filter): enable filter on dossiers.state, dossiers.processed_at(since), dossiers.en_instruction_at(since)
2022-09-27 17:19:54 +02:00
Colin Darie
fe2b3ec936 feat(instructeurs/dossier): explicit error about impossible transition due to incomplete etablissement 2022-09-21 16:00:59 +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
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
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
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
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
64ce2719ed feat(services): accept an optional SIRET
Closes #7359
2022-09-06 09:23:52 +02:00
simon lehericey
d612c39438 fix(admin procedure preview): redirect is procedure invalid 2022-09-05 10:18:33 +02:00
Kara Diaby
98f4250214 controller 2022-09-02 16:23:27 +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
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
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
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
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
Christophe Robillard
e087582f57 Can get dossier vide if procedure is closed 2022-08-05 16:00:08 +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
707ea37b33
chore(sentry): tag dossier & procedure ids on dossier endpoints 2022-08-03 10:34:10 +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
Paul Chavard
782af3322a fix(patron): when rendering “patron” champs should have dossier 2022-07-28 12:10:32 +02:00
Paul Chavard
b616a4c1e9 fix(stats): remove Helpscout from stats page 2022-07-27 18:26:25 +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
simon lehericey
369141c7f7 Fix(procedure library): replace infinite list by a basic search 2022-07-26 12:38:05 +02:00
Colin Darie
cdbee11c2e chore(patron): drop down list with other input 2022-07-25 13:45:37 +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
Martin
87af7f3261 feat(exports): implement admin export 2022-07-20 14:08:33 +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
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
Paul Chavard
d00a91aea5 feat(dossier): check conditions on en construction dossier 2022-07-13 10:49:17 +02:00
Paul Chavard
120b593015 feat(dossier): toggle conditional champs visibility 2022-07-12 17:33:42 +02:00
simon lehericey
6f7fb9841c fix: make edition annotation work again 2022-07-12 14:17:05 +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
simon lehericey
0179a0a826 update conditions_controller 2022-07-12 10:44:40 +02:00
simon lehericey
2fee0ddfd4 feature: type_de_champ_controller 2022-07-12 10:44:40 +02:00
simon lehericey
2da0aa6525 refactor: add draft helper 2022-07-12 10:44:40 +02:00
simon lehericey
5bee34cc34 refactor: before_action 2022-07-12 10:44:40 +02:00
Colin Darie
9e26ee932e
feat(champ): customizable placeholders for text & textarea champs
Closes #7429
2022-07-11 17:16:20 +02:00
simon lehericey
1751ddf713 add condition controller 2022-07-06 16:35:23 +02:00
Paul Chavard
9b45dcea3f feat(demarche): add possibility to reset draft revision 2022-07-06 14:18:01 +02:00
simon lehericey
a475515f3e use params[:stable_id] 2022-07-05 11:53:18 +02:00