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