Paul Chavard
d35ceb7214
fix(champs): finish EditableChampComponent refactor
2022-09-08 11:26:29 +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
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
simon lehericey
898badb579
a champ is mandatory when visible with a mandatory tdc
2022-08-09 10:25:47 +02:00
Paul Chavard
a24885c2ee
feat(champ): can condition on other option
2022-08-04 15:28:54 +02:00
Paul Chavard
782af3322a
fix(patron): when rendering “patron” champs should have dossier
2022-07-28 12:10:32 +02:00
Paul Chavard
d9eea35ae8
fix(dossier): decoralate dropdown behaviour from autosave
2022-07-21 18:40:16 +02:00
Paul Chavard
3e40b6d7bc
fix(graphql): handle annotations inside blocks
2022-07-21 14:54:14 +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
Paul Chavard
6801b04b7b
feat(type_de_champ): type_de_champ editor in stimulus/turbo
2022-06-17 11:04:09 +02:00
Paul Chavard
564daeffe8
perf(dossier): improuve dossier preloading perf
2022-06-14 09:04:26 +01:00
Paul Chavard
6f98def288
refactor(revision): remove old code
2022-05-31 08:58:53 +02:00
simon lehericey
abc3681053
delegate stable_id to tdc
2022-05-24 15:38:50 +02:00
Paul Chavard
6c2a3bafa4
refactor(dossier): champs order by coordinate
2022-05-18 11:20:50 +02:00
Paul Chavard
4523c0590c
fix(dossier): champs repetable in champs private
2022-05-04 15:57:25 +02:00
Paul Chavard
b94bc8fd8a
refactor(dossier): use champ id as champ attributes key
2022-05-03 16:14:54 +02:00
simon lehericey
ea361643be
types_de_champ -> types_de_champs_public
2022-05-03 11:05:24 +02:00
simon lehericey
44f2d93277
quick fix of sections in preview
2022-03-15 10:54:39 +01:00
Paul Chavard
c60a8970f1
perf(dossier): memoize champ.sections on dossier
2022-03-11 00:15:53 +01:00
Paul Chavard
54b559364a
feat(dossier): replace discarded with visible_by_administration
2022-03-10 14:29:40 +01:00
Paul Chavard
fc058f721d
a11y(champs): expose ids for UI on champ
2022-01-05 12:33:40 +01:00
kara Diaby
dc35d9521f
add other option to liste deroulante champ
2021-10-26 16:11:15 +02:00
Paul Chavard
d308448f02
feat(type_de_champ): add secondary label and description do linked drop downs
2021-10-26 12:18:01 +02:00
Paul Chavard
09a09d3fcf
feat(revisions): add rebased_at to champs
2021-10-20 17:26:09 +02:00
simon lehericey
354735ace4
add champ value_json jsonb column
2021-10-12 14:27:20 +02:00
Paul Chavard
ac0f50b488
Improuve champ blank check
2021-07-22 10:45:25 +02:00
Paul Chavard
dfc46a8736
Enable add descriptions to cadastres
2021-05-26 11:27:09 +02:00
Paul Chavard
c20ad5ca17
Remove the link between commentaire and user
2021-04-22 15:10:47 +01:00
Paul Chavard
5e5122a436
Prevent crash in preview where there is no siblings
2021-04-06 18:15:29 +01:00
Paul Chavard
2702660d72
Update app/models/champs/header_section_champ.rb
...
Co-authored-by: Pierre de La Morinerie <kemenaran@gmail.com>
2021-04-06 10:45:16 +01:00
Pierre de La Morinerie
3499f5af9a
models: remove invalid Dossier ↔︎ Champ inverse relationship
...
`Dossier.champs` is not really an inverse of `Champs.dossier`: when a
Champ record is created, it should not always be added to dossier.champs
(for instance if the champ is private).
NB: this breaks the workaround we added in #3907 to fix the parent
dossier not being touched in some cases (the workaround was to add an
inverse relationship, but we now have to remove it).
The new workaround is to watch for `changed_for_autosave?` on champs.
Unlike `changed?`, `changed_for_autosave?` also detects changes to
attachments. This allows us to touch both `last_champ_updated_at` and
`updated_at` in a single pass.
2021-04-06 10:26:17 +02:00
Paul Chavard
1449fbbe67
Fix multiple_drop_down_list mandatory check
2021-03-18 15:22:28 +01:00
Paul Chavard
d24ee27cac
Try to reduce the number of external data fetches
...
Only fetch external data if the external_id is the current one and data is not yet fetched
2021-03-11 14:56:37 +01:00
Paul Chavard
7eee14feef
Add ChampFetchExternalDataJob
2021-02-17 19:10:16 +01:00
Paul Chavard
a591d5528e
Add job exception log methods to champ and dossier
2021-02-05 18:56:27 +01:00
Paul Chavard
78a07ef021
Add job exception logs to dossier and champ
2021-02-04 19:27:27 +01:00
Paul Chavard
09a3cacd88
Add external_id to champs
2021-01-15 11:50:02 +01:00
Paul Chavard
a1643dad84
Add data column to champ
2021-01-14 17:31:37 +01:00
Paul Chavard
48e7822e34
Remove titres identite after a dossier is processed
2020-12-10 15:21:25 +01:00
clemkeirua
9019a8b380
ensure a dossier_id is set if possible
2020-09-30 16:50:28 +02:00
clemkeirua
61cf33e3ca
remove duplicate private champ
2020-09-04 15:40:23 +02:00
Paul Chavard
6d4425885d
Fix champ order joins sql error
2020-09-03 18:32:43 +02:00
Paul Chavard
ec72fdd164
Remove migration service
2020-09-02 11:26:26 +02:00
Pierre de La Morinerie
6328011f60
models: require belong_to associations on champ
...
- Make `champ.dossier` a requirement;
- Move the dossier_id assignation to `before_validation` (otherwise
the record is invalid, and never gets saved);
- Allow specs to only build the champ (instead of saving it to the
database), which bypasses the requirement to have a dossier.
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
11456109c0
models: explicitly mark optional belongs_to
relationship as so
...
This prepares making the `belongs_to` relationship required by default.
2020-08-18 15:57:36 +02:00
Pierre de La Morinerie
6d28069539
models: generate annotations
2020-08-12 11:45:53 +02:00
Paul Chavard
b628169053
Remove unsused drop_down_list model
2020-07-16 15:29:01 +02:00
Paul Chavard
97f91513c8
Store drop_down_list values as jsonb
2020-06-25 13:14:17 +02:00
Christophe Robillard
fb87a09c02
doesn't update dossier etablissement for siret controller
2020-05-26 18:13:20 +02:00
kara Diaby
db5fd9bd0f
fix bug on mandatory carto champ for the new map editor
2020-05-15 13:44:50 +02:00
Paul Chavard
ef2d9e1138
Expose stable_id on champ
2020-04-30 15:49:31 +02:00
Pierre de La Morinerie
1cb18e51ac
champ: return the parent dossier even when discarded
...
Dossier has a `default_scope { kept }`.
Because of that, when the parent dossier is discarded, `champ.dossier`
will return nil.
We should kill the default scope. But meanwhile, ensure that
`champ.dossier` returns even a discarded dossier.
2020-04-22 11:46:42 +02:00
Christophe Robillard
5b6044803b
forbid to create champ with same type_de_champ and same row
2020-04-06 17:39:51 +02:00
clemkeirua
6d02e6e9e8
replaced helper has_html_label? with inheritance
2020-03-24 16:54:36 +00:00
Pierre de La Morinerie
d6a9318d05
champ: fix siblings
for repetition champs
...
Fix a crash when requesting the `section_index` of a section header
in a repetition champ.
2020-02-17 17:11:17 +01:00
Pierre de La Morinerie
f8ed7ec051
form: display index of section in header
2020-02-13 11:18:46 +01:00
Paul Chavard
86b271997b
Invite experts to linked dossiers
...
closes #3669
2019-10-23 13:10:09 +02:00
Paul Chavard
eb7aba18e6
Add dossier champs and annotations types
2019-09-24 10:47:21 +02:00
Paul Chavard
b97cbd3402
Serialize champ repetition for tags
...
closes #4272
2019-09-12 17:23:18 +02:00
Paul Chavard
b266915892
Add repetitions to api
2019-08-01 10:04:35 +02:00
Pierre de La Morinerie
51aacabf13
models: fix touch not propagating when using nested attributes
...
Sometimes, when using nested attributes, touch doesn’t propagate to
parent relationships. (see https://github.com/rails/rails/issues/26726 )
Specifically, this happens in our app when updating a dossier with
only new attachements (but without changing the value of any fields).
To work around this, we need to define the parent relationship
explicitely. This is good practice anyway.
Fix #3906
2019-06-17 13:44:07 +02:00
Paul Chavard
91f2d7d706
Remove deprecated virus_scan model
2019-05-03 11:07:19 +02:00
Paul Chavard
8d093bd9ba
Fix missing dossier_id on champs inside repetition
2019-04-18 16:55:35 +02:00
simon lehericey
2f66625f18
Manager: improve dossier view
2019-02-19 14:30:14 +01:00
Paul Chavard
071448e1d9
Champ Repetition dossier editor
2019-02-04 16:19:07 +01:00
gregoirenovel
866c74ce63
Add Champ#for_api
2019-01-08 12:32:27 +01:00
gregoirenovel
66d1b7ba10
Use ternary conditions
2019-01-08 12:32:26 +01:00
gregoirenovel
9e42190148
Remove the proxy value_for_export method
...
Overload for_export instead
2019-01-08 12:32:26 +01:00
gregoirenovel
7cd50531cf
Remove the proxy string_value method
...
Overload to_s instead
2019-01-08 12:32:26 +01:00
gregoirenovel
186e362701
Enable the Layout/SpaceInsideArrayLiteralBrackets
2019-01-03 10:53:50 +01:00
Paul Chavard
5d1c24f3d8
Add type de champ repetition models (with row)
2018-12-19 15:31:11 +01:00
Paul Chavard
6706b9004f
Fix includes on api queries
2018-11-08 14:45:09 +01:00
Paul Chavard
c8c75fc254
Better handle empty user selection layers
2018-10-23 09:35:25 +02:00
Frederic Merizen
0e639030f9
[ #2179 ] Generate denormalized search terms value for Dossier
2018-07-27 11:11:52 +02:00
Frederic Merizen
7fdb523b1a
We can use the shorter syntax fort ordered_champs(_private)
...
now that the old preview is gone
2018-06-28 10:27:07 +02:00
Frederic Merizen
2f206af0d6
[ #1421 ] Make label clickable for drop-down lists
2018-06-27 17:02:46 +02:00
Frederic Merizen
e99931527b
[ #1421 ] Move pays to PaysChamp
2018-06-19 15:20:01 +02:00
Frederic Merizen
0239f936d7
[ #1421 ] Move departements to DepartementChamp
2018-06-19 15:20:01 +02:00
Frederic Merizen
5b59bce0b6
[ #1421 ] Move regions to RegionChamp
2018-06-19 15:20:01 +02:00
Frederic Merizen
95666238ea
[ #1421 ] Move piece justificative error code to piece justificative champ
2018-06-19 15:20:01 +02:00
Frederic Merizen
6af27a7190
[ #1421 ] Move same_hour / same_minute to typed champ
2018-06-19 15:20:01 +02:00
Frederic Merizen
41734092b2
[ #1421 ] Move type specific for_export code to typed champs
2018-06-19 15:20:01 +02:00
Frederic Merizen
ee8616fb97
[ #1421 ] Move type specific to_s implementations to typed champs
2018-06-19 15:20:01 +02:00
Frederic Merizen
c2f199c5aa
[ #1421 ] Move piece justificative specific validation to PieceJustificativeChamp
2018-06-19 15:20:01 +02:00
Frederic Merizen
c690d3819e
[ #1421 ] Move type-specific before_save to typed champs
2018-06-19 15:20:01 +02:00
Mathieu Magnin
927cd3c6f4
Create virus scan model to store clamav result
2018-06-12 15:12:38 +02:00
Paul Chavard
e8f3fda1f0
Add STI champ models
2018-03-29 17:45:19 +02:00
Frederic Merizen
2fa88a432b
Add missing brackets around parameters in method definitions
2018-03-20 17:54:51 +01:00
Paul Chavard
5faf4cdd84
Remove all references to old STI
2018-03-08 14:17:04 +01:00
gregoirenovel
0a9f442260
Enable some Rails cops
2018-03-06 17:18:44 +01:00
gregoirenovel
b33fd6dd37
Fix rubocop warnings
2018-03-02 15:42:20 +01:00
gregoirenovel
ee145180a3
Add a piece_justificative_file attribute to Champ
2018-02-15 11:15:23 +01:00
Paul Chavard
db42c0c0cf
Fix public and private champs scopes
2018-02-14 18:13:23 +01:00
Paul Chavard
f80a9466b9
Delegate mandatory?
to type_de_champ
2018-02-13 14:56:55 +01:00
Paul Chavard
2e4ada98e6
Add private columns to Champ and TypeDeChamp
2018-02-13 12:35:03 +01:00
Paul Chavard
52749713ab
Remove ChampPublic/ChampPrivate STI
2018-02-13 12:07:13 +01:00
gregoirenovel
142241dd16
Remove notifications
2018-02-06 14:07:20 +01:00
Mathieu Magnin
50abb36c81
[ Fix #1309 ] Format datetime before save
2018-01-30 13:49:16 +01:00
Paul Chavard
fdd6cedeb8
Remove data_provide
and data_date_format
attributes
2018-01-30 13:49:16 +01:00
Mathieu Magnin
469aca999b
Revert "Remove data_provide
and data_date_format
attributes"
...
This reverts commit 273b3f2faf
.
2018-01-19 13:20:53 +01:00
Paul Chavard
273b3f2faf
Remove data_provide
and data_date_format
attributes
2018-01-18 15:13:48 +01:00
gregoirenovel
7c93b2a0c2
.map -> .pluck when possible
2018-01-16 13:23:29 +01:00
gregoirenovel
80ed589a17
Use string interpolation
2018-01-16 11:08:57 +01:00
gregoirenovel
c3754a173f
Use map instead of inject
2018-01-16 11:08:56 +01:00
gregoirenovel
bbaebe0602
!foo.nil? -> foo.present?
2018-01-12 11:32:43 +01:00
Simon Lehericey
72bae2c374
[ fix #504 ] Dossier: draft -> brouillon
2017-12-15 11:52:09 +01:00
Mathieu Magnin
53bb7b07da
[ Fix #775 ] If champ type is a multiple drop down list then display it properly
2017-12-01 12:23:19 +01:00
Mathieu Magnin
7bfafb6fc2
Fix export for yes_no champs
2017-11-21 10:36:24 +01:00
Simon Lehericey
155a5f7826
Notification: add methods to retrieve notifications
2017-11-10 16:29:44 +01:00
Simon Lehericey
f4a8ff31b9
Champ: export multiple_drop_down_list as a [].join(', ')
2017-10-30 17:14:31 +01:00
Simon Lehericey
b658f8c8dc
Champ: export yes_no champ with oui non
2017-10-30 17:14:31 +01:00
Simon Lehericey
338911d1a8
[ fix #905 ] Champ: add for_export method which strips tag for textarea champ
2017-10-30 17:14:31 +01:00
Simon Lehericey
8dedf6fdca
[ fix #575 ] dossier updated_at is ... updated when children are updated
2017-10-24 18:12:25 +02:00
Simon Lehericey
5257d20ba0
[fix #845 ] Attestation: affiche les dates au format français
2017-10-16 18:54:19 +02:00
Simon Lehericey
2b760c85c4
[ Fix #763 ] Add annotations_privees to buggy annotation system
2017-09-27 15:08:34 +02:00
Simon Lehericey
faf2d2814b
Champ: fix indentation
2017-09-06 11:11:40 +02:00
Simon Lehericey
d4bbcdf682
Champ: add before save logic to serialize datetime and dropdownlist fields
2017-09-06 11:11:35 +02:00
Mathieu Magnin
539fc682a0
Format date to iso with dedicated method
2017-08-01 16:47:44 +02:00
Mathieu Magnin
b9522ce404
[ Fix #376 ] Before save format champ date to ISO
2017-06-12 14:05:31 +02:00
Mathieu Magnin
41a5ed59f3
[ Fix #376 ] Force every browser to use native input[type=date] on date champ
2017-06-12 14:05:31 +02:00
Simon Lehericey
4df03fc28e
ChampsService: add tests and refactor
2017-04-11 12:11:09 +02:00
Xavier J
4e6adf5bc3
Fix some tests
2016-12-26 18:37:27 +01:00
Xavier J
9a0a391c40
Exclude notification for dossier state draft and for accompagnateur comments
2016-12-26 14:38:00 +01:00
Xavier J
33c1a12b84
Add notification for champs
2016-12-26 11:47:51 +01:00
Julien Portalier
96ca5113f7
Flux de commentaires par champs
2016-11-15 18:36:20 +01:00
Xavier J
c2f014e59f
Add "99 - Étranger" in Champ département.
2016-10-19 11:33:21 +02:00
Xavier J
f1515616ff
Add 3 new type de champs : Pays, Régions et Départements
2016-10-12 17:22:56 +02:00
Xavier J
627d80277b
Disabled date picker on microsoft edge
2016-10-10 16:17:17 +02:00
Xavier J
1f1b235283
Fix bug Chrome datepicker
2016-09-22 11:31:24 +02:00
Xavier J
85e7af840a
Add drop down list on type champ list
2016-08-09 16:21:39 +02:00
Xavier J
4355d4775a
Add type de champ date
...
Add hour and minute on UI for datetime
2016-06-22 11:25:41 +02:00
Xavier J
54256b1e55
Add description champs on description page.
2016-06-09 14:18:28 +02:00
Xavier J
23ab25396f
Add type champs "Address" plug at the BAN
2016-06-09 12:08:18 +02:00
Xavier J
bd61a459fb
Add verification on user dossier description for champs mandatory
2016-03-15 17:17:56 +01:00
Tanguy PATTE
5a422c75ac
rename type_champs into type_champ and change links/routes for procedure : use show instead of edit
2015-11-17 10:23:05 +01:00
Xavier J
f3d8645426
Rename TypeDeChamps to TypeDeChamp
2015-11-05 11:21:44 +01:00
Xavier J
27dbd3a878
Add auto champs objects at a dossier (same as PJ)
...
Add dynamic of Champs on the description page
Rename model 'Champs' to 'Champ'
2015-11-03 15:27:49 +01:00