Colin Darie
0a22c1d2f0
chore(email): log smtp errors
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
Colin Darie
07167cead9
chore(schema): create email_events
2023-01-10 16:07:35 +01:00
Colin Darie
0a890acc33
fix(conditional): huge perf improvement by caching champ visibility
...
Hyper nécessaire lorsqu'il y a des champs qui dépendent d'autres champs
en cascade.
Co-authored-by: simon lehericey <mail@simon.lehericey.net>
Co-authored-by: mfo <martin@sharypic.com>
2023-01-10 11:41:08 +01:00
Paul Chavard
5128b9a086
refactor(demarches): use turbo_stream template
2023-01-10 09:48:32 +01:00
Lisa Durand
67c104c8eb
affiner le scope
2023-01-09 11:58:51 +01:00
Lisa Durand
25a7fa5a34
add bulk action 'follow'
2023-01-09 11:58:51 +01:00
Paul Chavard
5a4cefc5c5
fix(dossier): fix rebase with drop down options
2023-01-06 14:15:46 +01:00
Sébastien Carceles
06b8a0f734
feat(dossier): prefill boolean champs ( #8381 )
2023-01-06 14:01:59 +01:00
Paul Chavard
dfe65136be
refactor(repetition): add row_id to champs
2023-01-05 18:04:54 +01:00
Paul Chavard
940f8c0474
fix(graphql): fix departements with alphanumeric codes
2023-01-05 17:33:03 +01:00
Lisa Durand
4afb873afc
feedbacks from Martin
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
Lisa Durand
d7ebb67889
implement first step - accepte without motivation and PJ
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
26e02c7173
fix(template): trix will transform double spaces in
2023-01-05 13:23:24 +01: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
Paul Chavard
c4a30084fe
refactor(virus_scan): remove lock
2023-01-04 12:12:11 +01:00
Paul Chavard
6e18090fb3
refactor(virus_scan_result): use column instead of metadata on blob
2023-01-04 12:12:11 +01:00
Paul Chavard
d469bca0ae
refactor(watermark): use column instead of metadata on blob
2023-01-04 12:07:08 +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
76301d4c32
correctif(api_entreprise_token): les nouveaux tokens stockent les roles dans sous la clé scopes et non plus roles
2023-01-03 15:32:50 +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
mfo
1f5db1faf2
Merge pull request #8340 from mfo/US/fix-champs-pays
...
sentry(3830513995): champs pays peut avoir un external_id a '', test la presence d'external_id sinon on peut renvoyer du nil via Champs::PaysChamp.name
2022-12-28 09:51:18 +01:00
Martin
a2d3ec7a21
sentry(3830513995): champs pays peut avoir un external_id a '', test la presence d'external_id sinon on peut renvoyer du nil via Champs::PaysChamp.name
2022-12-27 16:28:34 +01:00
mfo
31735e16d8
Merge pull request #8339 from mfo/US/fix-departement-champs
...
Us/fix departement champs
2022-12-27 16:01:35 +01:00
Martin
186d4e6539
correctif(ChampDepartement): gere les departement a 3 codes
2022-12-27 14:55:57 +01:00
Paul Chavard
9b3fa4dd3c
refactor(revision): changes should be domain objects
2022-12-27 10:58:53 +00: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
Martin
3732c079a7
correctif(champ.normalize): enleve les null chars uniquement si il y en a. sinon on rappel value=() avec nos champs surchargeant ce setter
2022-12-27 11:43:34 +01:00
Paul Chavard
0b10c73bcf
feat(prefill): allow to prefill private annotations
2022-12-26 22:14:17 +00:00
Paul Chavard
4a4ce67ef6
fix(dossier): explicitly send draft notification email
2022-12-26 22:02:33 +00:00
Damien Le Thiec
9e083ea3f7
Merge branch 'main' into feature/prefill_civility
2022-12-26 11:31:52 +01:00
mfo
62813f3d74
Merge pull request #8323 from tchak/fix-graphql-champs
...
feat(graphql): add pays champ to API
2022-12-22 13:51:02 +01:00
mfo
e3bf0d8fec
Merge pull request #8327 from tchak/feat-rebase-after-repasser-en-instruction
...
feat(dossier): rebase after repasser en instruction
2022-12-22 13:50:43 +01:00
Paul Chavard
f4f38982b4
feat(dossier): rebase after repasser en instruction
2022-12-22 13:44:03 +01:00
Paul Chavard
6363206c44
fix(dossier): when rebase creates a champ always push in to champs
2022-12-22 13:44:03 +01:00
Paul Chavard
4c516a6991
feat(dossier): allow to rebase champs with value made mandatory
2022-12-22 13:08:04 +01:00
Paul Chavard
072156d38e
feat(graphql): add pays champ to API
2022-12-22 11:56:45 +01:00
Paul Chavard
bd9fe7eb7c
feat(export): add pays, region and departement codes
2022-12-21 14:03:02 +01:00
Paul Chavard
3f0f5e381f
refactor(regions): champ regions to use simple select
2022-12-21 14:03:02 +01:00
Paul Chavard
e0b0a42bc3
refactor(departements): champ departements to use simple select
2022-12-21 14:03:02 +01:00
Paul Chavard
f7c1dff22a
refactor(pays): champ pays to use simple select
2022-12-21 14:03:02 +01:00
François Vantomme
993c1b8676
fix(batch operation): ensure to append bigint to SQL array
2022-12-21 11:59:55 +01:00
Christophe Robillard
11a18516b2
remove feature flag zonage
2022-12-21 09:02:16 +01:00
Paul Chavard
227296682b
fix(dossier): clone should include more attachments
2022-12-20 21:30:32 +01:00
Colin Darie
c673950e56
fix(instructeurs): behavior of sort by notifications checkbox (updated_at desc)
2022-12-20 15:51:47 +01:00
Damien Le Thiec
c4e427642f
Allow prefill civility
2022-12-20 14:38:05 +01:00
Sébastien Carceles
e4a7a4c391
hide values and examples for unprefillable champs ( #8309 )
...
* hide values and examples for unprefillable champs
* put prefillable champs first
2022-12-20 13:37:25 +00: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
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
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
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
7ff04c1a05
style(instructeurs): human/i18n value for state filter
2022-12-15 09:34:10 +01:00
mfo
74cd385b35
Merge pull request #8274 from tchak/fix-parent-dossiers
...
fix(dossier): parent_dossiers is really cloned_dossiers
2022-12-15 09:20:10 +01:00
Paul Chavard
243a8301bb
fix(dossier): authorize passage en instruction if auto archive is on and is in the past
2022-12-14 22:16:13 +01:00
Paul Chavard
59bdd4bd92
fix(tags): relax parser roules
2022-12-14 17:53:36 +01:00
Paul Chavard
9149e0fcd7
feat(revision): allow more dossiers to rebase
2022-12-14 17:42:27 +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
Paul Chavard
ece70efbea
refactor(dossier): improuve dossiers_safe_scope on batch operation
2022-12-14 09:45:53 +01:00
Paul Chavard
9510142cd8
fix(dossier): parent_dossiers is really cloned_dossiers
2022-12-14 09:44:19 +01:00
Paul Chavard
7929b7d0d7
clean(api_token): remove administrateur token support
2022-12-08 17:35:21 +01:00
sebastiencarceles
69d61913f5
review: unauthorize complex champs
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
11fed2c934
review: champs exist because stable ids exist
2022-12-08 15:27:39 +01:00
sebastiencarceles
a5c1c68a91
review: style
2022-12-08 15:27:39 +01:00
Sébastien Carceles
9dfb498806
review: prefer if to unless
...
Co-authored-by: LeSim <mail@simon.lehericey.net>
2022-12-08 15:27:39 +01:00
Damien Le Thiec
006a1257b5
Refacto prefill_params construction (remove merge)
2022-12-08 15:27:39 +01:00
sebastiencarceles
373e8aeadb
review: validate prefilled champs only
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
ab30af5fe5
review: move Prefillable to concern directory
2022-12-08 15:27:39 +01:00
sebastiencarceles
3939644030
validate prefilled champs when editing brouillon
2022-12-08 15:27:39 +01:00
sebastiencarceles
79ef48cafb
make the dossier prefillable
2022-12-08 15:27:39 +01:00
sebastiencarceles
f4e1a09e73
prepare prefilled values from ctrl params
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
52a32051c4
feat(dossier): add dossier.champs_public_all
2022-12-08 09:38:12 +01:00
Paul Chavard
6ce7064ffd
feat(dossier): add repetition champs to champs_for_condition
2022-12-08 09:38:12 +01:00
simon lehericey
86cda6a0b9
fix(timestamp spec): rewind io after before_save check
2022-12-07 19:28:01 +01:00
Paul Chavard
ebbada752f
feat(api_token): add APIToken model
2022-12-07 18:19:37 +01:00
Paul Chavard
4fe081e4be
fix(dossier): send notifications on declarative dossiers
2022-12-07 13:14:59 +01:00
Paul Chavard
bb47e8d2ab
fix(dossier): dossier.repasser_en_construction! should take disable_notification
2022-12-07 13:14:59 +01:00
Colin Darie
f4d403a81c
fix(apiv1): piece_justificative continue to returns a single attachment
2022-12-06 15:47:06 +01:00
Martin
2eaa06b22b
correctif(export.pjs): sur l'export, les champs de type piece justificative renvoyent un tableau de la meme dimension quelque soit le nombre de pj joint
2022-12-06 15:22:53 +01:00
Paul Chavard
b8a9b7223c
refactor(groupe_instructeur): improuve controller
2022-12-06 12:01:54 +01:00
Paul Chavard
9fe93ded7f
refactor(groupe_instructeur): add instructeur.find_or_invite
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
Paul Chavard
ed4d5cb36a
refactor(demarche): make declarative demarche processing syncroneous
2022-12-06 11:41:25 +01:00
Martin
91ef618a42
clean(code): stick to usage of present?/empty? instead of count zero etc
2022-12-06 11:28:48 +01:00
Martin
b5f69c8961
review(dossier.reload): evite de recharger le batch qui peut etre confusant
2022-12-06 11:28:48 +01:00
Martin
7c65af3be0
poc(batch_operation_alert): simplier wording
2022-12-06 11:28:48 +01:00
Martin
ea8bd13bcf
poc(batch_operation.purge): nettoie les batch terminé ou inutiles
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