Commit graph

175 commits

Author SHA1 Message Date
Martin
25f92a7760 feat(email.validator): define a strict email validator, validates Champs::EmailChamp.value only on validation context
Co-authored-by: Paul Chavard <github@paul.chavard.net>
2024-02-15 16:41:00 +01:00
Colin Darie
ea89c2e8dd
fix(attestation): tag commune_name from address 2024-02-12 15:08:05 +01:00
mfo
a0248bf08b
Merge pull request #9888 from mfo/US/validate-epci-by-code
Correctif: Le noms des EPCIs changent, ce qui bloque la validation et ou demande a resaisir le champs
2024-01-08 09:56:09 +00:00
Martin
fa07c21ec3 fix(champs.epci): epci names change over time. remap when it occurs 2024-01-04 07:17:15 +01:00
Paul Chavard
bfc809f96f feat(champs): expose more tags and api fields on rnf, address and commune 2023-11-27 15:33:05 +00:00
Christophe Robillard
daa4c28af7 add data from rnf field to export 2023-11-22 12:20:05 +01:00
Eric Leroy-Terquem
0968f02a26
Merge pull request #9648 from demarches-simplifiees/add-rnf-service
Ajout d'un nouveau référentiel : le Répertoire National des Fondations (RNF)
2023-11-08 09:06:47 +00:00
Paul Chavard
34a76d8afd feat(dossier): commune champ is an autocomplete now 2023-11-07 20:58:39 +01:00
Eric Leroy-Terquem
694cbcd0a2 feat(rnf): add rnf type_de_champ 2023-11-07 14:21:28 +01:00
Paul Chavard
869d83dda9 feat(dossier): validate on change and revalidate on input 2023-10-31 17:52:00 +00:00
Christian Lautier
5ce42afe28 Fix datetime_champ validation with negative time zone 2023-08-02 14:40:47 +02:00
Paul Chavard
95f7ca0f44 fix(cojo): invalid accreditation should result in a blank champ 2023-07-10 19:15:39 +02:00
Paul Chavard
d5820277c0 feat(cojo): add cojo type de champ 2023-07-10 14:57:34 +02:00
Paul Chavard
02dcead04a fix(commune): add fallbacks to commune name resolution 2023-06-28 09:44:21 +02:00
Paul Chavard
f2c1c071b4 Revert "Merge pull request #8899 from demarches-simplifiees/8738-validate-adresse-electronique"
This reverts commit d3eda28f35, reversing
changes made to 6394996e7f.
2023-04-28 16:10:20 +02:00
krichtof
c2461f230c validate value for email champ 2023-04-20 18:27:02 +02:00
Paul Chavard
4a2e499679 fix(commune): should accept postal codes with spaces 2023-04-20 10:16:48 +02:00
Paul Chavard
5abb6a8f12 chore(spec): remove memory store cache from tests 2023-04-13 13:10:23 +02:00
Paul Chavard
def32a3615 chore(dossier): remove fallback from commune champ 2023-04-11 10:49:01 +02:00
Paul Chavard
aaae3f461d feat(graphql): expose commune and departement information on address 2023-04-07 12:13:41 +02:00
Paul Chavard
ffb332159f fix(dossier): selecting blank option should not empty selection 2023-04-06 15:24:52 +02:00
Colin Darie
5e62aa7d21 fix(date): don't crash when date value is not parseable 2023-04-05 12:42:28 +02:00
Paul Chavard
fce78bbf30 feat(dossier): multiselect without react 2023-04-03 16:54:50 +02:00
Paul Chavard
00fc2f519f chore(spec): fix commune spec 2023-03-29 15:42:33 +02:00
sebastiencarceles
f52554b5a3 review: update value with async fetch
1 - spec cover the job which fetches external data

2 - refactor the job with guard clauses

3 - delegate update operation to the champ itself

4 - annuaire education: override the update operation
to let the value be populated by the fetched data

