Pierre de La Morinerie
428ca8755f
app: add a password_complexity component
...
This component will replace the previous `password_field` component.
2021-09-09 09:40:39 -05:00
Pierre de La Morinerie
e97b7164dd
models: extract password complexity to a concern
2021-09-09 09:40:39 -05:00
Pierre de La Morinerie
02bdfef893
devise: cleanup Users::PasswordController
2021-09-09 08:03:34 -05:00
Paul Chavard
3235f42a63
feat(dossier): add dossier transfers UI
2021-09-08 15:10:43 +02:00
Paul Chavard
5985755229
feat(dossier): add purge stale dossier transfers job
2021-09-08 14:39:46 +02:00
Paul Chavard
46226b7930
fix(i18n): use size instead of count in dossier mailers
2021-09-08 14:39:46 +02:00
Paul Chavard
d6cbdf2a48
feat(dossier): add dossier transfer models
2021-09-08 14:39:46 +02:00
Paul Chavard
44eb0ada4f
fix(i18n): add Kosovo to countries list
...
Kosovo is not part of ISO 3166 as of time of writing. https://en.wikipedia.org/wiki/ISO_3166-2:RS#cite_ref-1
2021-09-08 12:11:25 +02:00
Paul Chavard
a7ec43a21e
fix(i18n): fix email previews
2021-09-08 09:21:19 +02:00
Paul Chavard
ef12ded3ed
i18n: fix localization of notify_revert_to_instruction email
2021-09-08 09:21:19 +02:00
Paul Chavard
c8d8976a7c
i18n: fix localization of notify_new_answer email
2021-09-08 09:21:19 +02:00
Pierre de La Morinerie
f8d7b7b1e3
i18n: fix localization of notify_new_draft email
2021-09-08 09:21:19 +02:00
Pierre de La Morinerie
4f33a7b72e
js: improve auto-save-controller documentation
2021-09-07 16:45:52 -05:00
Pierre de La Morinerie
ad8dcc7f7d
js: don't report autosave failures that are timeouts
...
This prevents spamming Sentry with "[Autosave] Error: 0" messages.
2021-09-07 16:45:52 -05:00
Pierre de La Morinerie
8dce7d59ed
js: redirect to sign-in when a ujs link_to receives a 401
...
Before, when a 401 was received by a ujs-enabled link (like `link_to …,
method: :delete, data: { remote: true }`, rails-ujs tried to insert the
response text as a Javascript script.
As the script was something like `Please sign-in`, which is not valid
Javascript, the browser would throw an "Unexpected token" error.
The typical use-case is:
1. The user open a form in a tab,
2. The user disconnects in another tab,
3. In the first tab, the user clicks on a remote "Delete" link_to
In that case the browser raised an error in the console (and in Sentry),
but the user would see nothing.
With this commit, all 401 ujs errors are turned into redirects to the
sign-in page.
Fix https://sentry.io/organizations/demarches-simplifiees/issues/2522512693/activity/
2021-09-07 16:45:52 -05:00
Pierre de La Morinerie
255c00c174
js: ignore a new variant of the same warning
2021-09-07 16:45:52 -05:00
Pierre de La Morinerie
905fca0bd3
models: ensure Champs::Pays#to_s is always a string
...
Before this, the result of `Champs::Pays#to_s` could be `nil`, which
would break various things (like the PDF rendering of these champs).
2021-09-07 10:47:18 -05:00
Paul Chavard
74e277d0a2
feat(graphql): add an option to dossier state change mutations to disable notifications
2021-09-07 14:21:48 +02:00
Paul Chavard
96cbbc0192
fix(virus scan): prevent virus scan on archives and signatures uploads
2021-09-07 14:21:48 +02:00
Paul Chavard
084e48c8e3
fix(dossier_projection_service): select external_id on champs
2021-09-07 14:07:55 +02:00
simon lehericey
367f508e2e
linked_drop_down_list: empty primary => empty secondary
2021-09-07 10:09:18 +02:00
Paul Chavard
6a5a8233b5
feat(i18n): send dossier emails with its user locale and improuve translations
2021-09-07 09:51:23 +02:00
Paul Chavard
cd9f7df502
feat(i18n): send dossier notifications with its user locale
2021-09-07 09:51:23 +02:00
Paul Chavard
34b1418868
feat(i18n): save locale on user
2021-09-07 09:51:23 +02:00
Paul Chavard
ff7fa4d895
feat(i18n): expose locale on dossier and deleted_dossier
2021-09-07 09:51:23 +02:00
Paul Chavard
f1ff6da81b
feat(i18n): add locale to user
2021-09-07 09:47:01 +02:00
Pierre de La Morinerie
8bb283d977
app: delete old Admin::ProceduresController
2021-09-02 14:51:31 -05:00
Pierre de La Morinerie
a004ac59df
app: move archive to NewAdministrateur::ProceduresController
2021-09-02 14:51:31 -05:00
Pierre de La Morinerie
e7c8a9fff5
app: move clone to NewAdministrateur::ProceduresController
2021-09-02 14:51:31 -05:00
Pierre de La Morinerie
3e83ad454f
app: move new_from_existing to NewAdministrateur::ProceduresController
2021-09-02 14:51:31 -05:00
Pierre de La Morinerie
7729385d89
controllers: remove dead code on Admin::ProceduresController
...
This code has been migrated to NewAdministrateur::ProceduresController.
2021-09-02 14:51:26 -05:00
Pierre de La Morinerie
3fc934c8fb
app: remove leftovers of publish_validate route
...
The correponding code and feature have been removed a while ago.
2021-09-02 14:50:41 -05:00
Pierre de La Morinerie
0f9d7d6b8c
app: remove old Admin::InstructeursController
...
It was only hosting the deprecated "Instructeurs globally attached to
this admin", which wasn't used anywhere in the app anymore.
2021-09-02 14:40:36 -05:00
Jérôme Desboeufs
7079af2fd4
Update photographies-aeriennes basemap URL
2021-09-01 21:58:12 +02:00
Pierre de La Morinerie
7380d27d78
js: fix null xhr in autosave error handling
...
Sentry reports many cases of the xhr object being missing in the
error handler.
Ensure the error handling code doesn't crash because of the missing xhr.
2021-08-31 14:54:02 -05:00
Paul Chavard
5d63ced246
fix(eslint): fix eslint warnings
2021-08-31 18:14:04 +02:00
Paul Chavard
a3cc072bbd
feat(i18n): translate countries selector
2021-08-31 13:15:26 +02:00
Paul Chavard
241f564ecc
refactor(i18n): move signature translation keys to shared
2021-08-26 17:53:59 +02:00
Paul Chavard
c1c45613cc
feat(i18n): translate reexamin and new message emails
2021-08-26 17:53:59 +02:00
Paul Chavard
89d9a4a477
feat(i18n): translate notification emails actions
2021-08-26 17:53:59 +02:00
Paul Chavard
6eb072e69f
feat(i18n): translate email greetings
2021-08-26 17:53:59 +02:00
lydiasan
156b9894fe
ajout des traductions pour la demande de mdp
2021-08-26 17:43:00 +02:00
lydiasan
ff575db4b3
i18n: request new password translation
2021-08-26 14:56:12 +02:00
Paul Chavard
8c6978c0cb
feat(i18n): translate devise related emails
2021-08-26 12:08:40 +02:00
Paul Chavard
8e1bfb469f
fix(dossier): send expiration notifications 2 weeks prior to supression instead of a month
2021-08-26 11:28:57 +02:00
Paul Chavard
1399d9bba9
feat(graphql): expose demarche descriptor on dossier type
...
We don't want to expose full demarche type on dossiers because it would open the door for recursive queries that we want to avoid. DemarcheDescriptorType is a lightweight representation of demarche metadata.
2021-08-25 11:12:24 +02:00
Pierre de La Morinerie
bb15d5fadc
i18n: put french first in the locales list
...
Because French is the reference locale, and we should reflect this to
users.
2021-08-24 12:57:51 -05:00
Pierre de La Morinerie
02a19587b7
i18n: display selected locale as active wit bold text
2021-08-24 12:57:51 -05:00
Pierre de La Morinerie
227b1dc462
i18n: remove language code from the locale dropdown
2021-08-24 12:57:51 -05:00
Pierre de La Morinerie
47e1555dce
i18n: properly translate the locale dropdown title
2021-08-24 12:57:51 -05:00
Pierre de La Morinerie
83b04aca59
i18n: move 'layouts' locales to their proper location
2021-08-24 12:57:51 -05:00
Pierre de La Morinerie
db803c2522
i18n: fix capitalization in the locale dropdown
2021-08-24 12:57:51 -05:00
Paul Chavard
ef16424fa8
fix(i18n): use correct translation namespace
2021-08-24 16:00:57 +02:00
Paul Chavard
3b6528decf
feat(i18n): enable localization by query param
...
Providing a query param ("locale") will enable localization. A language picker will be shown once
localization is activated. Locale is stored in a cookie "locale".
2021-08-24 12:42:40 +02:00
Ismael MOUSSA S. (T0194673)
330333aac4
6407 - Fix flash message typo in new administrateur/groupe instructeurs controller and its related spec
2021-08-20 20:10:44 +02:00
kara Diaby
8788d0e7dd
fix localstorage save message for bulk messages
2021-08-20 15:21:07 +02:00
Christophe Robillard
99c16e8dc0
i18n for header
2021-08-20 12:09:01 +02:00
Christophe Robillard
a5750ed4ce
i18n for registration page
2021-08-20 12:09:01 +02:00
Christophe Robillard
bf3580ca2f
i18n for page commencer
2021-08-20 09:19:25 +02:00
Christophe Robillard
ddea0b9a45
purge old sendinblue mails
2021-08-20 08:52:39 +02:00
Christophe Robillard
e06f11f33f
add code insee libelle for commune export
2021-08-19 08:04:47 +02:00
Christophe Robillard
4a6c22d6a6
export code insee for commune champ
2021-08-19 08:04:47 +02:00
Christophe Robillard
daa306859c
champ export can be an array of values
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
b81cfea0e4
fix(combo-search): can input empty value
2021-08-18 15:48:37 +01:00
Paul Chavard
2a84f14521
Make generic
2021-08-18 12:09:20 +02:00
kara Diaby
90371bbb82
save instructeur commentaire local storage
2021-08-13 09:33:16 +02:00
Christophe Robillard
f6aed1782b
stats: précise légende et périodes considérées
2021-08-12 14:33:40 +02:00
Christophe Robillard
1c564bb744
homogeneise les couleurs utilisées pour les stats
2021-08-11 11:30:47 +02:00
Christophe Robillard
93ba0cc038
stats: rend plus explicite le graphe taux d'acceptation
2021-08-11 10:50:26 +02:00
Christophe Robillard
2ee505e9a9
stats: i18n pour legende repartition par semaine
2021-08-10 15:22:36 +02:00
Christophe Robillard
56ce4938d8
stats: rend plus explicite la répartition par semaine
2021-08-10 14:16:51 +02:00
Christophe Robillard
031b74759f
archives: move bugreport
2021-08-05 09:24:20 +02:00
kara Diaby
2c5f05e474
layout
2021-08-04 11:35:06 +02:00
kara Diaby
0300df9a35
add procedure to bulk messages
2021-08-04 11:35:06 +02:00
kara Diaby
ae0a3b9dd5
modify procedures controller instructeur
2021-08-04 11:35:06 +02:00
kara Diaby
3b8f2c8c1e
add css class
2021-08-04 11:35:06 +02:00
Christophe Robillard
38e3469e9a
add bug report to archive
2021-08-03 14:51:41 +02:00
simon lehericey
b29bae4707
a procedure has an encrypted api_particulier_token
...
Co-authored-by: François VANTOMME <akarzim@gmail.com>
2021-07-30 11:18:44 +02:00
simon lehericey
66c35fdffe
add encryptable_concern
...
Co-authored-by: François VANTOMME <akarzim@gmail.com>
2021-07-30 11:18:44 +02:00
François Vantomme
17b659539f
Feat (API Particulier): new encryption service
2021-07-30 11:18:44 +02:00
Christophe Robillard
67c0d93eae
Debugging archive generation
...
debugging exception that occurs sometime when trying to download pj during
archive generation
2021-07-29 11:12:07 +02:00
kara Diaby
1a3ae7d490
fix layout
2021-07-28 14:54:12 +02:00
kara Diaby
b6f931a968
add unique index on bulk messages join table
2021-07-27 20:32:28 +02:00
kara Diaby
69393c2921
modify groupe instructeur controller
2021-07-27 19:38:22 +02:00
kara Diaby
ab0782530c
create Bulk Message model and migration
2021-07-27 19:38:22 +02:00
kara Diaby
3869a848e9
fixup! layout
2021-07-27 19:38:21 +02:00
kara Diaby
9b1a522241
fixup! modify mailers
2021-07-27 19:38:21 +02:00
kara Diaby
c92b249340
fixup! modify models
2021-07-27 19:38:21 +02:00
kara Diaby
ed49d1b110
instructeur_procedures_controller
2021-07-27 19:38:21 +02:00
lydiasan
633d7cd8f2
correction des clés
2021-07-27 12:33:19 +02:00
Paul Chavard
64cfb4d64e
Fix sort with revisions
2021-07-23 10:57:04 +02:00
Pierre de La Morinerie
0fd23ebd43
db: fix schema.rb leftovers
2021-07-22 17:55:47 +02:00
Pierre de La Morinerie
e1909ed29f
brouillon: redirect to sign-in when disconnected
...
There are two cases where the draft auto-save might fail because the
user is no longer authenticated:
- The user signed-out in another tab,
- The brower quit and re-opened, so the Session cookie expired.
In both cases, the auto-save will never succeed until the user
authenticates again, so displaying a "Retry" button is cruel.
Moreover, in plus of all auto-save requests failing with a small error,
the actual hard failure only occurs after filling all the form and
trying to submit it. Then the user is redirected to the sign-in page –
but all their changes are lost.
Instead, we now redirect to the sign-in page on the first 401 error
during the auto-save, let the user sign-in, and then redirect back to
the form.
2021-07-22 11:58:02 +02:00
Pierre de La Morinerie
7808f6dd4f
js: document utils.ajax()
2021-07-22 11:58:02 +02:00
Pierre de La Morinerie
c6fff58f38
js: fix typo in comment
2021-07-22 11:58:01 +02:00
Pierre de La Morinerie
071d9145ca
js: don't attempt to log unexistent statusText
2021-07-22 11:58:01 +02:00
Paul Chavard
388fb39eb5
Fix false positive blank champ warnings
2021-07-22 10:45:25 +02:00
Paul Chavard
ac0f50b488
Improuve champ blank check
2021-07-22 10:45:25 +02:00
Pierre de La Morinerie
32ab2f0a80
instructeur: limit the maximum size of a filter value
...
This prevents the URL from exceeding the max size, and
causing '414: Request-URI too large' errors.
2021-07-20 14:49:48 +02:00
lydiasan
7de10731a6
i18n: localize dossiers edition
2021-07-20 14:18:20 +02:00
Paul Chavard
c7b0b8495b
Get more results from communes API and use local matcher
2021-07-20 13:34:17 +02:00
Pierre de La Morinerie
831672391e
app: use a long-lived cookie for CSRF token
...
See the ADR document for rationale.
2021-07-20 11:11:52 +02:00
Pierre de La Morinerie
a03d8d0705
controllers: remove useless handle_verified_request
override
...
This is a leftover of 09933454ff
2021-07-20 11:11:52 +02:00
Pierre de La Morinerie
63cde95fc9
js: ignore errors generated by a Microsoft crawler
...
Sentry has a lot of Javacript errors stating:
> UnhandledRejection: Non-Error promise rejection captured with value: Object Not Found Matching Id:2
This is apparently caused by a Microsoft crawler (maybe for scanning
targets of email links), and can be safely ignored.
See https://forum.sentry.io/t/unhandledrejection-non-error-promise-rejection-captured-with-value/14062/12
2021-07-20 09:21:59 +02:00
Pierre de La Morinerie
71741c5f98
views: fix checkbox wrongly selected in multiple_drop_down_list
...
The check for whether the checkbox should be checked or not was made by
matching the whole string. Thus, given two options 'valid' and
'invalid', the check for the presence of 'valid' would succeed even when
only 'invalid' was present in the values (because
`'valid'.includes?('invalid')`.
The code now checks against the list of items in the selected_options.
2021-07-20 09:01:07 +02:00
kara Diaby
c731f8cf1f
add windows content type to avoid errors
2021-07-15 16:32:07 +02:00
Pierre de La Morinerie
40b3ea8ad6
Revert "Instructeurs : limitation de la valeur d'un filtre à 100 caractères"
2021-07-13 18:19:46 +02:00
kara Diaby
d2d046a39d
fix encoding problems with cherlock Holmes gem
2021-07-13 10:58:41 +02:00
Pierre de La Morinerie
3c8a88a660
instructeur: limit the maximum size of a filter value
...
This prevents the URL from exceeding the max size, and
causing '414: Request-URI too large' errors.
2021-07-08 16:17:22 +02:00
Paul Chavard
38fdaa7404
Trigger onStyleChange when leyers are toggled
2021-07-07 16:23:55 +02:00
Paul Chavard
1e4c943392
Fix map controls checkbox labels
2021-07-07 15:38:21 +02:00
Paul Chavard
65adce1e24
Fix cadastres layer
2021-07-07 15:38:21 +02:00
Christophe Robillard
03e98229c9
a user can now see stats for closed procedure
2021-07-07 15:00:38 +02:00
Paul Chavard
527db7631e
Add a point on map from coordinates input
2021-07-07 13:33:28 +02:00
Paul Chavard
ab31087f23
Hide cadastres if there is none
2021-07-07 12:28:27 +02:00
Pierre de La Morinerie
37c62ac0a3
app: display standard error page when no cookies are present
...
This occurs mostly when Safari attempts to perform a POST request
again (without sending any of the cookies).
In that case, our custom `422.html` page is more helpful to the user
(because it has a link to the previous page) than a "No cookies" blank
text.
2021-07-06 16:29:22 +02:00
Christophe Robillard
bc07a875eb
integrate a mininum weight for the average dossier weight
...
before this commit, the average dossier weight took account only pieces
justificatives. With this commit, we add a minimum weight for other
files included in an archive like pdf_export, log operations,
attachments added to traitements. This minimum weight is set arbitrary,
from the observation of some random procedures in production
2021-07-06 15:58:45 +02:00
Paul Chavard
0ce708028d
Prevent crashes in combo boxes
2021-07-06 15:06:38 +02:00
Pierre de La Morinerie
09933454ff
app: improve InvalidAuthenticityToken logging
...
- Log on all controllers
- Improve description of the controller action involved
- Ignore Safari bogus requests
2021-07-06 12:42:01 +02:00
Paul Chavard
87fb98f5ed
Make IGN layers opacity configurable
2021-07-06 10:36:12 +02:00
Pierre de La Morinerie
97c8f76635
views: show the 'Avis' tab if needed on all profiles
2021-07-06 08:54:40 +02:00
Pierre de La Morinerie
4422d989a6
views: extract partial for the 'Avis' tab
2021-07-06 08:54:40 +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
Paul Chavard
ce27999bc3
Refactor clone_attachments
2021-07-01 16:21:46 +02:00
Paul Chavard
280e54b59d
Enable test revisions
2021-07-01 15:59:07 +02:00
Paul Chavard
fc966a2761
IGN layers on maps can now be disabled by the user
2021-06-30 20:07:52 +02:00
Pierre de La Morinerie
1faf91bdbe
experts: protect password update as well as sign-up
2021-06-30 10:46:42 +02:00
Pierre de La Morinerie
6f7a2fde57
experts: fix saving password on sign-in
2021-06-30 10:46:42 +02:00
Christophe Robillard
cd36f2622f
fix download FakeAttachment
2021-06-24 21:02:55 +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
f39944a02e
Create procedure sub folder in archives
...
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2021-06-24 17:50:17 +02:00
Paul Chavard
48dca8bad1
Execute AchiveCreationJob in exports queue
...
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2021-06-24 17:49:58 +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
a4482233b8
[GraphQL] expose deleted dossiers
2021-06-24 11:51:37 +02:00
Paul Chavard
15ff046428
Improuve revision changes messages
2021-06-24 11:39:49 +02:00
Paul Chavard
241eff76a3
Enable publish new revision only if some changes are found
2021-06-24 11:39:49 +02:00
Paul Chavard
0ca5e1abe2
Preview should reflect revision changes
2021-06-24 11:39:49 +02:00
Paul Chavard
8b2c2c6466
Handle carte layers changes
2021-06-24 11:39:49 +02:00
Paul Chavard
35eccb5630
Show separate blocks for types de champ and annotation changes
2021-06-23 09:40:07 +02:00
Paul Chavard
19195008e8
Expose removed types_de_champ in exports
2021-06-23 09:40:07 +02:00
simon lehericey
eadae7af6b
show all available tdc for procedure presentation
2021-06-23 09:40:07 +02:00
Paul Chavard
e68441d573
Allow publishing revisions when feature flag is enabled
2021-06-23 09:40:07 +02:00
Paul Chavard
9d3416af53
Implement revision changes UI
2021-06-23 09:40:07 +02:00
Paul Chavard
0d25f52309
Add changed? and compare on ProcedureRevision
2021-06-23 09:40:07 +02:00
Paul Chavard
15e9013264
Set published_at on revision when publishing a procedure
2021-06-23 09:40:07 +02:00
Paul Chavard
f238710044
Add last_month export
2021-06-23 09:23:10 +02:00
kara Diaby
cf11b0c901
return error if the csv headers are wrong
2021-06-22 16:33:38 +02:00
Christophe Robillard
63ef3a08d7
archives: corrige une faute d'orthographe
2021-06-22 15:35:48 +02:00
Pierre de La Morinerie
a99a6cc49f
controllers: use default Rails settings for protecting against forgery
...
Rails uses `config.action_controller.allow_forgery_protection` to
enable or disable forgery protection globaly.
This is disabled for tests by default. So our custom config is not
required.
2021-06-22 13:21:55 +02:00
kara Diaby
87ce71f27d
fix import service
2021-06-21 14:11:05 +02:00
kara Diaby
06958cbdd1
fix service and utf-8 encoding
2021-06-21 13:54:01 +02:00
Paul Chavard
1f7d86d5a5
Add delete dossier action to dossiers list
2021-06-18 11:35:00 +02:00
Christophe Robillard
fdec9b2fd5
archives: don't update dossiers
...
this fix avoid to touch dossier after attaching pdf_export_for_instructeur
2021-06-18 11:00:57 +02:00
Christophe Robillard
7851d6b1cc
archives: count archived dossiers
2021-06-18 08:59:13 +02:00
krichtof
4bda6600b1
explain what percentile constant means
...
Co-authored-by: Pierre de La Morinerie <pierre.de_la_morinerie@beta.gouv.fr>
2021-06-17 16:31:53 +02:00
Christophe Robillard
896190b91e
return nil when no traitement time
2021-06-17 16:31:53 +02:00
Christophe Robillard
887c5cb4a9
correct rubocop offenses
2021-06-17 16:31:53 +02:00
Christophe Robillard
a5ae5af56a
extract NB_DAYS_RECENT_DOSSIERS and PERCENTILE
2021-06-17 16:31:53 +02:00
Christophe Robillard
f2deba733d
use traitement_times to compute usual_traitement_time for recent
...
dossiers
2021-06-17 16:31:53 +02:00
Christophe Robillard
21dd05cc56
less sql queries for usual_traitement_time_by_month
2021-06-17 16:31:53 +02:00
Christophe Robillard
8cbbae8984
use cache for traitement time for instructeurs
2021-06-17 16:31:53 +02:00
Christophe Robillard
a8840faadb
move stats methods to appropriate concern class
2021-06-17 16:31:53 +02:00
Christophe Robillard
98f0eb5ba9
ajoute legende à la stat
2021-06-17 16:31:53 +02:00
Christophe Robillard
45ffae9eb3
affiche evolution temps de traitement
2021-06-17 16:31:53 +02:00
Christophe Robillard
701b72494d
compute usual traitement time for specific month
2021-06-17 16:31:53 +02:00
Pierre de La Morinerie
b5bde6608c
routes: replace the email param in the Avis URLs by a query param
2021-06-17 11:15:51 +02:00
Paul Chavard
10cdd2c77e
Apply suggestions from code review
...
Co-authored-by: Pierre de La Morinerie <kemenaran@gmail.com>
2021-06-16 09:38:47 +02:00
Paul Chavard
7f28c49887
expand commune searches with multiple post codes
2021-06-16 09:29:25 +02:00
kara Diaby
f1a5eb0482
layout
2021-06-15 19:36:46 +02:00
kara Diaby
6353104ecb
modify service
2021-06-15 19:36:46 +02:00
kara Diaby
ab781204bc
modify groupe instructeur controller
2021-06-15 11:20:20 +02:00
kara Diaby
a1367301e9
add css utils
2021-06-15 11:20:20 +02:00
Paul Chavard
7575f50d25
Fix autocomplete on blur
2021-06-15 10:13:31 +02:00
Paul Chavard
7f4e174871
Declare useCallback dependencies
2021-06-15 10:13:31 +02:00
simon lehericey
4900ca16f2
makes whole admin card clickable
2021-06-15 09:54:32 +02:00
simon lehericey
6be0bbaa9c
Change bottom champs editor button from enregistrer to continuer
2021-06-15 09:54:32 +02:00
simon lehericey
9f50ead0fc
wrap link in header to avoid ugly display
2021-06-15 09:54:32 +02:00
simon lehericey
a407c0b2a0
top align th in dossier table
2021-06-15 09:54:32 +02:00
Paul Chavard
a2c53ce7ea
format phone numbers
2021-06-15 09:14:55 +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
169f254c79
infer champ type from class
2021-06-09 10:52:38 +02:00
Christophe Robillard
6f845508b4
order archive by desc month
2021-06-09 10:52:38 +02:00
Christophe Robillard
5e180268cd
remove one sql query
2021-06-09 10:52:38 +02:00
Christophe Robillard
41569efe9d
extract estimate_weight
...
and rename nb_dossiers by nb_dossiers_termines
2021-06-09 10:52:38 +02:00
simon lehericey
b8f01d06d7
more style
...
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2021-06-09 10:52:38 +02:00
simon lehericey
f2ba83a704
cout_dossier_termines_by_month for groupe_instructeurs
...
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2021-06-09 10:52:38 +02:00
simon lehericey
83d60c7b63
archive for all the groups
...
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2021-06-09 10:52:38 +02:00
simon lehericey
e933a80c55
remove useless archivable_months
...
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2021-06-09 10:52:38 +02:00
simon lehericey
d7ce26662f
capitalize month
...
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2021-06-09 10:52:38 +02:00
simon lehericey
a02c598a43
some style
...
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2021-06-09 10:52:38 +02:00
simon lehericey
7cce505dce
allow download whole procedure if small enough
...
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2021-06-09 10:52:38 +02:00
simon lehericey
1c1e990d2a
remove useless count
...
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2021-06-09 10:52:38 +02:00
simon lehericey
b5c1200bf1
disallow download archive button if to heavy
...
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2021-06-09 10:52:38 +02:00
simon lehericey
61b5085390
remove useless if
...
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2021-06-09 10:52:38 +02:00
simon lehericey
09b3cf98f6
use nb_dossiers to estimate total weight
...
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2021-06-09 10:52:38 +02:00
simon lehericey
1a6337cf37
remove useless if
...
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2021-06-09 10:52:38 +02:00
simon lehericey
f094c6c218
avoid useless count
...
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2021-06-09 10:52:38 +02:00
simon lehericey
895eed5a27
UI uses average_dossier_weight
...
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2021-06-09 10:52:38 +02:00
simon lehericey
9e43823f9a
add average_dossier_weight
...
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2021-06-09 10:52:38 +02:00
Christophe Robillard
7002811ba5
optim count nb_dossiers per month for archive
...
`Traitement#count_dossiers_termines_by_month` removes n+1 queries
Co-authored-by: LeSim <mail@simon.lehericey.net>
2021-06-09 10:52:38 +02:00
kara Diaby
b3c5fcb4c5
fix procedure not found
2021-06-08 17:55:38 +02:00
Christophe Robillard
9bb9462b3a
optimise les stats termines by week
2021-06-08 15:23:31 +02:00
Paul Chavard
44ebd0e8a5
Fix api education wrong data type
2021-06-08 12:25:24 +02:00
Christophe Robillard
1a8a394cb7
fix stats view for users
2021-06-06 19:35:48 +02:00
Paul Chavard
1888f74b10
Prevent double processing of declarative dossiers
2021-06-04 17:55:40 +02:00
kara Diaby
66f0fa35f2
layout
2021-06-04 15:29:08 +02:00
kara Diaby
3555c9696a
modify concern
2021-06-04 15:29:08 +02:00
kara Diaby
6ed339e7aa
modify controllers
2021-06-04 15:29:08 +02:00
Paul Chavard
3071af220a
Add revision date_publication
2021-06-03 13:11:16 +02:00
Paul Chavard
f526e303e8
Apply suggestions from code review
...
Co-authored-by: Pierre de La Morinerie <kemenaran@gmail.com>
2021-06-03 13:11:16 +02:00
Paul Chavard
3fb10fb4b8
Set published_at on revision when publishing a procedure
2021-06-03 13:11:16 +02:00
Paul Chavard
306e5d228d
Add published_at to procedure_revisions
2021-06-03 13:11:16 +02:00
Paul Chavard
990ae10399
GraphQL byte_size should be BigInt
2021-06-03 10:53:17 +02:00
Paul Chavard
f076fa803e
Handle GeoJSON validation errors
2021-06-02 12:43:24 +02:00
Pierre de La Morinerie
188b89a3c8
manager: fix polymorphic route exception when viewing user emails
...
Since the last Rails update, arguments to polymorphic routes must be
symbols, otherwise an exception is raised.
2021-06-01 11:29:57 +02:00
Paul Chavard
05380b9520
Fix destoying discarded procedures
2021-05-27 18:48:56 +02:00
François Vantomme
bc6d5aca0e
Fix (Sentry): prefer Rails secrets over ENV variables
2021-05-27 11:12:27 +02:00
Paul Chavard
9b0dae4cc2
Fix apostrophes ‘ -> ’
2021-05-26 18:05:14 +02:00
Paul Chavard
bd7bb2d0d2
Fix apostrophes ‘ -> ’
2021-05-26 15:09:23 +02:00
Paul Chavard
4922bc88d6
Do not crash when properties is nil
2021-05-26 12:40:07 +02:00
Paul Chavard
dfc46a8736
Enable add descriptions to cadastres
2021-05-26 11:27:09 +02:00
Paul Chavard
18ce027b84
Update dossier serialize query to stop using deprecated fileds
2021-05-26 11:12:06 +02:00
lydiasan
2d6ad4f2c1
Merge branch 'main' into localize-dropdown-button
2021-05-25 14:45:52 +02:00
lydiasan
884e52326e
Update app/views/layouts/_locale_dropdown.html.haml
...
Co-authored-by: Pierre de La Morinerie <pierre.de_la_morinerie@beta.gouv.fr>
2021-05-25 13:36:50 +02:00
lydiasan
355616e9a7
Update app/views/layouts/_header.haml
...
Co-authored-by: Pierre de La Morinerie <pierre.de_la_morinerie@beta.gouv.fr>
2021-05-25 13:36:32 +02:00
lydiasan
e85dcf4c58
Update app/controllers/application_controller.rb
...
Co-authored-by: Pierre de La Morinerie <pierre.de_la_morinerie@beta.gouv.fr>
2021-05-25 13:32:26 +02:00
Paul Chavard
179bb5a9fe
Apply suggestions from code review
...
Co-authored-by: Pierre de La Morinerie <kemenaran@gmail.com>
2021-05-25 11:43:38 +02:00
Paul Chavard
acb277e650
Use stable_id when replacing tags
2021-05-25 11:43:38 +02:00
lydiasan
71069c0e1b
correction de la variable d'environnement 'LOCALIZATION_ENABLED'
2021-05-25 10:05:52 +02:00
Paul Chavard
1b0cc62fc2
Add cadastres to MapReader
2021-05-24 11:57:00 +02:00
Paul Chavard
2244263b49
Add cadastres to MapEditor
2021-05-24 11:57:00 +02:00
Paul Chavard
19440afebf
Improuve mapbox utilis and shared components
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
Paul Chavard
e74dcb0056
Remove ign feature flag
2021-05-24 11:50:16 +02:00
Paul Chavard
01c558953b
Remove API GEO legacy adapter
2021-05-24 11:50:16 +02:00
Paul Chavard
bf462380e6
MultiSelect: select values on blur
2021-05-20 17:21:13 +02:00
Paul Chavard
3313ea5885
MultiSelect: do not show empty results on free form inputs
2021-05-20 17:21:13 +02:00
Paul Chavard
e0d8d096f2
MultiSelect: improuve setters
2021-05-20 17:21:13 +02:00
Paul Chavard
868ec214ce
MultiSelect: enable adding multiple emails with , or space
2021-05-20 17:21:13 +02:00
simon lehericey
b620888597
show only dossier avis
2021-05-20 16:18:04 +02:00
simon lehericey
63311eceb0
avoid serializing long id list in case of huge procedure, search on it before
2021-05-20 12:08:04 +02:00
Paul Chavard
bf9f29cc71
Fix messagerie scroll to last message
2021-05-20 11:58:54 +02:00
kara Diaby
20933579b0
do not display confidential avis to other experts
2021-05-19 21:30:22 +02:00
simon lehericey
17617fba43
address champ needs the data column
2021-05-19 15:59:18 +02:00
simon lehericey
a46000dc1f
ensure to_s is used on specialized champ
2021-05-19 09:39:20 +02:00
simon lehericey
3c01488db2
use set to avoid duplicate in @dossier_count
2021-05-18 11:43:20 +02:00
simon lehericey
663d287962
proposition de simplification
2021-05-18 11:43:17 +02:00
simon lehericey
02e2128fb7
proposition de simplification
2021-05-18 11:42:11 +02:00
Paul Chavard
e043645a88
cleanup tests
2021-05-18 11:42:10 +02:00
kara Diaby
6a1ed2e02d
layout
2021-05-18 11:42:10 +02:00
kara Diaby
fdde55f675
modify service
2021-05-18 11:42:10 +02:00
kara Diaby
7d9cf63056
add and modify controllers
2021-05-18 11:42:10 +02:00
Paul Chavard
5f419954b4
Fix dossier deleted user display
2021-05-13 10:43:55 +02:00
lydiasan
42153d1d37
ajout du selecteur de langue
2021-05-12 16:30:35 +02:00
Paul Chavard
3f7a2bea9b
Dossier without user should be valid
2021-05-11 17:50:10 +02:00
Paul Chavard
8a74438dc1
Use conservation_extension instead of en_construction_conservation_extension
2021-05-11 17:33:53 +02:00
Paul Chavard
1e0d6ea28f
Rename en_construction_conservation_extension to conservation_extension
2021-05-11 14:08:51 +02:00
simon lehericey
c5f6c9ae1e
fix missing state translation
2021-05-10 11:17:34 +02:00
Pierre de La Morinerie
b398485d97
manager: localize dossier enums
...
In the previous commit, we cleaned up the localization of the
Dossier.state enum. This prevented administrate from crashing, but now
the dossier enum are no longer localized in the Manager.
By using a `Field::Enum` type, we instruct the administrate plugin
to look up our localized name for the Dossier state enum.
2021-05-06 14:41:08 +02:00
Pierre de La Morinerie
b8f71bd52c
i18n: fix enum values for Dossier.state
...
According to Rails i18n guide, enum values should be localized
as `<model>/<enum>`, not as sub-values to the attribute.
This fixes an exception in administrate when displaying a Dossier
in the Manager.
Note: we need to change the way GraphQL attributes are generated, because
`AASM::Core::State#display_name` doesn’t honor the `model/attribute.value`
convention (and instead tries to localize as `model.attribute/value`).
So instead we lookup the localized name using ActiveRecord.
2021-05-06 14:38:25 +02:00
Pierre de La Morinerie
dc33f4a395
manager: use administrate helper to retrieve resource path
...
This is lifted from the current default template provided by
administrate.
2021-05-06 11:11:04 +02:00
Christophe Robillard
6086f05524
corrige le lien annuaire lorsque le siren n'est pas connu
2021-05-06 09:59:27 +02:00
simon lehericey
55b80df29d
display count before text in tabs
2021-05-06 09:13:20 +02:00
simon lehericey
f55c6ee371
stick arrow with label
2021-05-06 09:13:20 +02:00
simon lehericey
8d0082419c
do not know how it worked before
2021-05-05 14:36:34 +02:00
simon lehericey
4dc314d24b
[ fix #6084 ] add db constraints to france_connect_informations table
2021-05-05 14:28:20 +02:00
simon lehericey
9fd1c604a1
display follower instructeur emails in alphabetic order
2021-05-04 16:38:34 +02:00
simon lehericey
50f679746f
do not extract twice the same dossier_id if the dossier is followed twice
2021-05-04 16:38:34 +02:00
Paul Chavard
bcbfcdc537
Revert "Merge pull request #6142 from tchak/enable_brouillon_extend_conservation"
...
This reverts commit 48eb4d9778
, reversing
changes made to 5539d5cb8c
.
# Conflicts:
# app/models/dossier.rb
# db/schema.rb
2021-05-04 16:03:29 +02:00
Christophe Robillard
01f180022b
prend en compte uniquement les pj pour estimer la taille d'un dossier
2021-05-04 12:50:12 +02:00
Paul Chavard
f6508899de
Refactor NotificationMailer
2021-05-04 12:05:06 +02:00
Paul Chavard
a4fd629f4a
Enable user destruction
2021-05-04 12:05:06 +02:00
Paul Chavard
e240dd6d2c
remove NewAttestationMailer
2021-05-04 12:05:06 +02:00
Pierre de La Morinerie
13d2364fd5
jobs: add Excon::Error::Socket to the list of transient errors
...
In ActiveStorage::Purge job we see a lot of SSL errors:
> Connection reset by peer - SSL_connect (Errno::ECONNRESET)
These errors seem transient, and resolve themselves after a while.
2021-05-04 11:38:22 +02:00
François Vantomme
cb717aede2
Fix (GraphQL): raise exception when blob is missing
...
Failures:
1) API::V2::GraphqlController when authenticated mutations dossierEnvoyerMessage upload error should fail
Failure/Error: expect(gql_errors).to eq(nil)
expected: nil
got: [{:backtrace=>["/usr/local/bundle/ruby/2.7.0/gems/graphql-1.12.5/lib/graphql/backtrace/tracer.rb:64:i...]
2021-05-04 11:26:23 +02:00
Paul Chavard
b2a867266a
Allow users to extend conservation on drafts
2021-04-29 19:50:30 +02:00
Christophe Robillard
3d04221dab
generate pdf export for dossier only on demand
2021-04-29 17:30:38 +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
Paul Chavard
69ab7854c2
replace fontawesome with heroicons
2021-04-29 15:20:05 +02:00
Pierre de La Morinerie
2cb6ec7c51
jobs: add more transient errors
...
These errors occur frequently during interactions with OVH's
ObjectStorage.
2021-04-29 14:08:12 +02:00
Pierre de La Morinerie
684af77e35
jobs: extract an RetryOnTranscientErrors
concern
2021-04-29 14:08:12 +02:00
simon lehericey
7b94c2de88
remove extra Dossier call in projection
2021-04-29 11:46:00 +02:00
simon lehericey
fd6f110210
do not calculate pagination twice
2021-04-29 11:23:41 +02:00
simon lehericey
22811e1cc2
remove unused kaminari stuff
2021-04-29 11:23:41 +02:00
simon lehericey
db23a853a9
fetch all notification at once
2021-04-29 11:23:41 +02:00
simon lehericey
87bee9d234
set img height and width
2021-04-29 11:23:41 +02:00
simon lehericey
a4e813380a
one query for avis count
2021-04-29 11:23:41 +02:00
simon lehericey
5cfb4114ce
one query per table
2021-04-29 11:23:41 +02:00
simon lehericey
20fb756097
one less count
2021-04-29 11:23:41 +02:00
simon lehericey
8b73d8804c
fetch all exports at once by groupe_instructeurs_ids
2021-04-29 11:23:41 +02:00
simon lehericey
951d4c0025
eager load procedure logo
2021-04-29 11:23:41 +02:00
Paul Chavard
6e1b4a2067
Update and pin mapbox-gl
2021-04-28 15:34:53 +02:00
Paul Chavard
85b907807a
Improuve ComboMultipleDropdownList style
2021-04-28 12:54:45 +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
9134114c2e
fix rubocop offenses
2021-04-28 11:40:58 +02:00
Christophe Robillard
aa407d5607
place le cronjob PurgeStaleArchives dans le bon répertoire
2021-04-28 11:40:58 +02:00