Christian Lautier
5ce42afe28
Fix datetime_champ validation with negative time zone
2023-08-02 14:40:47 +02:00
Colin Darie
5998cfe31f
refactor(correction): rename kind => reason with default correction => incorrect
2023-07-21 16:45:47 +02:00
Eric Leroy-Terquem
e8e9857dda
style(reaffectation): apply dsfr to buttons
2023-07-18 16:54:00 +02:00
Eric Leroy-Terquem
0e58e10b82
refactor(DossierAssignment): move create_assignment to assign_to_groupe_instructeur
2023-07-18 16:54:00 +02:00
Eric Leroy-Terquem
f619fdfb19
feat(DossierAssignment): add reaffectations to presonnes impliquees view
2023-07-18 16:54:00 +02:00
Eric Leroy-Terquem
ac2043e920
feat(DossierAssignment): create assignment when manual assignment by instructeur
2023-07-18 16:54:00 +02:00
Martin
ce9dbed663
amelioration(NotificationMailer): sort la creation des commentaire sur la messagerie du mailer [trop de prob possible sinon: au retry on dupliquait les commenaitres, si le mail foirait, on commentait pas etc...]
2023-07-11 15:11:40 +02:00
Colin Darie
6ce8428ac6
feat(sva): instructeur can flag a dossier as incomplete
2023-07-11 10:01:48 +02:00
Eric Leroy-Terquem
a2c636d784
fix(tests): create groupe instructeurs with factory
2023-07-03 14:47:56 +02:00
Paul Chavard
e509ff1717
fix(dossier): do not send notifcations to deleted users
2023-06-21 09:52:38 +01:00
Eric Leroy-Terquem
18054fe346
feat(routing): add view for dossier a reaffecter
2023-06-15 14:34:02 +02:00
Eric Leroy-Terquem
e7e702a574
feat(routing): add reaffecter_un_dossier
2023-06-15 14:34:01 +02:00
Colin Darie
52c8553576
fix(dossier_correction): don't allow to save with a missing (invalid) commentaire
2023-06-02 16:18:33 +02:00
Colin Darie
734d88d80d
fix(pending-correction): wording alignement
2023-06-02 16:16:14 +02:00
Colin Darie
8839ac7f76
fix(instructeur): pending_correction flag does not make messagerie unseen
2023-06-02 16:16:14 +02:00
Colin Darie
5ab44fc7a9
chore: rename dossier_resolution => dossier_correction
2023-06-02 16:16:14 +02:00
Colin Darie
9565267170
feat(dossier): notify user by email about pending corrections
2023-06-02 16:16:13 +02:00
Colin Darie
ca3b127942
feat(instructeur): can flag a dossier as "pending corrections"
2023-06-02 16:16:12 +02:00
Martin
6a2d2ae0a7
bug(instructeurs/avis_controller#remind): ETQ instructeur, je peux relancer une demande d'avis meme si celui ci contient une question
2023-04-26 07:46:21 +02:00
Martin
6739bfc665
bug(instructeurs.annotations): ETQ instructeurs, lorsque je saisie une autre valeur dans un champ de type choix simple, celle ci n'est pas sauvegardé
2023-04-21 09:35:16 +02:00
Paul Chavard
05cfb4055d
fix(dossier): improuve dossier state display
2023-04-19 12:27:16 +02:00
Paul Chavard
2a48228552
fix(dossier): improuve commune champ rendering in pdf
2023-04-04 16:01:16 +02:00
Paul Chavard
fce78bbf30
feat(dossier): multiselect without react
2023-04-03 16:54:50 +02:00
Martin
c6e9674de2
correctif(export.pdf): ETQ expert, lorsque j'exporte un dossier au format PDF, celui ci contenient les avis non confidentiels ainsi que mes avis
2023-03-28 17:16:34 +02:00
Lisa Durand
ee2f795dec
pr feedbacks - add validation for yes/no answer - improve locales use
2023-03-16 11:32:05 +01:00
Lisa Durand
eddd7a2192
add flash alert if email field empty
2023-03-16 11:32:05 +01:00
Paul Chavard
cbaa77fca7
feat(annotations): activate autosave
2023-03-14 15:22:13 +01:00
Lisa Durand
54f17ad3c7
Merge pull request #8630 from demarches-simplifiees/harmonize-actions-for-instructeurs
...
[instructeurs] Uniformiser les actions pour les instructeurs sur la page tableau et dossier
2023-03-02 13:28:23 +00:00
Paul Chavard
d8ee4cb360
fix(test): dossiers_controller_spec
2023-02-28 17:28:17 +01:00
Paul Chavard
7076d6d99e
fix(turbo): rerender only top part of the header
2023-02-27 16:06:11 +01:00
Lisa Durand
636e6aa6cb
fix broken tabs with turbostream
2023-02-27 14:30:10 +01:00
Lisa Durand
6487e2c27e
implement turbostream back for state change in dossier view
2023-02-24 17:54:53 +01:00
Lisa Durand
fddcce8b7b
fix specs
2023-02-22 18:17:06 +01:00
sebastiencarceles
d5ffd61ab6
validate values inclusion
2023-02-16 10:49:15 +01:00
Damien Le Thiec
4b0e6ea382
Convert datetime field to datetime_local ( #8572 )
...
* Convert datetime field to datetime_local
* Fix tests
* Add value formatting view datetime component
* Add helper datetime component value
2023-02-09 15:18:38 +01:00
Eric Leroy-Terquem
b306dea5cf
refactor(avis): rename revive by remind
2023-02-01 09:55:46 +01:00
Eric Leroy-Terquem
004bf5be38
feat(avis): add remind_by! method
2023-02-01 09:55:46 +01:00
Colin Darie
36d5569114
fix(instructeurs): pdf in exports include info administration
2023-01-30 18:38:54 +01:00
simon lehericey
8e75b6ff77
fix(send_dossier): avoid leaking instructeur emails
2023-01-17 16:57:56 +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
Martin
3918757dc9
correctif(test): desormais l'association batch_operations.groupe_instructeurs passe par le dossier. Mise a jour des tests
2023-01-05 16:20:18 +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
Lisa Durand
89730b485b
add bulk action feature for 'passer_en_instruction'
2022-12-15 10:04:25 +01:00
Paul Chavard
1b95809f14
refactor(dossier): flatten champ attributes
2022-12-14 13:03:06 +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
Paul Chavard
e6288c39f2
refactor(dossier): champs -> champs_public
2022-11-10 22:44:39 +00:00
Paul Chavard
5e87539d6d
fix(groupe_instructeur): add explicit order to groupe_instructeurs
2022-11-09 10:56:40 +00:00
Colin Darie
fe2b3ec936
feat(instructeurs/dossier): explicit error about impossible transition due to incomplete etablissement
2022-09-21 16:00:59 +02:00
Martin
cbe77dd2f6
bug(instructeurs/dossiers#telecharger_pjs): zipline does not play well with not available active storage attachments
2022-09-08 11:05:24 +02:00
Martin
dc524cf615
fix(spec): broken spec due to TDD and refacto on former code
2022-08-23 13:28:10 +02:00
Martin
d1544bc4ae
feat(Administrateurs::ProcedureAdministrateurs): ensure admin from super admin can not add administrateur
2022-08-23 13:28:10 +02:00
Martin
d1297bc1f5
tech(rubocopify): ... just clean up ...
2022-08-23 13:28:10 +02:00
Martin
bfd0f3379f
feat(Instructeur::ArchivesController#*): prevent SuperAdmin to index/download archives
2022-08-23 13:28:10 +02:00
Paul Chavard
2d7803cd48
refactor(spec): use new procedure.types_de_champ factory
2022-08-04 12:10:32 +02:00
Martin
3e56fdd1d7
fix(export): when it takes more than 3 hours, exports are purge before being generated. make it possible to have an export that takes more than 3 hours and share this behaviour with kind of same class archive
2022-07-25 10:48:54 +02:00
Martin
7fb85c97cb
feat(Administrateur::ArchivesControllers): add archives #index and #create for admin
2022-07-04 14:18:46 +02:00
Paul Chavard
99a8786dd5
fix(expert): expert should be allowed to delete messages
2022-05-20 15:47:48 +02:00
Paul Chavard
e33022ffc7
refactor(dossier): export to use turbo-poll
2022-05-17 16:08:47 +02:00
Paul Chavard
95bd13872b
refactor(dossier): change state with turbo
2022-05-13 17:38:09 +02:00
simon lehericey
0fc71afc29
spec: fix private type de champ repetition
2022-05-06 10:34:40 +02:00
Martin
3737311390
feat(procedure.procedure_expires_when_termine_enabled): enable by default, allow contributor to choose the default settings of this flag using an env var during migration. ie: DEFAULT_PROCEDURE_EXPIRES_WHEN_TERMINE_ENABLED=true|false
...
feat(administrateurs/procedures#show): warning/alert when procedure_expires_when_termine_enabled is not true on current procedure
feat(administrateur/procedure#update): after an update redirect to procedure show: suggested by: https://ux.stackexchange.com/questions/55291/after-updating-form-should-redirect-back-to-form-itself-or-to-the-show-page-or-b and confirmed by Olivier
clean(Flipper.archive_zip_globale): no more in use, so remove all occurences
Update app/views/administrateurs/procedures/_suggest_expires_when_termine.html.haml
Co-authored-by: Pierre de La Morinerie <kemenaran@gmail.com>
Update app/views/administrateurs/procedures/_suggest_expires_when_termine.html.haml
Co-authored-by: Pierre de La Morinerie <kemenaran@gmail.com>
Update app/views/administrateurs/procedures/_suggest_expires_when_termine.html.haml
Co-authored-by: Pierre de La Morinerie <kemenaran@gmail.com>
Update spec/views/administrateurs/procedures/show.html.haml_spec.rb
Co-authored-by: Pierre de La Morinerie <kemenaran@gmail.com>
fix(review): typo, why ena?, who knows
fix(env.example.optional): add missing DEFAULT_PROCEDURE_EXPIRES_WHEN_TERMINE_ENABLED
2022-05-05 13:07:11 +02:00
Paul Chavard
91879b89ce
fix(commentaire): unified destroy commentaire
2022-04-26 14:54:58 +02:00
Martin
9bac5c65ba
feat(instructeurs/dossier#create_avis): only followed dossier receive notifications, so when an instructeur ask for an avis, he follows the dossier
...
Update app/controllers/concerns/create_avis_concern.rb
Co-authored-by: Paul Chavard <paul.chavard@beta.gouv.fr>
Update spec/controllers/instructeurs/dossiers_controller_spec.rb
Co-authored-by: Paul Chavard <paul.chavard@beta.gouv.fr>
2022-04-07 09:05:23 +02:00
Martin
a9769ae277
fix(instructeur/dossiers#create_avis): as an instructeur, when I ask an avis, i hope to be notified when the expert give his avis
2022-04-07 09:05:23 +02:00
Paul Chavard
ec3ed049ef
refactor(procedure_presentation): expose filtered_sorted_ids method
2022-04-05 15:50:53 +02:00
Paul Chavard
0daae815d8
refactor(dossier): use by_statut
2022-04-05 09:42:23 +02:00
Paul Chavard
f71c89aa91
refactor(procedure): cleanup tests
2022-04-05 09:42:23 +02:00
Martin
1d99e21a27
tech(bug): identify
2022-04-04 16:28:25 +02:00
Paul Chavard
7aacb7565c
fix(dossiers): mark as read dossier on update_annotations
2022-03-22 09:19:24 +01:00
Kara Diaby
4bfcf4f9d9
tests
2022-03-17 13:57:49 +01:00
Paul Chavard
a50d07400e
refactor(instructeur): cleanup destroy / restore routes
2022-03-11 14:06:34 +01:00
Paul Chavard
78bf1147d0
refactor(instructeur): use better fallback location
2022-03-11 13:55:36 +01:00
Paul Chavard
51d7fd6190
test(dossier): update spec to use visible_by_administration
2022-03-10 14:29:40 +01:00
Kara Diaby
24ff41d2c0
tests
2022-02-09 14:43:36 +01:00
Kara Diaby
842cc11689
tests
2022-01-31 10:03:44 +01:00
Kara Diaby
c9f402aa5b
tests
2022-01-25 11:46:05 +01:00
Kara Diaby
7a49985e2c
tests
2022-01-24 16:47:47 +01:00
Kara Diaby
598cb09c6d
tests
2021-12-29 17:37:58 +01:00
Martin
081d5094a9
feat(instructeurs/procedure/dossiers#extend_conservation): add extends duree conservation in action button list, also rewire this action for user [extend by procedure.duree_conservation_dans_ds by default] but force 1.month for instructeur. add new icon for standby based on https://en.wikipedia.org/wiki/Power_symbol
2021-12-06 07:20:01 +01:00
simon lehericey
5a0fb6237f
😭 AASM does not support keyword arguments
...
https://github.com/aasm/aasm/issues/672
2021-11-30 09:42:45 +01:00
Kara Diaby
c75a9b6271
tests
2021-11-29 14:30:17 +01:00
Martin
f0950b592b
clean(CommentaireService): extract soft delete within controller. returning an instance with an error[:base] is not persisted with validation : avoid poluting stuff
2021-11-16 16:13:11 +01:00
Martin
4042d51d1a
tech(lint): rubocopify
2021-11-15 14:17:57 +01:00
Martin
d4c74b5621
feat(rc.1): refine with better translations, better design
2021-11-15 14:15:05 +01:00
Martin
3b78a9d81a
feat(rc): first stable
2021-11-15 13:53:32 +01:00
Martin
8b931a57d4
feat(CommentairesController#destroy): implement destroy endpoint using CommentaireService
2021-11-15 13:18:10 +01:00
Martin
b03dc6ad5d
wip(dossiers/messages/_message): poc destroy button with expected ACL support
2021-11-15 11:30:41 +01:00
Paul Chavard
da47f491b3
fix(dossier): nullify close to expiration notice timestamps when changing state
2021-11-11 12:52:58 +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
Paul Chavard
c4b93f8d4a
fix(groupe_instructeur): unfollow dossiers when removed from groupe instructeur
2021-10-28 14:45:52 +02:00
Pierre de La Morinerie
5cbf939911
spec: fix syntax of get requests in archives_controller_spec
...
Those were generating Ruby warnings:
> warning: Using the last argument as keyword parameters is deprecated
2021-09-09 09:58:41 -05:00
kara Diaby
9c976c6b71
fixup! tests
2021-07-27 19:38:21 +02:00
Christophe Robillard
54d91335f2
remove the ability to download an 'everything' archive
...
there are sometimes an error that happen when building an everything
archive. The error explanation is not understood at the moment.
To deliver the archive feature quickly, we remove the 'everything' archive for
the moment
2021-07-05 11:05:07 +02:00
François Vantomme
c9b1095d1e
Refactor (Rubocop): replace map{ … }.compact by filter_map
...
In Ruby 2.7, Enumerable#filter_map has been added.
This cop identifies places where map { … }.compact can be replaced by filter_map.
See: https://docs.rubocop.org/rubocop-performance/cops_performance.html#performancemapcompact
2021-06-11 15:38:09 +02:00
Christophe Robillard
41569efe9d
extract estimate_weight
...
and rename nb_dossiers by nb_dossiers_termines
2021-06-09 10:52:38 +02:00
Paul Chavard
9b0dae4cc2
Fix apostrophes ‘ -> ’
2021-05-26 18:05:14 +02:00
kara Diaby
468e9e849a
tests
2021-05-18 11:42:10 +02:00
Paul Chavard
f6508899de
Refactor NotificationMailer
2021-05-04 12:05:06 +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
Christophe Robillard
9134114c2e
fix rubocop offenses
2021-04-28 11:40:58 +02:00
Christophe Robillard
8bee53fe77
rend plus robuste la création de l'archive
2021-04-28 11:40:58 +02:00
Christophe Robillard
71a5e41e5b
add archive_zip_globale feature flag
2021-04-28 11:40:58 +02:00
Christophe Robillard
8b2849408c
instructeurs can create and download archives
2021-04-28 11:40:58 +02:00
Christophe Robillard
fba0d78153
generate pdf export inside pieces_justificatives_service
2021-04-28 11:40:58 +02:00
kara Diaby
8a1cdf31e3
tests
2021-04-06 10:38:46 +02: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
kara Diaby
81f5a5254b
tests
2021-03-18 11:38:52 +01:00
Pierre de La Morinerie
75a1046315
active_storage: refactor concerns
...
Follow-up of #5953 .
Refactor the concerns with two goals:
- Getting closer from the way ActiveStorage adds its own hooks.
Usually ActiveStorage does this using an `Attachment#after_create`
hook, which then delegates to the blob to enqueue the job.
- Enqueuing each job only once. By hooking on `Attachment#after_create`,
we guarantee each job will be added only once.
We then let the jobs themselves check if they are relevant or not, and
retry or discard themselves if necessary.
We also need to update the tests a bit, because Rails'
`perform_enqueued_jobs(&block)` test helper doesn't honor the `retry_on`
clause of jobs. Instead it forwards the exception to the caller – which
makes the test fail.
Instead we use the inline version of `perform_enqueued_jobs()`, without
a block, which properly ignores errors catched by retry_on.
2021-03-16 11:49:14 +01:00
Paul Chavard
70500e3d56
Groupe instructeur selector default blank
2021-03-09 14:47:23 +01:00
Paul Chavard
96a832bc19
Add SerializerService
2021-03-02 12:42:22 +01:00
Pierre de La Morinerie
d9ea415d44
specs: fix rspec warning about raise_error specificity
2021-02-23 08:25:31 +01:00
Christophe Robillard
c855d13994
rend accessible l'envoi de dossier par un instructeur
...
en remplaçant select2 par ComboMultipleDropdownList
2021-02-16 16:47:14 +01:00
Paul Chavard
a2e87cbb56
Add attestation, justificatifs, operation_logs and bill_signatures to dossier export
2020-12-16 16:34:31 +01:00
kara Diaby
f3c4040d2d
add grace period to deleted dossiers
2020-12-16 15:00:26 +01:00
simon lehericey
d2f3bb18f9
instructeur can delete a dossier UI
2020-12-16 15:00:26 +01:00
kara Diaby
00b5ad7a10
EQT instructeur, je peux supprimer un dossier terminé
2020-12-16 15:00:26 +01:00
Kara Diaby
0bd48999bd
Revert "feat/5635 - Supprime la possibilité pour l'expert invité d'envoyer un message"
2020-10-12 09:24:34 +02:00
kara Diaby
6636b7f14c
Supprime la possibilité pour l'expert invité d'envoyer un message à l'usager
2020-10-08 11:14:09 +02:00
kara Diaby
9207cc5aa5
Ajoute un flag pour qu'un expert ne puisse pas inviter une autre personne à donner son avis sur un dossier
2020-10-02 18:57:29 +02:00
clemkeirua
f96377d878
refactor Dossier#with_notifications
2020-09-21 08:28:42 +00:00
clemkeirua
01ac4d7e19
remove operation_log_serialize_subject
2020-09-17 09:24:50 +02:00
clemkeirua
52d5a52ff9
test fonctionnel notifications avis
2020-09-08 15:40:42 +00:00
clemkeirua
bfd24e8aee
test fonctionnel notification annotations privees
2020-09-08 15:40:42 +00:00
Paul Chavard
6a33a8e48b
update controllers specs to use revisions
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
65809f8ea0
config: flip action_dispatch_return_only_media_type_on_content_type
...
This makes `ActionDispatch::Controller#content_type` return not only
the MIME type, but also in some circumstances the charset.
Example:
```ruby
reponse.content_type == 'text/html; charset=utf-8'
```
The MIME type-only fragment can now be accessed using `#media_type`.
Changes to the tests are not stricly necessary (because no charset is
present in the actual value), but represent the intent better.
2020-08-05 16:48:36 +02:00
clemkeirua
c772c3454c
update dossier after saving champ
...
update last_champ_updated_at without hook
update last_champ_private_updated_at without hook
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2020-07-30 10:18:44 +02:00
Christophe Robillard
b940d2e1b0
update dossier after saving avis
...
update last_avis_updated_at without hook
Co-authored-by: clemkeirua <clement@keiruaprod.fr>
2020-07-30 10:18:44 +02:00
clemkeirua
f3a675c3bc
update dossier after saving commentaire
...
update last_commentaire_updated_at without hook
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2020-07-30 10:18:44 +02:00
clemkeirua
c91e231347
spec: replace reference to ds in password
2020-07-23 16:20:16 +02:00
Christophe Robillard
169b8c9b3e
explicite revive meaning
2020-07-21 10:51:53 +02:00
Christophe Robillard
d9cb5c067f
relance un expert
2020-07-20 16:26:16 +02:00
Christophe Robillard
52e8f32e19
expert can only revoke avis claimed by him/her
2020-07-16 21:07:20 +02:00
Christophe Robillard
3ea34834a7
revoke expert avis
2020-07-16 21:05:11 +02:00
Christophe Robillard
f631acd118
update state date in aasm after callbacks
...
call aasm event methods, not state methods directly
2020-07-08 18:15:15 +02:00
Pierre de La Morinerie
975d1648d5
dossier: fix PDF rendering of effectif_mensuel
...
The effectif_mensuel was a number, it needs to be converted explicitely
into a string.
As a bonus, `nil.to_s` is `""`, so we can remove the special case for
nil.
2020-07-06 11:41:25 +02:00
Myriam
0f542527fb
Instructeur : add overview table with counts for files
...
- changement du design
- tableau visible seulement si plus d'une procédure
2020-07-02 09:02:49 +00:00
Myriam
a486fe9a2e
Instructeur : add overview table with counts for files
...
nombre total de dossier :
- 'à suivre'
- 'suivi'
- 'traité'
- 'dossier'
- 'archivé'
2020-07-02 09:02:49 +00:00