5 - prefilling: don't fetch data synchronously
2023-02-28 14:53:08 +01:00
sebastiencarceles
35f4874b69 allow integers only 2023-02-27 15:16:40 +01:00
sebastiencarceles
d5ffd61ab6 validate values inclusion 2023-02-16 10:49:15 +01:00
sebastiencarceles
edf90a77f3 validate epci to reject incorrect prefill values 2023-02-15 12:14:11 +01:00
Paul Chavard
8b74a6f39b fix(geometry): implement our own bbox to replace rgeo 2023-02-15 11:58:59 +01:00
Sébastien Carceles
12abf9045b add external_id and value validation 2023-02-14 09:23:11 +01:00
Paul Chavard
6924b8e46d feat(dossier): optional repetition champ should not add first row 2023-02-06 11:53:32 +01:00
Martin
dbe64cf0c8 correctif(date_champ): renforce la validation avec le parsing de la date plutot qu'une approche par regexp 2023-01-30 13:01:24 +01:00
Martin
78f9910fd0 bug(date): la validation est trop lache 2023-01-30 13:01:24 +01:00
Sébastien Carceles
49ce255e29
feat(dossier): prefill region champ (#8442)
* make regions champ prefillable

* add possible and example value

* add external_id and value validation
2023-01-24 11:25:17 +00:00
Paul Chavard
a4cbbe721e feat(types de champ): add EPCI champ 2023-01-20 11:32:36 +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
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
940f8c0474 fix(graphql): fix departements with alphanumeric codes 2023-01-05 17:33:03 +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
6e18090fb3 refactor(virus_scan_result): use column instead of metadata on blob 2023-01-04 12:12:11 +01: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
Martin
186d4e6539 correctif(ChampDepartement): gere les departement a 3 codes 2022-12-27 14:55:57 +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
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
Colin Darie
b8296c6d4d feat(piece_justificative): supports multiple files
Closes #7924
2022-12-05 10:47:10 +01:00
Lisa Durand
3953470c78 remove change on api V1 and update graphql for sensitive data 2022-11-18 11:15:16 +01:00
Lisa Durand
f34c890278 add a label for api and export for sensitive data as titre_identite_champ 2022-11-18 11:15:16 +01:00
Paul Chavard
e6288c39f2 refactor(dossier): champs -> champs_public 2022-11-10 22:44:39 +00:00
simon lehericey
9bba2093be refactor(champ): mandatory_blank_and_visible? -> mandatory_blank?
As the method does not check visibility
2022-10-18 11:13:41 +02:00
Damien Le Thiec
f30798eeec Merge branch 'feature/add_rna_type_de_champs' of https://github.com/betagouv/demarches-simplifiees.fr into feature/add_rna_type_de_champs 2022-10-11 16:18:35 +02:00
Damien Le Thiec
3acb0fc3cb Remove test external id 2022-10-11 16:18:15 +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
a19bf050ef fix(iban): format iban after validation 2022-10-11 10:43:32 +02:00
Damien Le Thiec
fa1f0fc240 Improve rna champ tests 2022-10-04 17:19:30 +02:00
Damien Le Thiec
542c5b518f Improve and connect RNA Adapter 2022-09-22 17:13:53 +02:00
Damien Le Thiec
d8afe81034 Setup RNA champ 2022-09-21 15:18:08 +02:00
Colin Darie
4e3b063b87
feat(carte/export): list geo labels 2022-09-05 11:02:51 +02:00
Paul Chavard
2d7803cd48 refactor(spec): use new procedure.types_de_champ factory 2022-08-04 12:10:32 +02:00
Paul Chavard
0f9d8b6a39 feat(dossier): exclude conditionally invisible fields from mandatory check 2022-07-12 17:33:42 +02:00
simon lehericey
5ebaf59fdb parent_id -> parent_stable_id 2022-07-05 11:53:18 +02:00
Paul Chavard
9a6a8411d3 feat(export): add déparctement info to commune champ export 2022-07-04 16:30:16 +02:00
simon lehericey
f8c7003192 fix drop down other 2022-07-01 16:05:31 +02:00
simon lehericey
fd4d543b20 fix test 2022-05-18 15:18:17 +02:00
Pierre de La Morinerie
e32c9a9f94 models: don't attempt to format invalid phone numbers
This is a defensive-programming measure, because formatting an
invalid phone number may truncate some leading numbers.
2022-03-02 09:57:03 +00:00
Pierre de La Morinerie
f35d18cd5c models: stop truncating DROM phone numbers
Fix #6996
2022-03-02 09:57:03 +00:00
Pierre de La Morinerie
5150e33212 models: ensure DROM phone numbers are valid
They were accepted before, because they were 'possible' – but now
they are explicitely considered as valid.
2022-03-02 09:57:03 +00:00
François Vantomme
14e0c68266 feat(api particulier): add MESRI field 2021-12-16 16:45:18 +01:00
François Vantomme
6ab8ac0662 feat (api particulier): add Pole emploi field 2021-12-08 10:36:25 +01:00
François Vantomme
2110ef072c feat(api particulier): add DGFiP field 2021-12-07 11:03:05 +01:00
Pierre de La Morinerie
8d89ae366b specs: minor cleanups 2021-11-23 08:07:07 +01:00
Pierre de La Morinerie
0ff95df221 specs: improve speed of phone_champ_spec
Re-use the same champ for each test. This is safe, and makes the test
go from 4s to 1s.
2021-10-26 12:03:30 +02:00
simon lehericey
87de9e38c6 allow draft to be saved with invalid cnaf champ 2021-10-12 14:27:20 +02:00
simon lehericey
40d0cfcdc4 add champ validation 2021-10-12 14:27:20 +02:00
simon lehericey
c76d1043fa add cnaf champ 2021-10-12 14:27:20 +02:00
Ismael MOUSSA S
bdbb4deb87 ADD FILE_MAX_SIZE constant to set allow file size limit 2021-09-21 12:04:56 -05:00
simon lehericey
367f508e2e linked_drop_down_list: empty primary => empty secondary 2021-09-07 10:09:18 +02:00
Christophe Robillard
4a6c22d6a6 export code insee for commune champ 2021-08-19 08:04:47 +02:00
Paul Chavard
75392272fb Add champ address model 2021-02-17 19:10:16 +01:00
simon lehericey
d72f0c6dd2 Add authorized content type for pj 2021-01-18 17:23:08 +01:00
clemkeirua
eb46cc6425 piecejusticative file validation focus on size 2020-09-25 09:35:16 +00:00
clemkeirua
c155de1d7e ajout de la liste des extensions 2020-09-25 09:35:16 +00:00
clemkeirua
31d48c2879 validation is enableed only for 'new' procedures 2020-09-25 09:35:16 +00:00
clemkeirua
8711e8f911 reenable validator on piece_justificative 2020-09-25 09:35:16 +00:00
kara Diaby
cb4e91c405 Add iban type de champ 2020-09-23 15:56:26 +02:00
clemkeirua
a62907f33b add more tests for phone numbers 2020-09-09 09:00:03 +02:00
Paul Chavard
1488e0964b update models specs to use revisions 2020-09-02 11:26:26 +02:00
Judith
25a24ba7c8 removal of translation keys already present in the gem rails-i18n 2020-09-01 16:33:58 +02:00
Christophe Robillard
090a247ba9 validates phone champ server side 2020-08-20 15:33:03 +02:00
clemkeirua
299c86141c added before_save to PieceJustificativeChamp in order to set skip_pj_validation 2020-07-15 09:00:12 +00:00
Paul Chavard
97f91513c8 Store drop_down_list values as jsonb 2020-06-25 13:14:17 +02:00
Paul Chavard
901b6e23a8 Remove legacy carto 2020-06-04 16:03:23 +02:00
Pierre de La Morinerie
190548844a dossiers: add piece justificative filename to spreadsheet export 2020-05-14 10:18:10 +00:00
Paul Chavard
bc8217e030 Carte Editor sends FeatureCollection to the server 2020-04-16 18:29:19 +02:00
Paul Chavard
22604013d0 Expose multiple user selections on champ carte 2020-04-15 18:07:09 +02:00
Pierre de La Morinerie
4cb747fdb6 specs: always require rails_helper
Test helpers are separated between two files: spec_helper and
rails_helper. This separation is meant to allow tests that do not
require Rails (like testing standalone libs) to boot faster.

The spec_helper file is always loaded, through `--require spec_helper`
in the `.rspec` config file. When needed, the rails_helper file is
expected to be required manually.

This is fine, but:
- Many test files have a redundant `require 'spec_helper'` line;
- Many test files should require `rails_helper`, but don't.

Not requiring `rails_helper` will cause the Rails-concerned section of
the test environment not to be configured–which may cause subtle bugs
(like the test database not being properly initialized).

Moreover, Spring loads all the Rails files on preloading anyway. So the
gains from using only `spec_helper` are thin.

To streamline this process, this commit:
- Configures `.rspec` to require `rails_helper` by default;
- Remove all manual requires to spec_helper or rails_helper.

Reference: https://stackoverflow.com/questions/24145329/how-is-spec-rails-helper-rb-different-from-spec-spec-helper-rb-do-i-need-it
2020-03-31 12:48:32 +02:00
Pierre de La Morinerie
fe13043efd dossier: prepare validations to piece_justificative champs
We can't yet enable the validations, because of an issue that will
(hopefully) be solved with Rails 6.

See https://github.com/betagouv/demarches-simplifiees.fr/issues/4926
2020-03-30 11:12:25 +02: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