Pierre de La Morinerie
f2233300b6
specs: assign the default groupe instructeur declaratively
2021-11-23 08:07:07 +01:00
Pierre de La Morinerie
0e809ac1a2
specs: build the default groupe instructeur before the create callback
...
This allows for better ergonomics, by having the default groupe
instructeur available even before the procedure is saved.
2021-11-23 08:07:07 +01:00
Pierre de La Morinerie
032e3e2cb1
specs: create the procedure administrateur declaratively
...
It seems better to create associations in an declarative fashion, rather
than using imperative code. This also makes the attribute compatible
with build_stubbed.
2021-11-23 08:07:07 +01:00
Pierre de La Morinerie
970c3e4b2b
specs: avoid executing business logic in Procedure factory
...
Calling business logic in a factory is a code-smell, because it
usually requires the object to be saved into database, and may have
unintended consequences when the business logic is changed.
Also, this allows to just build a published procedure, without saving it
to the database.
2021-11-23 08:07:07 +01:00
Pierre de La Morinerie
ef2d9a3e86
specs: fix :champ_siret factory not using the procedure
...
Unlike all other champs factories, :champ_siret would attempt to build
a champ with a `nil` procedure (instead of using the dossier's one).
2021-11-23 08:07:07 +01:00
Martin
eecc0c38b6
lint(rubocop): come on, maybe i will find the inspiration to setup it up in my ide
2021-11-19 14:36:21 +01:00
Martin
608a85148f
feat(Dossier.close_to_expiration): add method to find any kind of dossier close to expiration [reuse previous scopes], add missing spec to termine_close_to_expiration, complement spec for each kind of expiration scope with general close_to_expiration spec
2021-11-19 14:28:54 +01:00
Pierre de La Morinerie
b06183d7bf
specs: rename Dossier's with_all_champs
to with_populated_champs
...
This better reflects what the trait is used for, and disambiguate it
from the similarly named trait in the Procedure factory.
2021-11-03 19:38:01 +01:00
simon lehericey
3d524e9488
Change factory user password to be compatible with admin pass constraint
2021-10-28 14:39:13 +02:00
Pierre de La Morinerie
cedbd31d39
specs: only build an admin when building a procedure
...
This should slighly be faster than doing a create in the middle of the
build.
2021-10-26 12:03:30 +02:00
Pierre de La Morinerie
a2b91c8ec6
factories: cleanup Administrateur, Instructeur and Expert factories
...
This changes:
- avoids relying on application code to create mock objects,
- allows to build Administrateur or Instructeurs without saving them.
2021-10-26 12:03:30 +02:00
simon lehericey
ecc26897e2
add end to end spec
2021-10-12 14:27:20 +02:00
simon lehericey
c76d1043fa
add cnaf champ
2021-10-12 14:27:20 +02:00
simon lehericey
d68129b34d
add cnaf type de champ
2021-10-12 14:26:40 +02:00
Paul Chavard
9d5c5447c2
fix(dossier): do not attempt to destroy transfers when a dossier is destroyed
...
we had a dependent option on both sides of a relationship which created race conditions
2021-10-06 17:51:09 +02:00
Paul Chavard
9e30d5fc22
fix(virus scan): prevent virus scans in specs
2021-09-07 14:21:48 +02:00
Christophe Robillard
8f2e0660d3
add spec for dossier with commune
2021-08-19 08:04:47 +02:00
Paul Chavard
ffa8c0c80a
feat(dossiers): enable dossiers termine expiration behind feature flag
...
feature flag "procedure_process_expired_dossiers_termine" controls if a procedure has expiration
enabled on dossiers termine
re #3796
2021-08-18 16:11:35 +01:00
Paul Chavard
ac0f50b488
Improuve champ blank check
2021-07-22 10:45:25 +02:00
Christophe Robillard
66cc0dd08d
Revert "Revert "Expose dossier PDF export as IO""
...
This reverts commit 362093eff0
.
2021-06-24 21:01:59 +02:00
krichtof
362093eff0
Revert "Expose dossier PDF export as IO"
2021-06-24 19:21:37 +02:00
Paul Chavard
b73d504f8d
Expose dossier PDF export as IO
...
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2021-06-24 17:49:24 +02:00
Paul Chavard
f238710044
Add last_month export
2021-06-23 09:23:10 +02:00
Christophe Robillard
aee8db99d0
add spec for dossier weight estimation
2021-06-09 10:52:38 +02:00
Paul Chavard
c5f2faa3d2
add tests for backward compatibility of geo_areas
2021-05-24 11:57:00 +02:00
Paul Chavard
3b85ade440
Add compatibility cadsatre layer with old API GEO
2021-05-24 11:57:00 +02:00
simon lehericey
17617fba43
address champ needs the data column
2021-05-19 15:59:18 +02:00
simon lehericey
1cf59f722e
add :with_user trait to fci as user_id is mandatory
2021-05-05 14:28:20 +02:00
Christophe Robillard
f40d96fbd2
Revert "Revert "Export de tous les dossier d'une démarche""
...
This reverts commit d9a588b52e
.
2021-04-29 17:29:47 +02:00
krichtof
d9a588b52e
Revert "Export de tous les dossier d'une démarche"
2021-04-29 16:07:18 +02:00
simon lehericey
8b73d8804c
fetch all exports at once by groupe_instructeurs_ids
2021-04-29 11:23:41 +02:00
Christophe Robillard
09870c918d
prevent race conditions when creating archives
2021-04-28 11:40:58 +02:00
Christophe Robillard
dfbe004122
rename content_type to time_span_type for archives
2021-04-28 11:40:58 +02:00
Christophe Robillard
c25f3c79d9
add archive model
2021-04-28 11:40:58 +02:00
Paul Chavard
2a068fb9b0
Remove user feedback buttons
2021-04-22 15:40:40 +01:00
Paul Chavard
fd48b86b7f
Simplify export unicity check and use create_or_find_by
2021-04-01 21:14:16 +01:00
Paul Chavard
0b22788d60
experts_procedure should not be optional
2021-03-23 13:46:33 +01:00
Paul Chavard
84214f4bd4
Do not export non exportable champs on draft procedures
2021-03-23 09:55:37 +01:00
Christophe Robillard
60cc4d3697
add pdf to pjs export
2021-03-16 15:13:17 +01:00
Paul Chavard
4f03c231a3
Add tests for GeoJSON validation
2021-03-16 12:27:28 +01:00
Paul Chavard
70500e3d56
Groupe instructeur selector default blank
2021-03-09 14:47:23 +01:00
Paul Chavard
89ec3923f2
Defaut groupe instructeur ordered by label
2021-03-04 10:35:44 +01:00
Paul Chavard
46a839e7f7
Remove a spec that was testing bug in libgeos
...
we don’t use libgeos anymore
2021-02-23 10:35:30 +01:00
Christophe Robillard
d55f156aec
admin: durée de conservation des données hors ds n'est plus demandée
...
La colonne est tout de même gardée en base
2021-02-17 16:41:57 +01:00
Paul Chavard
9ce07be1ee
[GraphQL] modifier annotation
2021-02-11 17:45:14 +01:00
kara Diaby
efbff0f2e0
add expert factory
2021-01-20 18:03:06 +01:00
Paul Chavard
54f2084aef
Add annuaire_education champ
2021-01-14 17:57:48 +01:00
simon lehericey
1159494d37
Add test to ensure no titre identite is exported
2020-12-16 17:31:38 +01:00
simon lehericey
5bc4fab0c4
exhaustive test of discarded_dossier_deletion_job
2020-12-16 15:00:26 +01:00
Christophe Robillard
15a395fbc7
superadmin: check complexity password server side
2020-12-15 16:26:09 +01:00
Christophe Robillard
23ae528c6b
affiche Madame ou Monsieur
...
mais continue à enregistrer en base Mme ou M.
2020-12-08 21:30:54 +01:00
Christophe Robillard
2066e3db87
rend plus compréhensible la civilité
2020-12-08 18:31:38 +01:00
Christophe Robillard
5562e65bf3
refacto: rename administration to super_admin
2020-11-05 16:03:55 +01:00
Christophe Robillard
2a0ebd062a
enable 2FA for manager
...
when trying to access manager, if superadmin did'nt enable otp, he/she is redirected to a page to enable 2FA. When superadmin is enabling 2FA, he has to to scan a qrcode with the 2FA application client. And afterwards, the superadmin has to log in with email, password and OTP code.
2020-11-05 16:03:55 +01:00
Christophe Robillard
305ccdc0cd
add recoverable and two_factor stragegy for administration
2020-11-05 16:03:55 +01:00
Paul Chavard
7c58f06c60
always validate geometries returned from api
2020-10-08 16:03:28 +02:00
Paul Chavard
26a6e18cb9
Do not crash when rgeo can’t calculate polygon area
...
example are “hourglass” shaped polygons
2020-09-23 16:52:08 +02:00
kara Diaby
cb4e91c405
Add iban type de champ
2020-09-23 15:56:26 +02:00
kara Diaby
5c68d75107
add titre_identite champ
2020-09-18 14:57:08 +02:00
clemkeirua
2b23eefee2
fix tests that now requir an admin user to have a strong password
2020-09-18 11:16:34 +02:00
clemkeirua
a62907f33b
add more tests for phone numbers
2020-09-09 09:00:03 +02:00
Paul Chavard
d1fb6c559e
Update factories to use revisions
2020-09-02 11:26:26 +02:00
Pierre de La Morinerie
a7361fdbd3
models: require belong_to associations on mail templates
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
29e8c43e5e
models: require belong_to associations on groupe_instructeur
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
5a7bd24fba
models: require belong_to associations on type_de_champ
...
- Make `type_de_champ.procedure` a requirement;
- Move the procedure_id assignation to `before_validation` (otherwise
the record is invalid, and never gets saved);
2020-08-18 15:57:37 +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
71d9774d58
models: require belong_to associations on trusted_device_token
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
059c147ffc
models: require belong_to associations on service
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
802d3804f5
models: require belong_to associations on invite
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
fe8804f208
models: require belong_to associations on individual
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
afb1c33154
models: require belong_to associations on geo_area
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
aff2713032
models: require belong_to associations on follow
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
91619b16e8
models: require belong_to associations on feedback
2020-08-18 15:57:36 +02:00
Pierre de La Morinerie
51d392a1dc
models: require belong_to associations on dossier
2020-08-18 15:57:36 +02:00
Pierre de La Morinerie
dd1bed9340
models: require belong_to associations on commentaire
2020-08-18 15:57:36 +02:00
Pierre de La Morinerie
32e55a6d37
models: require belong_to associations on avis
2020-08-18 15:57:36 +02:00
Pierre de La Morinerie
aefdd5d2a1
models: require belong_to associations on attestation_template
2020-08-18 15:57:36 +02:00
Pierre de La Morinerie
1ea4c2aa36
models: require belong_to associations on attestation
2020-08-18 15:57:36 +02:00
Pierre de La Morinerie
c1e2928ce7
models: require belong_to associations on assign_to
2020-08-18 15:57:36 +02:00
Pierre de La Morinerie
df2429d7ad
factories: build type_de_champ instead of creating them
...
This allows to minimize the number of actual creations when only a
build is requested.
2020-08-13 17:39:49 +02:00
Pierre de La Morinerie
c8ec5c8846
factories: remove the Rubocop workaround
2020-08-13 17:39:49 +02:00
clemkeirua
c91e231347
spec: replace reference to ds in password
2020-07-23 16:20:16 +02:00
Paul Chavard
3c9cc6c070
Remove repetition types_de_champ on type_champ change
2020-07-08 19:25:05 +02:00
Christophe Robillard
0be4b50ade
update usual_traitement_time with traitement model
2020-07-08 18:15:15 +02:00
Christophe Robillard
a072d35211
use traitement model
...
when a dossier is terminated (accepte, refuse or classe_sans_suite),
we store now `processed_at` and `motivation` in a traitement instance
2020-07-08 18:15:15 +02:00
Paul Chavard
c9ab80c880
WIP
2020-07-07 18:03:56 +02:00
Paul Chavard
13c21d89af
Fix attestation_template spec
2020-07-07 18:03:56 +02:00
Pierre de La Morinerie
060bf1f9ca
factories: flesh out the default etablissement for a dossier
2020-07-06 11:41:25 +02:00
Pierre de La Morinerie
43569f687e
specs: use fixture_file_upload
rather than Rack::Test::UploadedFile
...
This is mostly for consistency (both styles were used before).
Note: we still have to use `Rack::Test::UploadedFile.new` in factories,
because of https://github.com/thoughtbot/factory_bot/issues/385 .
2020-07-01 11:13:45 +02:00
clemkeirua
f7d957e59a
rename 'Menu déroulant' in specs
2020-06-29 08:59:12 +00:00
Paul Chavard
97f91513c8
Store drop_down_list values as jsonb
2020-06-25 13:14:17 +02:00
clemkeirua
465449e684
fix unit tests
2020-06-24 12:18:56 +02:00
Judith
59346ee868
mailers: mention the auto_archive in notify_new_draft
2020-05-28 13:22:02 +00:00
Paul Chavard
f0148184ca
Remove legacy carto code
2020-05-13 12:17:04 +02:00
Paul Chavard
6556df2a85
Fix a crash in case of invalid geometry
2020-05-05 15:56:05 +02:00
Paul Chavard
843e033c38
Allow instructeurs to download a GeoJSON document for a given dossier
2020-04-30 15:49:43 +02:00
Christophe Robillard
339066778d
send notif only to the right instructeurs
...
after a dossier creation, only the instructeurs that belong to the group
instructeur of the dossier, and who want notif will be notified by mail
2020-04-23 13:01:57 +02:00
Paul Chavard
bd81970f67
DeletedDossier should have access to discarded demarche
2020-03-31 17:08:29 +02:00
Paul Chavard
876e05aed3
Discard demarches from manager
2020-03-31 17:08:28 +02:00
Christophe Robillard
c21dd3b830
affiche infos d'un usager entreprise uniquement si diffusable
...
pour un usager de type entreprise qui a choisi de ne pas diffuser publiquement ses infos,
elles sont affichées uniquement aux instructeurs
2020-03-17 15:57:02 +00:00
Paul Chavard
3cd4597006
Update rubocop roules
2020-03-17 11:25:21 +01:00
Paul Chavard
be66a8986c
Activate champ integer number on all the new procedures
2020-02-25 11:26:37 +01:00
Paul Chavard
b7051da278
Remove old export code
2020-02-19 18:19:17 +01:00
Paul Chavard
1ce1c1e6d0
use discard
2020-02-13 12:31:59 +01:00
Paul Chavard
f0ea96772d
Only invite experts to dossiers instructeur have access to
2020-02-11 17:38:57 +01:00
simon lehericey
4f317e84d1
Iterate over type_de_champ in repetition type_de_champ
2020-02-11 13:35:55 +00:00
Pierre de La Morinerie
52ea019ba9
app: replace remaining references of DINSIC by DINUM
...
Fix #4488
2020-02-10 17:46:20 +00:00
Christophe Robillard
ed970d3f3c
admin: create without providing email
2020-02-04 16:21:42 +01:00
Pierre de La Morinerie
792ba73643
factories: ensure that dossiers with_entreprise
are consistent
2020-01-21 17:24:56 +01:00
Pierre de La Morinerie
0efb62f03a
factories: ensure that dossiers with_individual
are consistent
2020-01-21 17:24:56 +01:00
Pierre de La Morinerie
724ff50363
factories: rename dossier for_individual
to with_individual
...
This clarifies the distinction between
```
create :procedure, :for_individual
```
and
```
create :dossier, :with_individual
```
2020-01-21 17:24:56 +01:00
Pierre de La Morinerie
00e5b736fb
factories: mark the parent procedure as for_individual
...
This ensures that we don't get an inconsistency, where a dossier is
`for_individual` while its procedure is not `for_individual`.
2020-01-21 17:24:56 +01:00
Paul Chavard
14295db9ad
Revert "Revert "Merge pull request #4552 from tchak/champ-communes""
...
This reverts commit 4373cb22cb
.
2020-01-14 18:46:07 +01:00
clemkeirua
4373cb22cb
Revert "Merge pull request #4552 from tchak/champ-communes"
...
This reverts commit 4cec26f73a
, reversing
changes made to 0ef25ef36c
.
2020-01-13 16:26:27 +01:00
Pierre de La Morinerie
b3558c497d
dossiers: make build_default_individual
explicit
...
It avoid the use of callbacks, and may avoid situations where an empty
individual is implicitely created.
2020-01-08 10:48:22 +01:00
Paul Chavard
4bbd16576b
Add champ communes
2020-01-07 11:52:51 +01:00
simon lehericey
d0939ae1a4
Add Export Model
2019-12-18 13:13:15 +01:00
Paul Chavard
2f060fc30a
Add depubliee state to procedures
2019-12-04 16:52:41 +01:00
Paul Chavard
7b947feae4
Rename demarche archivée to demarche close
2019-11-28 15:07:16 +01:00
clemkeirua
789fcf72ca
ajout d'un test automatisé
2019-11-25 10:37:10 +01:00
Pierre de La Morinerie
f8358b3ae9
instructeurs: create without providing the email
2019-11-04 10:44:24 +01:00
Paul Chavard
86b271997b
Invite experts to linked dossiers
...
closes #3669
2019-10-23 13:10:09 +02:00
clemkeirua
43424e4f4e
merge with the work of paul, using 3 links
2019-10-22 09:51:14 +02:00
Pierre de La Morinerie
ec6ec6f4aa
specs: improve avis factory
...
The instructeur, dossier and claimant where created regardless of
wether they already existed or not.
With this commit:
- Associations are declarated in a more idiomatic way
- They are correctly not created if they are provided when creating the
object.
2019-10-21 12:57:10 +02:00
simon lehericey
18de25fac7
Display the dossier.groupe_instructeur.label on various screens
2019-10-17 15:48:14 +02:00
Pierre de La Morinerie
db0fede521
views: improve the state button
...
- Turn the "accepted" infos into standard dropdown sections
- Display the justificatif even if there is no motivation
2019-10-15 12:48:14 +02:00
simon lehericey
d338f9b9f3
Factory: can create a dossier with a defined gi
2019-09-17 17:19:14 +02:00
Nicolas Bouilleaud
c26a701a17
Refactor and redesign publish modal
...
* remove the autocomplete menu
* use ujs to pre-validate the procedure
* tweak the UI
2019-09-17 16:30:48 +02:00
Nicolas Bouilleaud
e9c6ed80e4
Migration: Index and make Procedure.path nonnull
2019-09-17 16:30:48 +02:00
clemkeirua
feb9c32537
search attachments inside bloc repetables
2019-09-10 15:30:44 +02:00
Paul Chavard
347f03d2a9
Redirect to pdf attachement old name if not attached
2019-09-10 15:06:47 +02:00
Paul Chavard
7ffb98e616
Remove carrierwave uploaders
2019-09-10 10:49:12 +02:00
simon lehericey
d0bfb62fec
Procedure Factory: use procedure.new_dossier
2019-09-03 06:47:02 +02:00
simon lehericey
6cbdba2665
Dossier Factory: link procedure by defaut_groupe_instructeur
...
Oblige to create procedure or dossier to access groupe_instructeur
2019-09-03 06:47:02 +02:00
simon lehericey
74096b6b3a
Assign Factory: automatically link to procedure.defaut_groupe_factory
2019-09-03 06:47:02 +02:00
simon lehericey
31cb056351
Procedure: remove direct instructeurs access
...
Add shortcut for the spec to assign instructeurs directly to the defaut groupe
2019-09-02 11:41:12 +02:00
simon lehericey
b541ef0b41
Procedure has many instructeurs with defaut_groupe_instructeur
2019-09-02 11:41:12 +02:00
Paul Chavard
a19b10b118
Migrate attestation files to active_storage
2019-08-27 17:42:52 +02:00
Paul Chavard
d02e0fc556
Fix and test migrate_procedure_logo task
2019-08-22 11:28:03 +02:00
Paul Chavard
cc35a04e26
Migrate procedure logo to active_storage
2019-08-21 11:15:00 +02:00
simon lehericey
e0e29d741f
Simplify instructeur and administrateur factory
2019-08-20 12:20:12 +02:00
simon lehericey
27c81c1992
Update administrateur factory
2019-08-14 15:06:16 +02:00
simon lehericey
65a53909e1
Update instructeur factory
2019-08-13 15:15:16 +02:00
simon lehericey
3fde2a6f70
Rename gestionnaire in code to instructeur
2019-08-12 13:47:01 +02:00
simon lehericey
6902f84b85
Brutally rename gestionnaire filename to instructeur
2019-08-12 13:47:01 +02:00
clemkeirua
d7105cb6f8
added spec for dossier#update_with_france_connect
2019-08-01 17:42:32 +02:00
maatinito
8d3e3baabc
#3928 administrator new & edit pwd pages
2019-08-01 17:12:14 +02:00
Pierre de La Morinerie
6459e9cf37
tasks: fix the commentaires migration task to work with hidden dossiers
...
By default `commentaire.dossier` doesn't return the dossier if it is
hidden.
2019-08-01 15:43:09 +02:00
Paul Chavard
c75e39884e
Save selection utilisateur as geo area
2019-08-01 11:38:09 +02:00
Pierre de La Morinerie
95e24392f9
models: remove old pieces justificatives
2019-07-30 16:11:17 +02:00