Commit graph

6305 commits

Author SHA1 Message Date
simon lehericey
024cc70667 human_value use stable_id ? 2020-12-17 10:51:09 +01:00
simon lehericey
4960eda5cb use stable id 2020-12-17 10:51:09 +01:00
simon lehericey
f07b395d95 sort : remove superfluous return 2020-12-17 10:51:08 +01:00
simon lehericey
f37c27a243 nicer find_field 2020-12-17 10:51:08 +01:00
simon lehericey
e5da1d7111 move remove_filter 2020-12-17 10:51:08 +01:00
simon lehericey
4241ea05f3 move add_filter 2020-12-17 10:51:08 +01:00
simon lehericey
e3ee756da4 move update_sort 2020-12-17 10:51:08 +01:00
simon lehericey
b7a43f3f44 move update_displayed_fields to procedure_presentation 2020-12-17 10:51:08 +01:00
simon lehericey
cbccdea8e0 move displayed_fields for select to procedure_controller 2020-12-17 10:51:08 +01:00
simon lehericey
55998b1284 remove unused dossier_field service 2020-12-17 10:51:08 +01:00
simon lehericey
0399bb7dcf cosmetic move 2020-12-17 10:51:08 +01:00
Paul Chavard
a2e87cbb56 Add attestation, justificatifs, operation_logs and bill_signatures to dossier export 2020-12-16 16:34:31 +01:00
simon lehericey
ef11190cda wording to be consistent with the other entries 2020-12-16 15:00:26 +01:00
simon lehericey
d760402393 fix typo 2020-12-16 15:00:26 +01:00
simon lehericey
996180bf24 add folder icon to dossier 2020-12-16 15:00:26 +01:00
simon lehericey
57bff8ca70 improve deletion mail 2020-12-16 15:00:26 +01:00
kara Diaby
c7643154d1 final optims after sim review 2020-12-16 15:00:26 +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
Paul Chavard
43976550cf GraphQL: make parts of address nullable 2020-12-15 17:57:37 +01:00
Christophe Robillard
3428c58b9e extract password complexity validator
for user and superadmin
2020-12-15 16:26:09 +01:00
Christophe Robillard
15a395fbc7 superadmin: check complexity password server side 2020-12-15 16:26:09 +01:00
Christophe Robillard
94b3ec942b super_admin: check password complexity client side 2020-12-15 16:26:09 +01:00
Fabrice Gangler
3a9f82bd6f Fix(form /contact-admin): use APPLICATION_NAME
Refs: #5799
2020-12-15 16:14:51 +01:00
Fabrice Gangler
107ad1d28e Fix(form add/edit a service): use APPLICATION_NAME
Refs: #5797
2020-12-14 14:26:09 +01:00
simon lehericey
a941626d45 factorize read_attachment 2020-12-14 14:09:15 +01:00
simon lehericey
38a5847ca4 rewind io before reading to allow multiple read 2020-12-14 14:09:15 +01:00
Fabrice Gangler
064ea776c7 allow default logo of a procedure to be configured in .env file
Refs: #5795
2020-12-14 13:41:10 +01:00
simon lehericey
5a9cd71783 fix bill signature 2020-12-11 15:49:05 +01:00
Paul Chavard
075ee9dcde Fix cadastres layer 2020-12-11 14:47:50 +01:00
Paul Chavard
fed300bfe1 Fix and test ActiveStorage::IntegrityError on upload 2020-12-11 10:30:17 +01:00
Paul Chavard
65d650eba6 Better graphql mutation error messages 2020-12-10 18:35:24 +01:00
kara Diaby
f748ccfc9e Appelle l'API entreprise avec le token en Header 2020-12-10 17:49:49 +01:00
Paul Chavard
3c6e30a326 Show titre identite link only once watermark is added 2020-12-10 16:50:03 +01:00
Paul Chavard
48e7822e34 Remove titres identite after a dossier is processed 2020-12-10 15:21:25 +01:00
Paul Chavard
5c07882679
Merge pull request #5768 from adullact/5764_allow_images_to_be_configured
#5764 - Allow logos (mail, webapp) and favicons to be configured in .env file
2020-12-10 12:54:55 +01:00
Paul Chavard
1af0d30d94 Use new optional layers in maps module 2020-12-10 11:26:16 +01:00
Paul Chavard
eaa9b1c071 Expose all optional layers in TypeDeChamp editor 2020-12-10 11:26:16 +01:00
Paul Chavard
cad8ee31d8 Remove legacy geo sources 2020-12-10 11:26:16 +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
30b9d603bd presente la civilite par ordre alphabétique 2020-12-08 17:29:07 +01:00
clemkeirua
513d4f6ff1 move all the cron jobs in a dedicated directory 2020-12-08 13:22:43 +00:00
Christophe Robillard
ddd50993a5 cache pays 2020-12-08 13:09:08 +00:00
Christophe Robillard
a8ed9ef172 remove dead code 2020-12-08 13:09:08 +00:00
Christophe Robillard
12d1a5bece implement ComboPaysSearch 2020-12-08 13:09:08 +00:00
Paul Chavard
43b6f198d5 Adapt 2FA issuer for local and staging environements 2020-12-08 12:55:28 +00:00
simon lehericey
b187244a29 extract and refactor api errors 2020-12-04 17:07:30 +01:00
simon lehericey
46c355beb2 Add comments 2020-12-03 11:52:01 +01:00
simon lehericey
f56235c7ee retry exponentially on api entreprise timeout 2020-12-03 11:52:01 +01:00
simon lehericey
78a40b5176 Increase api_entreprise_timeout 2020-12-03 10:26:05 +01:00
simon lehericey
9eab310565 [#5675] for all api entreprise job, retry on 502, 503 2020-12-02 18:25:31 +01:00
simon lehericey
02e7de0003 more details when Typhoeus request fails 2020-12-02 18:25:31 +01:00
Christophe Robillard
2a5086f7df indique depuis quand il y a des nouveautés 2020-12-02 18:06:37 +01:00
Christophe Robillard
5ffe0f618f rend plus compréhensible le mail quotidien des nouveautés 2020-12-02 17:26:44 +01:00
Fabrice Gangler
0d80d2ddd1 allow logos (mail, webapp) and favicons to be configured in .env file
Refs: #5764
2020-11-27 01:41:47 +01:00
Paul Chavard
18dfacb933 Make watermark configurable 2020-11-25 16:19:06 +01:00
Paul Chavard
b48e7813d2 Put watermark code behind a feature flag 2020-11-25 16:19:06 +01:00
Paul Chavard
371179dc5b Watermark titres identite 2020-11-25 16:19:06 +01:00
Paul Chavard
00ef56db10 [GraphQL] fix attachment upload
- `identify` will return `true` sometime
2020-11-25 10:46:20 +01:00
Christophe Robillard
6f3bf48d30 add specific totp label for dev env 2020-11-17 15:33:13 +00:00
kara Diaby
d9dea779ea Remove foreign key dossier on dossier operations logs 2020-11-17 16:02:53 +01:00
Paul Chavard
b897e0cc1c [GraphQL] add better errors when attachments are not properly used 2020-11-17 12:40:14 +01:00
Christophe Robillard
f368255f91 fix saml entity id 2020-11-16 15:01:16 +01:00
Christophe Robillard
d91e9b372f add sendinblue login link to manager 2020-11-16 12:19:54 +01:00
Christophe Robillard
9347951cea act as an saml identity provider 2020-11-16 12:19:54 +01:00
Paul Chavard
e74c32446e Fix champ->type_de_champ n+1 2020-11-12 15:48:31 +01:00
kara Diaby
06f6cf7771 add new columns to deleted dossiers 2020-11-12 12:18:59 +01:00
clemkeirua
dae65c49f6 revert counters display
in Instructeur::ProceduresController::show, we recently used a grouped query for counters

for some reason, this grouped query in procedure#dossiers_count_for_instructeur
gives incorrect results.
I keep this method as is for now (instructeurs are complaining) and hotfix the controllers
2020-11-12 08:15:00 +00:00
clemkeirua
64c964bf5e fix broken nil values in france_connect_informatio 2020-11-11 15:40:44 +01:00
kara Diaby
bc0f77978f add an api token verification for api entreprise 2020-11-09 16:58:24 +01:00
Paul Chavard
20cdefad63 GraphQL: bump timeout to 10 sec 2020-11-06 12:00:00 +01:00
kara Diaby
c033ef0910 Ajoute a l'information de connexion France Connect dans les informations du dossier ainsi que sur la demande usager 2020-11-05 19:30:13 +01:00
kara Diaby
4b2e3b5be7 Revert "Merge pull request #5710 from betagouv/revert-5705-feat/5701"
This reverts commit aae77c77b0, reversing
changes made to 4c2c5c630c.
2020-11-05 19:30:13 +01:00
Christophe Robillard
0e43b5e5c0 fix refacto super_admin 2020-11-05 17:51:38 +01:00
Christophe Robillard
5562e65bf3 refacto: rename administration to super_admin 2020-11-05 16:03:55 +01:00
Christophe Robillard
a88172eb01 configure otp_secret_key secret 2020-11-05 16:03:55 +01:00
Christophe Robillard
efd8ec85e8 recover superadmin password or reset otp 2020-11-05 16:03:55 +01:00
Christophe Robillard
8d23f6ae99 remove useless redirection for manager sign_in and out
The manager alias for signin causes layout problems
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
Christophe Robillard
6c2eb22960 remove github authentication for manager 2020-11-05 16:03:55 +01:00
clemkeirua
30dfe7fbd0 fix a_suivre 2020-11-04 11:07:53 +01:00
Kara Diaby
f78e0ced3a
Revert "feat 5701 - Ajoute l'information lorsqu'un usager s'authentifie via France Connect" 2020-10-30 18:28:08 +01:00
kara Diaby
e6c1a20329 Ajoute l'information lorsqu'un usager s'authentifie via France Connect 2020-10-30 17:28:54 +01:00
simon lehericey
d82d1132c2 Remove rack_mini_profiler from prod as it could show env var and force us to allow unsafe_eval and script in csp 2020-10-30 17:08:31 +01:00
kara Diaby
7d157eac12 Modifie la description dans le champ titre identité 2020-10-30 14:17:09 +01:00
simon lehericey
c563956a9f retry each day during 5 days to fetch attestation social 2020-10-28 15:53:58 +00:00
clemkeirua
89316c0689 fix counter for dossiers suivis/à suivre when unfollow 2020-10-28 13:51:35 +00:00
clemkeirua
640984f9b6 moins de count dans Instructeurs::ProceduresController#show
exploitation de dossiers_count_for_instructeur dans Instructeurs::ProceduresController#showpour sortir les chiffres facilement
2020-10-28 13:51:35 +00:00
clemkeirua
b4910c557d ajout de procedure.dossiers_count_for_instructeur 2020-10-28 13:51:35 +00:00
clemkeirua
5d7680150b cache encours/termine has notifications 2020-10-28 13:51:35 +00:00
clemkeirua
e96709a4f8 cache not_archived notification list 2020-10-28 13:51:35 +00:00
clemkeirua
47181ca80b remove assert_matching_procedure 2020-10-28 13:51:35 +00:00
simon lehericey
0f719b4fa2 update dinum logo and shrunk size from 70K to 4K 2020-10-28 12:09:31 +01:00
simon lehericey
42d0ffb977 update marianne logo and shrunk size from 5K to 0.5K 2020-10-28 12:07:44 +01:00
simon lehericey
576a740bb2 do not load an entire italic font for 10 words 2020-10-28 11:55:21 +01:00
simon lehericey
5f74584c6a reduce font size by subsetting and using woff2 (https://www.fontsquirrel.com/tools/webfont-generator) 2020-10-28 11:55:21 +01:00
simon lehericey
3c0c829a29 add dimensions to img tag to avoid reflow, add loading: lazy to avoid blocking 2020-10-28 11:39:10 +01:00
Paul Chavard
618c81b9a6 Mount react components on page updates 2020-10-15 18:46:12 +02:00
Paul Chavard
ca0ba4ba2d replace deprecated react-loadable with suspense 2020-10-15 17:30:49 +02:00
clemkeirua
421e8384af fix blocked user 2020-10-13 17:36:43 +02:00
clemkeirua
2d492226e3 added helscout link for emails 2020-10-13 17:36:43 +02:00
clemkeirua
f298d2c2ba dedicated screen for inspecting user emails 2020-10-13 17:36:43 +02:00
clemkeirua
27b8797296 ajout d'une route /manager/users/:id/emails 2020-10-13 17:36:43 +02:00
clemkeirua
e9c33ecbd0 added meta user info 2020-10-13 17:36:43 +02:00
Paul Chavard
752ee78c49 Use fetch instead of jQuery 2020-10-13 10:55:10 +02: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
Paul Chavard
7c58f06c60 always validate geometries returned from api 2020-10-08 16:03:28 +02:00
Paul Chavard
70bf9ea92f remove unused select2 code 2020-10-08 15:26:15 +02:00
Paul Chavard
653270d02f Update specs 2020-10-08 15:26:15 +02:00
Paul Chavard
8a2f079acb Implement ComboAdresseSearch 2020-10-08 15:26:14 +02:00
Paul Chavard
b6c94a3758 Implement ComboCommunesSearch 2020-10-08 15:26:14 +02:00
Paul Chavard
4217dcd94b Implement ComboDepartementsSearch 2020-10-08 15:26:14 +02:00
Paul Chavard
2c7ee82d31 Implement ComboRegionsSearch 2020-10-08 15:26:14 +02:00
Paul Chavard
1b57d94d93 Use @reach/combobox instead of select2 2020-10-08 15:26:14 +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
simon lehericey
185193086b preload fonts for faster rendering
It's a lighthouse recommendation
2020-10-08 09:03:08 +02:00
Paul Chavard
5df7a729e7 Add a wrapper to catch chart rendering before chartkick is loaded 2020-10-07 11:40:07 +02:00
Paul Chavard
d8852c7dc5 Lazily load trix 2020-10-07 11:40:07 +02:00
Paul Chavard
95eb907090 remove unused javascript 2020-10-07 11:39:57 +02:00
clemkeirua
9edab7c851 add missing procedure_id 2020-10-07 11:16:02 +02:00
Christophe Robillard
d572a892df show masked token if token already been defined 2020-10-07 09:02:33 +00:00
Paul Chavard
e9ed3dcb92 Update graphql schema 2020-10-06 21:54:44 +02:00
Paul Chavard
393dc9578d Fix apostrophes 2020-10-06 21:54:43 +02:00
Paul Chavard
0aa06d0197 [GraphQL] expose dossier pdf, geojson and attestation 2020-10-06 21:54:43 +02:00
simon lehericey
4af8bd47ac cache landing data 2020-10-06 16:12:01 +02:00
simon lehericey
ad01d4dee5 really faster stats by precomputing some of them 2020-10-06 16:12:01 +02:00
simon lehericey
f5f363ae99 add 3 counts to @dossiers_states 2020-10-06 16:12:01 +02:00
simon lehericey
e9adcdd7fc add @dossiers_states to compute more dossier count 2020-10-06 16:12:01 +02:00
simon lehericey
6e17eeb635 reduce dossiers count 2020-10-06 16:12:01 +02:00
kara Diaby
75ab403611 fixe le choix du service lorsque la démarche en a déjà un d'affecté 2020-10-06 14:45:48 +02:00
kara Diaby
73399ae072 Fixe le nombre de caractères maximum dans l'url de la démarche (back end) 2020-10-06 14:26:14 +02:00
kara Diaby
c0a517e028 Fixe la longueur de l'url de la démarche 2020-10-05 16:54:10 +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
Paul Chavard
59086cc728 Fix geo length computations 2020-10-01 15:09:38 +02:00
Paul Chavard
4dfc1c719f Fix geo areas computations 2020-10-01 15:09:38 +02:00
kara Diaby
57adb90c8f add the possibility for administrator to refuse external review on a specific procedure 2020-10-01 10:55:19 +02:00
clemkeirua
9019a8b380 ensure a dossier_id is set if possible 2020-09-30 16:50:28 +02:00
Paul Chavard
775a677465 GraphQL handle parse errors 2020-09-30 14:18:37 +02:00
clemkeirua
67b8bf4754 smaller font-size for large footers in attestation 2020-09-30 14:05:12 +02:00
Paul Chavard
1bd59c72e5 Include in exports types_de_champ from all revisions 2020-09-30 13:42:38 +02:00
kara Diaby
e174079850 fix send a copy link 2020-09-30 10:03:08 +02:00
clemkeirua
4fc038fe1b use after_create instead of after_save 2020-09-29 18:15:38 +00:00
clemkeirua
d23b1136ad send invite notifications using a hook 2020-09-29 18:15:38 +00:00
clemkeirua
dd7840cdc4 Notify new draft after dossier commit 2020-09-29 18:15:38 +00:00
kara Diaby
2a69e2fbeb fix services choice into a procedure 2020-09-29 19:53:28 +02:00
Keirua
3fa628235e Nettoyage de I18n.transliterate pour les noms de feuilles d'exports
Co-authored-by: LeSim <mail@simon.lehericey.net>
2020-09-29 15:50:19 +00:00
clemkeirua
9714b607aa ensure valid excel worksheet names 2020-09-29 15:50:19 +00:00
Paul Chavard
a55be55c6a Add mandatory * to secondary value 2020-09-29 14:33:27 +00:00
simon lehericey
1eb780b0c9 convert sheet_name to ascii before tuncate to 30 to ensure length < 31 bytes 2020-09-29 14:11:06 +02:00
simon lehericey
29ef5e6785 compute async only after create 2020-09-29 14:00:31 +02:00
simon lehericey
5ed491b958 export are kept for 1 hour 2020-09-29 13:59:57 +02:00
clemkeirua
245e9e59c7 do not run ApiEntreprise jobs on missing etablissements 2020-09-28 17:36:38 +02:00
clemkeirua
bf02238662 fix for missing user_sign_in_count 2020-09-28 15:55:18 +02:00
clemkeirua
560e1fc4fe tag.span instead of content_tag 2020-09-25 12:53:11 +00:00
clemkeirua
2cb3b1c68e more idiomatic count 2020-09-25 12:53:11 +00:00
clemkeirua
f7ebbdc7c2 use match if possible 2020-09-25 12:53:11 +00:00
clemkeirua
9b324614b8 transform_values instead of map+to_h 2020-09-25 12:53:11 +00:00
clemkeirua
eb46cc6425 piecejusticative file validation focus on size 2020-09-25 09:35:16 +00:00
clemkeirua
c155de1d7e ajout de la liste des extensions 2020-09-25 09:35:16 +00:00
clemkeirua
31d48c2879 validation is enableed only for 'new' procedures 2020-09-25 09:35:16 +00:00
clemkeirua
0d88674cea better translations 2020-09-25 09:35:16 +00:00
clemkeirua
8711e8f911 reenable validator on piece_justificative 2020-09-25 09:35:16 +00:00
clemkeirua
d617a4b252 create export after commiting the export object 2020-09-24 18:56:22 +00:00
clemkeirua
c19b653581 higher level length sanitization for worksheet length 2020-09-24 14:59:46 +02:00
Paul Chavard
a49c962ab3 Redirect demandes to DEMANDE_INSCRIPTION_ADMIN_PAGE_URL 2020-09-24 09:57:43 +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
Paul Chavard
61c315b276 Fix geo area point coordinates display 2020-09-23 16:52:08 +02:00
Paul Chavard
ea4bcf59ad remove demandes/new page 2020-09-23 16:27:17 +02:00
kara Diaby
cb4e91c405 Add iban type de champ 2020-09-23 15:56:26 +02:00
Paul Chavard
dea78c49f6 Run jobs in named queues 2020-09-23 08:22:17 +02:00
Paul Chavard
973973ab6a Do not enqueue web hooks for empty urls 2020-09-22 17:03:19 +02:00
Christophe Robillard
6fd0134b6d convert to es6 classes 2020-09-22 16:09:15 +02:00
Christophe Robillard
8baaee8810 load expanded buttons only for contact form 2020-09-22 16:09:15 +02:00
Christophe Robillard
5bd4644c2c fix js lint errors 2020-09-22 16:09:15 +02:00
Christophe Robillard
9be015752a set input value for question type of contact page 2020-09-22 16:09:15 +02:00
Christophe Robillard
df9a15a224 expand buttons for contact page 2020-09-22 16:09:15 +02:00
Christophe Robillard
61ea73580f use buttons instead of select for contact page 2020-09-22 16:09:15 +02:00
Paul Chavard
c9f2224991 Remove ignored_columns from type_de_champ 2020-09-22 11:28:48 +02:00
Paul Chavard
3d3d0259a0 Remove TypeDeChamp.to_stable_id 2020-09-22 11:28:48 +02:00
Paul Chavard
a3f3b8a8e0 procedure.dossiers through revisions 2020-09-22 10:55:17 +02:00
Paul Chavard
061a743759 [GraphQL] Add archiver mutation 2020-09-22 08:34:38 +00:00
Paul Chavard
a911a71db9 Log dossier archiver/desarchiver operations 2020-09-22 08:34:38 +00:00
clemkeirua
7ba8ab9e6a maj du schema json 2020-09-22 10:14:55 +02:00
clemkeirua
412a87e532 add fix for nil values on numeroVoie and typeVoie 2020-09-22 09:43:44 +02:00
clemkeirua
1173f1e459 add default values when nil 2020-09-22 09:43:44 +02:00
Paul Chavard
512cdeb6ff normalize features on import 2020-09-22 09:12:55 +02:00
Paul Chavard
50c0955465 Avoid an error if area can’t be computed 2020-09-22 09:12:55 +02:00
clemkeirua
111f309c7f changement de l'adresse de création de compte administrateur 2020-09-21 17:02:37 +02:00
simon lehericey
95cd176bf2 bump administrate 2020-09-21 11:15:25 +02:00
clemkeirua
f9c4e967d6 remove :autosave_dossier_draft 2020-09-21 08:46:01 +00:00
clemkeirua
f96377d878 refactor Dossier#with_notifications 2020-09-21 08:28:42 +00:00
clemkeirua
d01a53eb72 remove :cached_notifications gate 2020-09-21 08:28:42 +00:00
kara Diaby
5c68d75107 add titre_identite champ 2020-09-18 14:57:08 +02:00
clemkeirua
1e32a3c11f add complexity check to admin account creation 2020-09-18 11:16:34 +02:00
clemkeirua
5a8fbde0e7 remove dead code in admin model 2020-09-18 11:16:34 +02:00
clemkeirua
14e1f8d06c more accurate naming in AdministrationMailer#invite_admin 2020-09-18 11:16:34 +02:00
clemkeirua
de3118bc7b force password reset on admin promotion or creation 2020-09-17 16:39:13 +02:00
clemkeirua
0307beecd6 Revert "Merge pull request #5576 from tchak/soft-delete-users"
This reverts commit bf0d3914ce, reversing
changes made to 503527459e.
2020-09-17 15:39:16 +02:00
clemkeirua
08d0fa80fa remove old route 2020-09-17 14:03:31 +02:00
Paul Chavard
a0dd3604a4 User discard_and_anonymize! 2020-09-17 11:16:56 +02:00
Paul Chavard
337b20661a Add discared_at to users 2020-09-17 11:16:56 +02:00
clemkeirua
6643b598c3 remove :administrateur_graphql 2020-09-17 09:24:50 +02:00
clemkeirua
4a760287d4 make xray available in development only 2020-09-17 09:24:50 +02:00
clemkeirua
2c418f63a8 remove :team_on_strike 2020-09-17 09:24:50 +02:00
clemkeirua
01ac4d7e19 remove operation_log_serialize_subject 2020-09-17 09:24:50 +02:00
kara Diaby
13e4589905 Publications page to the new UI (admin) 2020-09-16 09:15:44 +02:00
Christophe Robillard
4b86586ca0 add aria-disclosure for all dropdown buttons 2020-09-15 18:12:26 +02:00
Christophe Robillard
5158b73e86 add alt info for 'Mon compte' image 2020-09-15 18:12:26 +02:00
Christophe Robillard
51c4001a1a add aria-disclosure for Mon compte button 2020-09-15 18:12:26 +02:00
Paul Chavard
bbcdff0ccf Use IGN plan v2 and add MNHN data sources 2020-09-15 14:39:02 +02:00
kara Diaby
f1445c3e51 Remove contactez nous from administration page and put Faq instead 2020-09-11 11:58:31 +02:00
simon lehericey
9bd4c11d52 Use render collection to speed up render 2020-09-11 09:43:04 +00:00
simon lehericey
b124579681 cache procedure_ids_with_notifications to avoid seeking the AR cache by going through the stack 2020-09-11 09:43:04 +00:00
simon lehericey
e4de522b48 only retrieve id of procedures with notifications 2020-09-11 09:43:04 +00:00
simon lehericey
d9c7051a00 Avoid superfluous count 2020-09-11 09:43:04 +00:00
simon lehericey
63ea2045a7 Improve admin query on landing 2020-09-11 09:46:54 +02:00
clemkeirua
47fd8f48cb replace tabs with 2 spaces in attestation PDF, instead of one 2020-09-09 07:18:58 +00:00
clemkeirua
19c1043b94 replace tabs with spaces in attestation 2020-09-09 07:18:58 +00:00
clemkeirua
3697c610b6 make polynesia mobile phone number valid 2020-09-09 09:00:07 +02:00
simon lehericey
5459c2fa7f Fix uninitialized excon constant 2020-09-08 18:36:24 +02:00
clemkeirua
c7b96d3d43 add feature-flip for instructeurs on cached notifications 2020-09-08 15:40:42 +00:00
clemkeirua
52ea5ef89a make Dossier#with_notifications great again
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2020-09-08 15:40:42 +00:00
simon lehericey
19d73f13f0 variabilize banner message 2020-09-08 14:52:42 +02:00
Paul Chavard
91bc2db594 Expose revisions on GraphQL API 2020-09-08 10:54:13 +02:00
clemkeirua
61cf33e3ca remove duplicate private champ 2020-09-04 15:40:23 +02:00
Paul Chavard
6d4425885d Fix champ order joins sql error 2020-09-03 18:32:43 +02:00
Paul Chavard
11a1e44fbe Remove procedure_id from type_de_champ 2020-09-03 15:23:58 +02:00
Paul Chavard
d1de1587d3 Always serialize type_de_champ stable_id as id 2020-09-03 15:23:58 +02:00
Pierre de La Morinerie
e033ec3404 js: ignore missing DOM element on ProgressBar
Currently ProgressBar is used to monitor upload progress of attachments.

But there's two cases where the associated DOM element may be removed:

- In the champs editor, when the list scrolls, DOM elements are removed
and added dynamically by React;
- In the user form, the user might start an upload on a repetition, and
then remove the associated row during the download.

In both those cases, we don't want the missing DOM element to trigger
an error.
2020-09-03 15:03:13 +02:00
kara Diaby
ae61c279af migrate emails text editor to new interface 2020-09-03 14:42:22 +02:00
Pierre de La Morinerie
292dc84eb4 jobs: ignore deleted file in Virus Scan
We have errors in production where the job starts correctly (i.e. the
blob exists), but `blob.open` fails with a `ActiveStorage::FileNotFound`
error.

When checking later in production, the blob has been deleted.

This points to the blob (and the file) being deleted during the virus
scan job.

In that case, ignore the error (rather than retrying the job).
2020-09-03 11:00:59 +02:00
simon lehericey
49aa426d1b application job swallow BadRequest error and retry 2020-09-02 16:59:54 +02:00
Paul Chavard
5ceae8235b Ignore type_de_champ procedure_id 2020-09-02 11:26:26 +02:00
Paul Chavard
ec72fdd164 Remove migration service 2020-09-02 11:26:26 +02:00
Pierre de La Morinerie
d5a2fc0788 views: fix Safari stretching logos in admin procedures list 2020-09-01 18:09:32 +02:00
Pierre de La Morinerie
ae1f14a3f9 views: reduce nested flex containers in admin procedures list
We can achieve the same layout with fewer nested flex containers.
2020-09-01 18:09:32 +02:00
kara Diaby
1788471664 carto hack : traduce edition buttons in french 2020-09-01 17:41:20 +02:00
Judith
25a24ba7c8 removal of translation keys already present in the gem rails-i18n 2020-09-01 16:33:58 +02:00
Fabrice Gangler
1a43f888fb Feat: allow to disable France-Connect
Refs: #5440
2020-09-01 15:51:10 +02:00
Fabrice Gangler
f2c4378596 fix: use APPLICATION_NAME in view/users/sessions/new
Refs: #5462
2020-09-01 15:18:29 +02:00
Judith
7bc5a0a278 internationalization of /contact-admin 2020-09-01 12:58:19 +00:00
Fabrice Gangler
bfb28e5a2b Fix(mailers/_signature): use APPLICATION_NAME
Refs: #5456
2020-08-28 03:44:46 +02:00
Judith
af25fdd77c gem http_accept_language installed and (de)activable with feature flag 2020-08-27 16:15:01 +02:00
Pierre de La Morinerie
0800bf68d0 views: allow unselecting all values from a multiple dropdown
Currently, deselecting all values from a multiple dropdown rendered as
checkboxes doesn't have any effect when submitting the form (the
previous values are still there, instead of being deselected).

This is because unchecked checkboxes are not sent by the browser – so
the "empty selection" never gets sent.

Rails `form.check_box` usually works around this by inserting an empty
hidden checkbox element, that will be sent even if all others are
de-selected. But the documentation warns that this is not possible when
iterating over an array (rather than a model). Which is our case here.

To fix this, this commit uses `collection_check_boxes` instead. It will
insert the proper hidden checkboxes in all cases, and fix our use case.

See https://api.rubyonrails.org/classes/ActionView/Helpers/FormOptionsHelper.html#method-i-collection_check_boxes
2020-08-27 11:13:40 +02:00
Judith
2f0953692c Internationalization of the Contact page in FR and EN 2020-08-27 11:03:34 +02:00
Pierre de La Morinerie
3fdecf0924 helpers: remove element immediately when no timeout is specified
This fixes an issue where clicking quickly on several "Remove row"
buttons on a repetition field results in autosave errors.

This is because the N+1 autosave request is correctly sent after the
Nth response from the server, but _before_ the row element is actually
removed from the DOM. So the N+1 request actually sends the fields for
the deleted row, which makes the server raise an error.

With this fix, the row gets properly removed when the server responds,
and before the next request is started.
2020-08-25 15:45:49 +02:00
Pierre de La Morinerie
ecc4f01c20 autosave: trigger an autosave after removing a row 2020-08-25 15:45:49 +02:00
Pierre de La Morinerie
96037069ff autosave: remove the repetition row after deletion
Before, when autosaving a draft, removing a repetition row would
send `_destroy` inputs to the controller – but not remove the row
from the DOM. This led to the `_destroy` inputs being sent again
on the next autosave request, which made the controller raise
(because the row fields were already deleted before).

To fix this, we let the controller response remove the deleted
row(s) from the DOM.

Doing it using a controller response avoids the need to keep track
of operations on the Javascript side: the controller can easily
know which row was just deleted, and emit the relevant changes for
the DOM. This keeps the autosave requests robust: even if a request
is skipped (e.g. because of a network interruption), the next request
will still contain the relevant informations to succeed, and not let the
form in an unstable state.

Fix #5470
2020-08-25 14:39:34 +02:00
Pierre de La Morinerie
e157a289e1 autosave: factorize some javascript code 2020-08-25 14:39:34 +02:00
Pierre de La Morinerie
3c91cfc83c jobs: add health-related keywords to dubious procedures scanner
We are not certified for hosting health-related data yet.
2020-08-25 12:04:10 +00:00
Pierre de La Morinerie
4bba1f0660 views: add a "None" option to optional radio lists
After clicking on a radio button option, it is impossible to revert to
the "None of the values selected" state.

However on non-mandatory fields, reverting to the no-selection value
should be possible.

To fix this, add an explicit "N/A" option.
2020-08-25 11:42:30 +02:00
Pierre de La Morinerie
50f61ee37b views: remove "Select a value" text on radio lists
This text:

- Isn't present on other form controls
- Should only be displayed if the field is mandatory anyway
2020-08-25 11:42:30 +02:00
Christophe Robillard
abe62398b6 very light client-side validation for phone 2020-08-20 15:33:03 +02:00
Christophe Robillard
090a247ba9 validates phone champ server side 2020-08-20 15:33:03 +02:00
Christophe Robillard
f77cc06a91 prend en compte le nom de l'enseigne pour l'établissement 2020-08-20 14:23:02 +02:00
Judith
74cff31876 autofocus on 'input: password' removed according to accessibility audit requirements. No change noticed 2020-08-19 14:35:34 +00:00
Judith
206646f765 date champs: adding a placeholder for IE and Safari (which do not support the input type date) 2020-08-19 14:10:58 +00: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
eb22dc9d8f models: require belong_to associations on module_api_carto 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
d807700c7b models: require belong_to associations on traitement 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
ce53e219e0 models: require belong_to associations on procedure_presentation
Some tests are still failing
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
79fcf5e814 models: require belong_to associations on exercice 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
01248022bf models: require belong_to associations on deleted_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
11456109c0 models: explicitly mark optional belongs_to relationship as so
This prepares making the `belongs_to` relationship required by default.
2020-08-18 15:57:36 +02:00
Pierre de La Morinerie
7d4c748432 services: make etablissement save raise on error
Before, if saving the etablissement failed, the error would be ignored silently.
2020-08-18 14:56:40 +02:00
Pierre de La Morinerie
c01d640997 models: return procedure revisions in deterministic order
Fixes a randomly-failing spec in spec/models/procedure_revision_spec.rb.
2020-08-13 17:27:37 +02:00
Judith
c27b2da90b datetime type de champ: changed the years range from [1950;2100] to [to current year - 1;
current year + 50] (or [entered_date; current_year + 50] if old date already entered) because:
The type_de_champ Datetime is used for close future dates and very close past dates (for accident declaration for ex.)
The select currently has a range from 1950 to 2100, so 70+ years not supposed to be used, leading to:
- many bad data entered (0000 or 1950 to not scroll)
- making it difficult for users to give the proper date (current date is lost in the middle of 149 others) so risk to be lazy and select a random one or genuinely make a mistake
2020-08-13 13:41:45 +00:00
Christophe Robillard
f2dcb61521 transform job in task for set dossiers_last_updated_at 2020-08-12 16:10:15 +02:00
Pierre de La Morinerie
2892fdbeef models: remove columns that have been deleted from db schema
These columns are gone, so we can't stop ignoring them.
2020-08-12 12:06:58 +02:00
Pierre de La Morinerie
6d28069539 models: generate annotations 2020-08-12 11:45:53 +02:00
Christophe Robillard
eea5fd66ad corrige mise en forme commentaire 2020-08-10 17:36:23 +02:00
Christophe Robillard
0b35619322 skip verify authenticity token for helpscout
Co-authored-by: LeSim <mail@simon.lehericey.net>
2020-08-10 17:19:22 +02:00
kara Diaby
9b66c894b2 Adapt configuration email view to the new UI 2020-08-06 16:56:24 +02:00
Fabrice Gangler
cf7a4437e5 Fix syntax for using APPLICATION_NAME in mailers/layout
Refs: #5453
2020-08-06 12:45:19 +02:00
Pierre de La Morinerie
54a4db1c47 config: flip config.active_storage.queues
ActiveStorage jobs are now moved to their own queue.

For consistency, we also move our own analysis jobs (VirusScannerJob)
on the same `:active_storage_analysis` queue.
2020-08-05 16:48:36 +02:00
Pierre de La Morinerie
7708dbbc71 views: explicitely marks form_with as non-remote forms
Starting from Rails 5.1, `form_with` behavior is to generate remote
forms by default.

However with Turbolinks disabled, the form gets sent, but nothing is set
up to handle the server response (like replacing the content of the
page).

So we have two choices: either enable a global config option that makes
`form_with` generate non-remote forms, or do it explicitely on each
form. I chose the explicit way, so that developers expecting the usual
remote behavior of `form_with` are not surprised.
2020-08-05 13:02:56 +02:00
Pierre de La Morinerie
8962db38cc models: render attestations in a simpler way
The older method of instanciating an entire new rendering stack can be
made simpler using Rails >= 5.0 methods.

See https://api.rubyonrails.org/classes/ActionController/Renderer.html#method-i-render
2020-08-04 16:53:46 +02:00
clemkeirua
21221a7c49 fix missing alt 2020-08-04 13:41:10 +00:00
clemkeirua
101acafb65 fix hidden label 2020-08-04 13:41:10 +00:00
clemkeirua
cc9341a83c fix missing header for account creation 2020-08-04 13:41:10 +00:00
kara Diaby
c983622805 fix attestation template boolean on procedure detail page (new admin interface) 2020-08-04 10:56:48 +02:00