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
Martin
186d4e6539
correctif(ChampDepartement): gere les departement a 3 codes
2022-12-27 14:55:57 +01:00
Martin
48c80e9387
correctif(api/v1): ajoute la methode manquante for_api sur le type de champs departement
2022-12-27 11:45:43 +01:00
Paul Chavard
4a4ce67ef6
fix(dossier): explicitly send draft notification email
2022-12-26 22:02:33 +00:00
Paul Chavard
00218fded2
fix(dossier): update spec
2022-12-21 14:03:02 +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
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
dd74834689
amelioration(attestation.et.mail): desactive les tags sur les champs conditionnés et informe l'usager que ca arrivera
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
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
Eric Leroy-Terquem
2645ac85f7
update wording and order in types de champ select
2022-12-16 09:30:36 +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
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
sebastiencarceles
cdd790e3d3
review: document prefilling with json or array injection
2022-12-08 15:27:39 +01:00
sebastiencarceles
bf03e3b35a
review: prefix typed ids with 'champ_'
2022-12-08 15:27:39 +01:00
sebastiencarceles
1e21a3d3e1
review: query the db only once
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
16a48c02aa
feat(cond): add tests
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
73ff739c52
refactor(graphql): extract stored queries spec in a separate file
2022-12-07 12:06:55 +01:00
Paul Chavard
b8a9b7223c
refactor(groupe_instructeur): improuve controller
2022-12-06 12:01:54 +01:00
Colin Darie
4ba76e6844
fix(api-v1): dossier -> avis -> piece_justificative_file_attachment relation name
2022-12-06 11:48:42 +01:00
Martin
6556fda218
clean(spec): rubocopify / fix specs
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
7b3cbcb8f6
display batch operation alerts
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
beb39027d0
poc(batch_operation.ui): implement simple ui to trigger a batch of current page
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
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
1138604748
feat(api): PieceJustificativeChamp: deprecate file
in favor of files
2022-12-05 10:47:10 +01:00
Colin Darie
6a0379086d
chore(piece_justificative): continue attachments refactor
2022-12-05 10:47:10 +01:00
Paul Chavard
00556715d6
fix(typography): fix quotes
2022-12-01 17:59:11 +01:00
Paul Chavard
886a409abf
fix(dossier): fix links to empty pdf templates
2022-12-01 17:35:01 +01:00
Paul Chavard
c5901fbb95
clean(type_de_champ): remove magic factory
2022-12-01 16:36:59 +01:00
Paul Chavard
1fb051c3cc
refactor(attestation_template): remove unused code
2022-11-29 19:36:56 +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
20fcfdeb5e
clean(avis_controller_spec): procedure_id: procedure.id -> procedure_id:
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
cb2e1db52e
clean(avis_controller_spec): 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
3c477691c3
clean(avis_controller_spec)
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
simon lehericey
6ad048955b
clean(avis_controller_spec)
2022-11-29 16:21:06 +01:00
simon lehericey
644b88ea0e
clean(avis_controller_spec)
2022-11-29 16:21:06 +01:00
simon lehericey
d0c0d6c491
fix(spec): speed up *5
2022-11-29 16:21:06 +01:00
Paul Chavard
ee30a95847
fix(graphql): check if tokens are revoked
2022-11-25 16:27:11 +01:00
Paul Chavard
5a9ce7a331
feat(graphql): make demarche schema public
2022-11-24 18:21:33 +01:00
Christophe Robillard
3539b00652
search admins by email
2022-11-24 15:05:46 +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
4babee2591
fix(admin): ignore active column
...
the attribut should be retrieve from the user model as the administrateur is no more a devise model
2022-11-22 16:41:20 +01:00
simon lehericey
30b53ec927
feat(procedure_admins): allow self remove from procedure
2022-11-22 16:41:20 +01:00
Paul Chavard
29bdd82b59
refactor(procedure): types_de_champ -> active_revision.types_de_champ_public
2022-11-17 13:54:14 +01:00
Colin Darie
54699d35a8
test(manager): fix test after administrate upgrade
2022-11-15 17:28:04 +01:00
Colin Darie
7b9ff5ebe8
test(manager): add basic test on dossiers index & show
2022-11-15 16:30:18 +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
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
24e7de71e3
add procedures_filter specs
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
Christophe Robillard
a5fa21ca1b
add from_publication_date filter
2022-11-09 10:41:06 +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
Paul Chavard
3ced06d59b
feat(graphql): improuve groupe instructeur query
2022-11-04 11:27:58 +00:00
Eric Leroy-Terquem
aca2775874
remove routee? method
2022-11-04 12:03:44 +01:00
Eric Leroy-Terquem
b51770c151
toggle routing after groupe instructeur update
2022-11-04 12:03:44 +01:00
Eric Leroy-Terquem
110953e450
constraint logic to active groups
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