Pierre de La Morinerie
e166f89aa0
identite: remove the "*" for required labels
...
When all fields are required, it's better to say nothing.
2020-04-02 17:34:00 +02:00
Pierre de La Morinerie
7f629ffca1
identite: mark the radio buttons as actually required
2020-04-02 17:34:00 +02:00
kara Diaby
aa56cfd7a0
migrate map to mapbox-gl with a react component
2020-04-02 15:39:47 +02:00
Paul Chavard
725cfa45d3
Do not set processed_at if already defined
2020-04-02 15:23:53 +02:00
Paul Chavard
413abccd3c
Add default order to dossier.dossier_operation_logs
2020-04-02 14:05:40 +02:00
Pierre de La Morinerie
c4f2e6cab0
credentials: add autocomplete attributes
...
Allow browsers to autofill more informations.
References:
- MDN: Autofill (https://developer.mozilla.org/fr/docs/Web/HTML/Attributs/autocomplete )
- Safari Password Autofill (https://developer.apple.com/documentation/security/password_autofill/enabling_password_autofill_on_an_html_input_element )
2020-04-02 12:07:42 +02:00
Pierre de La Morinerie
059e11601b
policies: fix champ policy for guest users
2020-04-02 11:27:14 +02:00
Pierre de La Morinerie
c17ceb4440
policies: DRY the scope
2020-04-02 11:27:14 +02:00
Paul Chavard
c0bbfa42b7
Reassign discarded dossiers on group_instructeur
...
fix #4851
2020-04-01 18:10:12 +02:00
Paul Chavard
7ba4c513e6
Refactor notify near deletion mailers
2020-04-01 17:40:52 +02:00
Paul Chavard
288ace2f34
Dossier on discarded procedure should have access to discarded procedure
2020-03-31 17:08:29 +02:00
Paul Chavard
bd81970f67
DeletedDossier should have access to discarded demarche
2020-03-31 17:08:29 +02:00
Paul Chavard
e4ab2574ce
Démarches discarded by administrateur can be reactivated in manager
2020-03-31 17:08:28 +02:00
Paul Chavard
58c126308c
Add DiscardedProceduresDeletionJob job
2020-03-31 17:08:28 +02:00
Paul Chavard
da52ec30bd
Undo discard dossiers and demarches from manager
2020-03-31 17:08:28 +02:00
Paul Chavard
876e05aed3
Discard demarches from manager
2020-03-31 17:08:28 +02:00
Paul Chavard
aa066bc20a
Validate deleted dossiers dossier_id uniqueness
2020-03-31 16:54:33 +02:00
Paul Chavard
60cb9bcf09
Remove brouillons deleted dossiers
2020-03-31 16:54:33 +02:00
Pierre de La Morinerie
6417c0d2c0
dossiers: allow auto upload of attachments
2020-03-31 13:09:44 +02:00
Pierre de La Morinerie
a1083ca253
javascript: add some comments to the upload systems
2020-03-31 13:09:17 +02:00
Pierre de La Morinerie
7a27e78452
specs: remove unused wait-for-ajax helper
...
This helper is:
- no longer used;
- buggy (not all requests increment it);
- discouraged (we should instead match an UI change that signals the end
of an ajax request).
Good riddance.
2020-03-31 12:54:49 +02:00
Paul Chavard
742cc15209
Use base CronJob
2020-03-31 12:25:46 +02:00
Paul Chavard
5005c54891
Add base cron job
2020-03-31 12:25:46 +02:00
Paul Chavard
33bf2fe109
remove deprecated AutoReceiveDossiersForProcedureJob
2020-03-31 12:25:46 +02:00
Paul Chavard
39c47c21cf
Remove explicit queue_as :default
2020-03-31 12:01:42 +02:00
Pierre de La Morinerie
54337a1603
editor: fix bottom padding of the list
...
Turns out Safari (and maybe IE) collapse the margins together. So we
need to give the footer an explicite height.
Fix #3570
2020-03-30 17:36:59 +02:00
Pierre de La Morinerie
ed5f2fa35f
attestation: fix preview of logos
...
Turns out that assigning the params to the procedure calls `read` on the
images files. Calling `read` moves the seek offset to the end of the
file; which means that subsequent calls to `read` return an empty
string.
Fix the issue by calling `rewind` before attempting to `read` the file,
to ensure the seek offset is at the beginning of the file.
Fix #4958
2020-03-30 14:58:50 +02:00
Pierre de La Morinerie
fe13043efd
dossier: prepare validations to piece_justificative champs
...
We can't yet enable the validations, because of an issue that will
(hopefully) be solved with Rails 6.
See https://github.com/betagouv/demarches-simplifiees.fr/issues/4926
2020-03-30 11:12:25 +02:00
Pierre de La Morinerie
f3c210e875
dossier: remove dead validation code
...
This code used to be called by CarrierWave, but is unused since the
migration to ActiveStorage.
This means that these validations are currently disabled though.
See https://github.com/betagouv/demarches-simplifiees.fr/issues/4926
2020-03-30 11:12:25 +02:00
clemkeirua
6a22ba7036
#4955 - ajout d'un bandeau d'informations coronavirus
2020-03-27 15:33:03 +01:00
Paul Chavard
a60b6b6776
Use ’ consistently instead of '
2020-03-26 17:27:48 +01:00
Paul Chavard
c763679b54
Remove non-existant columns from manager dashboards
2020-03-26 16:17:07 +01:00
Paul Chavard
c707a21f97
Rename delete_and_keep_track -> discard_and_keep_track
2020-03-26 14:23:23 +01:00
Christian Lautier
806e5d5eed
eIDAS level added to France Connect authorization call
2020-03-26 14:07:32 +01:00
Paul Chavard
08a5dd6a27
User should not be deleted if they have hidden dossiers with state_instruction_commencee
...
fix #4933
2020-03-25 18:15:14 +01:00
Paul Chavard
51224fad49
Refactor scopes with intervals and use Time.zone.now
2020-03-25 17:42:03 +01:00
Paul Chavard
c086f6d580
Add a job to remove discarded dossiers
2020-03-25 17:28:25 +01:00
Paul Chavard
ec1cd989ab
Show the reason on deleted dossiers
2020-03-25 16:57:03 +01:00
Paul Chavard
5b5ae5a7a5
Do not send notifications or create operation logs on brouillon demarches
2020-03-25 15:04:52 +01:00
Pierre de La Morinerie
f895570b00
dossier: make the upload label a real label
2020-03-25 14:43:09 +01:00
clemkeirua
b4160e7554
added footer on static pages
2020-03-25 09:50:41 +00:00
clemkeirua
a34b45e4f4
make the 'male' field selected by default during identity creation
2020-03-25 09:50:41 +00:00
clemkeirua
1bdc0836a6
password length for screen reader on /users/sign_up
...
We use a placeholder (which is not made for this, but we have reasons to do that)
so using a visible labels or paragraph duplicates the information
I picked aria-describedby, which is not the ideal solution (it seems to be aria-labelledby) but which is the most widely supported
https://www.w3.org/WAI/tutorials/forms/instructions/#using-aria-describedby
2020-03-25 09:50:41 +00:00
Christophe Robillard
72783fd8fd
replace status_badge partial by status_badge helper
2020-03-25 10:19:07 +01:00
Christophe Robillard
ba8cd8dde0
add explanation for deleted dossiers
2020-03-25 10:19:07 +01:00
Christophe Robillard
78fcdd42a6
refactor
2020-03-25 10:19:07 +01:00
Christophe Robillard
fcfa19a4aa
add deleted dossiers title
2020-03-25 10:19:07 +01:00
Christophe Robillard
73d7ef4436
add space to deleted_dossier cells
2020-03-25 10:19:07 +01:00
Christophe Robillard
459153978d
paginate deleted dossiers
2020-03-25 10:19:07 +01:00
Christophe Robillard
b4b92accf1
instructeur: show deleted dossiers for a procedure
2020-03-25 10:19:07 +01:00
maatinito
1af32b29fd
#4807 Use now() instead of Date.time.today (better code homogeneity)
2020-03-24 17:09:14 -10:00
maatinito
a4ba48fbce
#4807 separate job
2020-03-24 16:46:24 -10:00
maatinito
8ff34780d1
#4807 better wording
2020-03-24 16:46:24 -10:00
maatinito
f5c2dc03c5
#4807 better method/variable naming
2020-03-24 16:46:23 -10:00
Christian Lautier
e61c53f267
Fix #4807 48h before closing a procedure, notify users their draft is not submitted
2020-03-24 16:46:23 -10:00
clemkeirua
5896aedeeb
added extension bouton to en_construction dossiers bound to expire
2020-03-24 18:10:51 +01:00
clemkeirua
6d02e6e9e8
replaced helper has_html_label? with inheritance
2020-03-24 16:54:36 +00:00
clemkeirua
2ecb9cd5a2
rename .label-not-label class into .form-label
2020-03-24 16:54:36 +00:00
clemkeirua
dc2b4598a5
remove orphaned label in identity screen
2020-03-24 16:54:35 +00:00
clemkeirua
5321f7c708
ajout de labels invisibles sur les champs d'invitation
2020-03-24 16:54:35 +00:00
clemkeirua
1a58dd69c2
replace html labels with h2 elements
...
Some elements should not be html labels, for example when they include sub-elements that contain labels (ex: a radio button that has a label on its own). Those are replaced with title elements
2020-03-24 16:54:35 +00:00
clemkeirua
62591623f4
ajout d'un label invisible pour le champ secondaire d'un menu déroulant lié
2020-03-24 16:54:35 +00:00
clemkeirua
26b20b719f
ajout d'un label invisible sur le bouton 'mon compte'
2020-03-24 16:54:35 +00:00
clemkeirua
ce3e60190f
add hidden label to 'Rechercher' in layout
2020-03-24 16:54:35 +00:00
clemkeirua
2e4f003ac8
ajout d'un fieldset sur le champ civilité
2020-03-24 16:54:35 +00:00
clemkeirua
6a24a9b84e
ajout d'un fieldset sur les champs oui/non
2020-03-24 16:54:35 +00:00
simon lehericey
03c23507ae
Remove obsolet procedure <-> instructeurs link (which did not work)
2020-03-24 15:52:37 +01:00
simon lehericey
378443eb5b
Fix admin/new manager page
2020-03-24 15:52:37 +01:00
Pierre de La Morinerie
a716713ed6
locales: fix translation of champ value
...
Due to the extra 's', the names of Champs attributes were never
translated.
2020-03-24 15:42:02 +01:00
Paul Chavard
5c2eba1dd1
Always add a reason to dossier deletion
2020-03-24 09:30:11 +01:00
Paul Chavard
9243ae69df
Add reason to DeletedDossier
...
# Conflicts:
# db/schema.rb
2020-03-24 09:30:11 +01:00
Paul Chavard
903cf0cef5
Keep operation logs after dossier removal
2020-03-24 09:18:45 +01:00
Pierre de La Morinerie
e908b42b43
javascript: move the autosave files to a sub-directory
2020-03-23 14:02:29 +01:00
kara Diaby
1f27652cd3
add files validations to models
2020-03-23 11:28:13 +01:00
simon lehericey
969d5625c8
fix missing rename
2020-03-20 22:28:52 +01:00
kara Diaby
eb8df80c18
fix the email notifications data bug
2020-03-20 16:38:57 +01:00
Christophe Robillard
d46bcecc51
improve code readbility
2020-03-20 10:41:36 +01:00
Christophe Robillard
775cc11d30
include store_location_extension for all controllers
2020-03-20 10:41:36 +01:00
Christophe Robillard
884de51b94
Revert "Revert "go to procedure after cliking link""
...
This reverts commit 952bae32fe
.
2020-03-20 10:41:36 +01:00
Pierre de La Morinerie
ec2199f7b1
javascript: make utils.ajax() return a promise
...
This allow to use `await ajax(…)`, and still have Rails manage the
request, insert the proper headers and tokens, etc.
2020-03-19 18:28:24 +01:00
Paul Chavard
cd0acb1344
Cleanup dossier mailers
2020-03-19 16:52:18 +01:00
simon lehericey
a10aa9602a
do not link to deleted dossier
2020-03-18 15:25:02 +01:00
simon lehericey
ede61ee22b
refacto
2020-03-18 15:25:02 +01:00
simon lehericey
50bb2e6a08
refacto
2020-03-18 15:25:02 +01:00
simon lehericey
f35c0518b7
test for #delete_expired_en_construction_and_notify
2020-03-18 15:25:02 +01:00
simon lehericey
043847ae6e
change notify_automatic_deletion_to_administration signature
2020-03-18 15:25:02 +01:00
Paul Chavard
fe1cd2a47b
Delete and notify en_construction dossiers
2020-03-18 15:25:02 +01:00
Paul Chavard
85580ce34e
rename SeekAndDestroyExpiredDossiersJob to ExpiredDossiersDeletionJob
2020-03-18 15:25:02 +01:00
Paul Chavard
6a5a83d555
update WarnExpiringDossiersJob to use new scope
2020-03-18 15:25:02 +01:00
Paul Chavard
77018b9e2b
Add expiration scopes to dossier
2020-03-18 15:25:02 +01:00
Paul Chavard
f35ccc9d92
Move process_expired_dossiers_brouillon to a service
2020-03-18 15:25:02 +01:00
Christophe Robillard
952bae32fe
Revert "go to procedure after cliking link"
...
This reverts commit 795eabb1ea
.
2020-03-18 14:45:39 +01:00
maatinito
ee3f5652f9
fix #4892 Allows cancelling declarative mode on procedure
2020-03-18 12:07:40 +01:00
Christophe Robillard
795eabb1ea
go to procedure after cliking link
...
even for an instructeur which is not signed in and unstrusted
2020-03-18 11:16:19 +01:00
Christophe Robillard
8e7f210216
affiche infos entreprise uniquement si diffusable
...
le champ de type siret affiche les infos d'une entreprise dont les infos sont diffusables uniquement aux instructeurs
2020-03-17 15:57:02 +00:00
Christophe Robillard
c21dd3b830
affiche infos d'un usager entreprise uniquement si diffusable
...
pour un usager de type entreprise qui a choisi de ne pas diffuser publiquement ses infos,
elles sont affichées uniquement aux instructeurs
2020-03-17 15:57:02 +00:00
Christophe Robillard
91abcd7792
récupère les infos d'établissement avec infos non diffusables
2020-03-17 15:57:02 +00:00
kara Diaby
395af2fbb0
instructors : receive daily emails for declarative folders
2020-03-17 15:54:50 +01:00
clemkeirua
debc6628d8
generation d'un fichier pdf bien nommé
...
La route ne contient pas '.pdf' dans l'url, mais le controller génère un fichier pdf du nom de la procédure et lance le téléchargement immédiatement
2020-03-17 15:00:03 +01:00
clemkeirua
76488ec758
ajout de l'adresse du service où envoyer le dossier
2020-03-17 15:00:03 +01:00
clemkeirua
ca7f81b6ed
add a feature-flip for procedure PDF export
2020-03-17 15:00:03 +01:00
clemkeirua
90a0879d71
ajout du bouton pour telecharger un pdf vide
2020-03-17 15:00:03 +01:00
clemkeirua
8c44133fd1
ajout de l'intitule des procedures en haut de page
2020-03-17 15:00:03 +01:00
clemkeirua
269881db12
generation d'un pdf vide à partir d'une procedure
2020-03-17 15:00:01 +01:00
Paul Chavard
3cd4597006
Update rubocop roules
2020-03-17 11:25:21 +01:00
Paul Chavard
444d19e191
Remove unused gems
2020-03-17 11:25:21 +01:00
Paul Chavard
ae2cfdd44e
Update browser gem
...
`modern?` method was removed in version 4
2020-03-17 11:25:20 +01:00
Paul Chavard
c281347da1
Remove restclient
2020-03-17 11:12:14 +01:00
Christophe Robillard
d8d9b0922d
remove orphan services when destroying admin
2020-03-16 21:40:05 +01:00
Paul Chavard
577d21de5c
Use the new robot api id
2020-03-13 15:36:17 +01:00
clemkeirua
63328ffbcf
fix error message during admin activation error
2020-03-05 12:01:16 +00:00
pedong
62f82cc83c
add dossierChangerGroupeInstructeur mutation
2020-03-05 12:28:16 +01:00
pedong
13ab3b465e
add groupe_instructeur in dossier_type
2020-03-05 12:26:04 +01:00
clemkeirua
2eda3b193c
fix missing procedure in AdministrationMailer#dossier_expiration_summary
2020-03-05 09:27:19 +00:00
maatinito
9b9eeb7476
#4808 procedure closing date starts now at midnight instead of 00h00 in the morning
2020-03-05 10:15:47 +01:00
maatinito
cbf95c6d86
Better wording for declarative procedure
2020-03-04 08:30:38 -10:00
Christophe Robillard
b5030b8972
highlight demandes when groupe instructeur updated on procedure list
2020-03-04 14:56:59 +01:00
Christophe Robillard
50007b2aac
highlight demande tab when groupe instructeur updated
2020-03-04 14:56:59 +01:00
Christophe Robillard
924702699f
highlight routing criteria label when updated
2020-03-04 14:56:59 +01:00
kara Diaby
b32ed88f9b
add attachment when instructor asking for a review
2020-03-04 13:35:29 +00:00
Paul Chavard
bebefbdffc
Fix template interpolation in reaffecter_dossiers
2020-03-04 10:56:14 +01:00
Paul Chavard
c46e012c10
Use dossier.assign_to_groupe_instructeur
2020-03-03 10:30:49 +01:00
Paul Chavard
1ed1aa75cd
[GraphQL] add groupeInstructeur on dossier
2020-03-03 10:23:18 +01:00
kara Diaby
44a63ae1c3
fix attestation template error case
2020-02-28 16:33:07 +01:00
kara Diaby
4a70a7fcc8
remove email_notifications_enabled column because of the new daily_email_notifications_enabled
2020-02-27 11:09:19 +01:00
clemkeirua
cfc584f496
suppression des preconditions sur sorted_ids et filtered_ids
...
Ces preconditions induisent un probleme de n+1. On peut résoudre le problème en supprimant la précondition, ou en incluant les procedures dans les dossiers
J'ai opté pour la suppression de la précondition, qui avait fait débat lors de son introduction:
667deae5cc (diff-b6be6196cd739f8b31e0b195677e46d6R176)
2020-02-26 15:21:42 +01:00
Christophe Robillard
2bd6f01009
log changer_groupe_instructeur
2020-02-26 11:25:07 +01:00
Christophe Robillard
e0f4957dfd
notify instructeur after groupe_instructeur changed
2020-02-26 11:25:07 +01:00
Christophe Robillard
fb3d7e45ba
unfollow stale instructeurs
...
when the group instructeur of a dossier is changed, unfollow the
instructeurs who don't belong to the new groupe instructeur
2020-02-26 11:25:07 +01:00
kara Diaby
6102ba6039
Do not permit to upload a GIF file via javascript
2020-02-25 23:33:15 +01:00
Paul Chavard
24d237de9e
A cloned procedure should not have canonical relationship
2020-02-25 15:26:43 +01:00
Pierre de La Morinerie
8eb6dd78a1
mailers: fix procedure_after_confirmation in the confirmation email
...
As mailers are run asynchronously, they don't have access to the
CurrentConfirmation defined in an earlier request.
For the procedure_after_confirmation to be serialized to the Mailer,
we need to pass it at creation time.
2020-02-25 15:17:09 +01:00
Pierre de La Morinerie
6664965961
mailers: add procedure context to the confirmation link
...
This allows to redirect the user to the procedure they signed up for
even when the browser session is not available (like if they changed
of browser).
Fix #4738
2020-02-25 11:45:36 +00:00
Paul Chavard
be66a8986c
Activate champ integer number on all the new procedures
2020-02-25 11:26:37 +01:00
Paul Chavard
ee1a930693
Update app/views/instructeurs/procedures/stats.html.haml
...
Co-Authored-By: Pierre de La Morinerie <kemenaran@gmail.com>
2020-02-25 09:12:58 +01:00
Paul Chavard
662ef451a9
Update app/views/stats/index.html.haml
...
Co-Authored-By: Pierre de La Morinerie <kemenaran@gmail.com>
2020-02-25 09:12:48 +01:00
Paul Chavard
d8eb3ebb94
Load chartkick and highcharts only on stat pages
2020-02-25 09:07:07 +01:00
Paul Chavard
0b06864f7a
Upgrade core-js
2020-02-24 19:43:07 +01:00
Pierre de La Morinerie
d49217bd72
procedure: improve wording for declarative procedures
2020-02-24 16:48:07 +00:00
Pierre de La Morinerie
cdf48bcfa6
procedure: add a default label to the declarative prompt
2020-02-24 16:48:07 +00:00
Pierre de La Morinerie
480765aa17
procedure: use smaller headers in the edit form
2020-02-24 16:48:07 +00:00
clemkeirua
ae14599245
#4700 : export files are antivirus-safe
2020-02-24 16:14:58 +00:00
clemkeirua
14a2be00e2
4806 - ajout de precisions sur l'export CSV
2020-02-24 14:45:01 +01:00
clemkeirua
4343bb3918
Revert "openly fail when not delivering mail"
...
This reverts commit 415cc2c2f1
.
2020-02-20 15:31:43 +00:00
kara Diaby
5dc5230791
Step1 : add new column to Assign_tos and make sure that the data is saved on form submit
2020-02-20 16:14:56 +01:00
clemkeirua
48d2093577
tag 'groupe instructeur' uniquement si la procedure est routee
2020-02-20 14:48:14 +00:00
clemkeirua
059d80ea34
#4785 ajout d'une balise 'groupe instructeur'
2020-02-20 14:48:14 +00:00
Paul Chavard
b7051da278
Remove old export code
2020-02-19 18:19:17 +01:00
Christophe Robillard
bb61500f9b
recherche un administrateur par email dans manager
2020-02-19 15:17:36 +01:00
Christophe Robillard
32d1ebe565
add administrateur from manager
2020-02-19 15:17:36 +01:00
Paul Chavard
e931c0800d
Remove notify_unhide_to_user and notify_undelete_to_user mailers
2020-02-18 17:56:52 +01:00
Paul Chavard
318baf316e
Add notify_en_construction_near_deletion mailer
2020-02-18 17:18:14 +01:00
Paul Chavard
8c77d91e9f
Add notify_automatic_deletion_to_administration mailer
2020-02-18 17:18:06 +01:00
Paul Chavard
4e116f06a6
Add notify_automatic_deletion_to_user mailer
2020-02-18 17:15:32 +01:00
kara Diaby
d8223bafa8
Add thousand separator on tabs instructors general view
2020-02-18 15:33:57 +01:00
Christophe Robillard
9f7b78ff8b
supprime les colonnes ignorées
2020-02-17 19:03:43 +01:00
Pierre de La Morinerie
d6a9318d05
champ: fix siblings
for repetition champs
...
Fix a crash when requesting the `section_index` of a section header
in a repetition champ.
2020-02-17 17:11:17 +01:00
Christophe Robillard
6e0d1eaee3
remove email ignored column for admin and instructeur
2020-02-17 15:01:40 +01:00
kara Diaby
9287188904
Fix the thousand separator in order to copy/paste without space
2020-02-17 11:31:12 +01:00
Paul Chavard
1ce1c1e6d0
use discard
2020-02-13 12:31:59 +01:00
Pierre de La Morinerie
838133477e
form: don't display index if the libelle already starts with a number
2020-02-13 11:21:30 +01:00
Pierre de La Morinerie
f8ed7ec051
form: display index of section in header
2020-02-13 11:18:46 +01:00
Pierre de La Morinerie
e746d90016
mailers: add a link to the procedure when the account already exists
2020-02-12 13:24:52 +00:00
kara Diaby
0b8a59d5e9
Add the possibility to disable weekly email notifications (instructeur) && rename the column email_notifications_enabled to daily_email_notification_enabled
2020-02-12 13:02:31 +00:00
Pierre de La Morinerie
e3ba2ed96c
Revert "form: add number to section headers"
...
This reverts commit f42977e40a
.
2020-02-12 13:54:44 +01:00
Pierre de La Morinerie
66112eb14e
dossier: add a link to the incident post-mortem
2020-02-12 11:49:33 +01:00
Pierre de La Morinerie
d4574bade1
dossier: add a custom message for the dossier owner
2020-02-12 11:49:33 +01:00
Pierre de La Morinerie
7ba76c6658
dossier: add a notice when some attachments of the dossier were lost
...
On the 22/01/2020, a technical error on the demarches-simplifees.fr
instance made us delete some files attached to some dossiers.
This PR adds a warning when browsing a dossier containing attachments
that were deleted.
2020-02-12 11:49:33 +01:00
Paul Chavard
7afeae1408
remove dossier.linked_dossiers
2020-02-11 17:49:22 +01:00
Paul Chavard
0d55743d9f
linked_dossiers_for should include dossiers_from_avis
2020-02-11 17:38:58 +01:00
Paul Chavard
f0ea96772d
Only invite experts to dossiers instructeur have access to
2020-02-11 17:38:57 +01:00
Paul Chavard
8a514e0713
Fix avis linked dossiers invitation checkbox
...
fix #4678
2020-02-11 17:38:57 +01:00
Pierre de La Morinerie
c517d22369
form: avoid outlining disabled controls on click
2020-02-11 17:36:50 +01:00
Pierre de La Morinerie
1531b69f5a
form: make the radio button larger and hoverable
...
As a bonus, the implementation of vertical radio buttons is now closer
from the default horizontal one.
2020-02-11 17:36:50 +01:00
Pierre de La Morinerie
f42977e40a
form: add number to section headers
2020-02-11 17:36:50 +01:00
Pierre de La Morinerie
2b47013798
form: improve the appearance of the repetitions header
2020-02-11 17:36:50 +01:00
Pierre de La Morinerie
005ff4bed5
form: fix the bottom margin of the siret element
2020-02-11 17:36:50 +01:00
Pierre de La Morinerie
8693ca3e3a
form: increase the font size of labels and notices
2020-02-11 17:36:50 +01:00
Pierre de La Morinerie
00b1eaff41
form: increase spacing between fields
2020-02-11 17:36:50 +01:00
Pierre de La Morinerie
58b4c2e53b
form: add a $default-fields-spacer constant
2020-02-11 17:36:50 +01:00
Pierre de La Morinerie
2532091302
form: improve wording of repetition blocks controls
2020-02-11 17:36:50 +01:00
Pierre de La Morinerie
469f4dc6f7
form: remove dead code
2020-02-11 17:36:50 +01:00
Pierre de La Morinerie
44e3a70db5
form: increase section title visibility
2020-02-11 17:36:50 +01:00
Pierre de La Morinerie
c4e78be77e
form: increase hr visibility
2020-02-11 17:36:50 +01:00
Pierre de La Morinerie
7b57a806e9
support: hint about the suggestions board on feature-upvote
2020-02-11 15:35:42 +01:00
simon lehericey
90113f1a22
Remove Rempli column for type de champ
2020-02-11 13:35:55 +00:00
simon lehericey
4f317e84d1
Iterate over type_de_champ in repetition type_de_champ
2020-02-11 13:35:55 +00:00
simon lehericey
a62e9fe6d2
Extract type de champ line
2020-02-11 13:35:55 +00:00
Pierre de La Morinerie
52ea019ba9
app: replace remaining references of DINSIC by DINUM
...
Fix #4488
2020-02-10 17:46:20 +00:00
Pierre de La Morinerie
123819f5d2
sign_in: remove the hint about password length
2020-02-10 11:07:08 +00:00
kara Diaby
805da59b99
add thousand separators to numbers (instructors page and pdf file)
2020-02-10 09:32:37 +01:00
Christophe Robillard
9fe005e4d7
fix pending demandes
2020-02-05 18:19:05 +01:00
clemkeirua
415cc2c2f1
openly fail when not delivering mail
2020-02-05 10:46:01 +01:00
Pierre de La Morinerie
c16409819b
mailers: fix some missing unbreakable space in emails
2020-02-04 17:09:25 +01:00
Christophe Robillard
50fcd24b46
admin: fix pending demandes
...
fetch email with map
2020-02-04 16:21:42 +01:00
Christophe Robillard
53f420c748
admin: fix sql column ambiguity
...
administrateurs_instructeurs and users (loaded by
Administrateur.default_scope) have administrateur_id column with same
name. This commit indicates which column to use for GROUP query.
2020-02-04 16:21:42 +01:00
Christophe Robillard
cef776ff9e
admin: fix add administrateur to a procedure
2020-02-04 16:21:42 +01:00
Christophe Robillard
f8309c45a6
admin: order by user email
2020-02-04 16:21:42 +01:00
Christophe Robillard
91f1722088
admin: always eager load the user relationship
...
Now that `Administrateur.email` is merely an alias to
`administrateur.user.email`,
and we changed every occurence of `administrateurs.pluck(:email)` to
`administrateurs.map(&:email)`, the new version using `map` may cause N+1
queries if the users have not been preloaded.
It makes sense to always preload the user when fetching an
Administrateur:
- Administrateur and User have a strongly coupled relationship
- It avoids N+1 queries everywhere in the app
Of course fetching an administrateur without needing its user will now do
an unecessary fetch of the associated user. But it seems better than
leaving a risk of N+1 queries in many places.
2020-02-04 16:21:42 +01:00
Christophe Robillard
4a1980e95a
admin: disable the email column
2020-02-04 16:21:42 +01:00
Christophe Robillard
ed970d3f3c
admin: create without providing email
2020-02-04 16:21:42 +01:00
Christophe Robillard
2bb161c3cb
admin: alias Administrateur.email
2020-02-04 16:21:42 +01:00
Christophe Robillard
055918aabc
admin: replace calls to Administrateur.find_by(email: ...)
2020-02-04 16:21:42 +01:00
Christophe Robillard
c137917396
fix typo
2020-02-04 16:07:01 +01:00
Christophe Robillard
deb11f281f
remove useless relation between administrateur and dossiers
2020-02-04 16:07:01 +01:00
Christophe Robillard
5a46effcbc
remove useless condition to admin that can be deleted
...
administrateur can be deleted only if he/she has a procedure where
he/she is the only admin
2020-02-04 16:07:01 +01:00
Christophe Robillard
6fc8a27bd7
destroys not all dossiers
...
but only dossiers for a specific user
2020-02-04 16:07:01 +01:00
Christophe Robillard
cee4c5b8fb
Revert "Revert "4127 fix superadmin supprime compte usager""
...
This reverts commit 751f24f7bb
.
2020-02-04 16:07:01 +01:00
Paul Chavard
5afe158c89
Tweak a bit timeout values for export polling
2020-02-03 15:56:10 +01:00
Paul Chavard
068471003d
Add a timeout to select2 queries
2020-02-03 15:34:08 +01:00
Paul Chavard
a86129c3a1
Revert "Revert "Update javascript dependencies and add webpack-bundle-analyzer""
...
This reverts commit eddd59e554
.
2020-02-03 14:54:25 +01:00
Paul Chavard
08400cdd4c
Poll for export readiness updates
2020-01-29 22:52:03 +01:00
Keirua
eddd59e554
Revert "Update javascript dependencies and add webpack-bundle-analyzer"
2020-01-29 14:51:55 +01:00
clemkeirua
1c3573c7db
fix DoubleRender error for brouillon pdf
2020-01-29 14:24:23 +01:00
clemkeirua
fcea7c4f85
remove invalid excel worksheet characters
2020-01-29 11:45:56 +01:00
Paul Chavard
6030409b2f
[GraphQL] Use GraphQL::Types::BigInt instead of Int
2020-01-28 21:48:00 +01:00
Pierre de La Morinerie
96932faa3f
models: add a Dossier#with_hidden scope, and remove unscoped
usages
2020-01-28 17:32:38 +01:00
Pierre de La Morinerie
1448d5b098
models: add a Procedure#with_hidden scope, and remove unscoped
usages
...
This avoids the broad use of `unscoped` to remove the `hidden_at`
clause.
2020-01-28 17:32:38 +01:00
Paul Chavard
4982039086
Fix fontawesome not tree shaking properly
2020-01-28 16:37:44 +01:00
Paul Chavard
7ebebf2e80
Refactor leaflet code for better loading
2020-01-28 16:37:44 +01:00
clemkeirua
5f65665b07
added a method for modifying a user email
2020-01-28 16:15:46 +01:00
Paul Chavard
0a928b2d6b
[GraphQL] use Execution::Interpreter
...
GraphQL-Ruby 1.9.0 includes a new runtime module which you may use for your schema. Eventually, it will become the default.
2020-01-28 15:39:37 +01:00
Paul Chavard
7478a51846
[GraphQL] use official skylight support
2020-01-28 15:39:37 +01:00
Pierre de La Morinerie
6eaf0f7804
dossiers: fix the sticky bar on IE 11
...
This allows IE 11 users to see the draft autosave indicator.
The layout on IE 11 is still buggy though - but it's better than
nothing.
2020-01-28 15:20:30 +01:00
Paul Chavard
eec38bad73
Ajouter les informations de l’instructeur et de l’expert dans l’export des avis
...
fix #4667
2020-01-28 15:09:41 +01:00
Pierre de La Morinerie
9da4fa9f4d
dossier: ensure the dossier groupe_instructeur is always present
...
Otherwise we loose the link to the dossier's procedure, which is
definitely a bad thing.
2020-01-28 14:58:34 +01:00
Pierre de La Morinerie
eb9388d59f
dossier: ensure the routing dropdown must be selected
...
A blank routing dropdown nullify the groupe_instructeur – which
also removes the link between the dossier and the procedure.
Fix #4717
2020-01-28 14:58:34 +01:00
clemkeirua
696e39761f
deal with secondary_options that can be nil
2020-01-28 14:30:26 +01:00
clemkeirua
65b4bcf3a1
Permet de déposer un dossier lorsqu'un menu déroulant lié obligatoire n'a pas de valeur (car la liste est légitimement vide) dans le second champ.
2020-01-28 14:30:26 +01:00
Paul Chavard
517ab25783
Register canonical procedure when demarche republished under existing path
2020-01-28 12:49:53 +01:00
Keirua
455f164d02
Detail the reason why we include the search term in the results
...
Co-Authored-By: Pierre de La Morinerie <pierre.de_la_morinerie@beta.gouv.fr>
2020-01-27 16:47:32 +01:00
clemkeirua
9e858ae5ad
possibilite de selectionner un resultat quand il n'y a rien dans le champ adresse
2020-01-27 12:51:06 +01:00
Paul Chavard
f03cca4386
Search departements by code
2020-01-23 14:12:19 +00:00
Pierre de La Morinerie
751f24f7bb
Revert "4127 fix superadmin supprime compte usager"
2020-01-21 18:57:54 +01:00
Pierre de La Morinerie
a63c3dbfc4
app: improve wording of the strike banner
...
Make it clearer that the strike affects only the DS staff.
2020-01-21 16:49:55 +01:00
Christophe Robillard
88e73d4039
raise exception if problem with destroy
2020-01-21 15:05:33 +01:00
Christophe Robillard
675bbdad15
transfere les services lors de suppression admin
...
Lorsqu'un administrateur est supprimé, ses services sont transférés à un
autre administrateur pour chacune de ses procédures
2020-01-21 15:05:33 +01:00
Christophe Robillard
d9570eedc6
empêche suppression d'un user qui est instructeur
2020-01-21 15:05:33 +01:00
Christophe Robillard
a6d007dbd3
supprime un instructeur
2020-01-21 15:05:33 +01:00
Christophe Robillard
d4de5769ee
empêche la suppression d'un user qui est admin
2020-01-21 15:05:33 +01:00
Christophe Robillard
d8a51f986f
supprime un utilisateur qui a des dossiers cachés
2020-01-21 15:05:33 +01:00
clemkeirua
fb87a87f47
code review changes
2020-01-20 16:15:02 +01:00
clemkeirua
794e95e6eb
fix total count of groupe_instructeur
2020-01-20 16:15:02 +01:00
clemkeirua
12430a8068
ajout d'un écran intermediaire pour gérer la reaffectation des dossiers
2020-01-20 16:15:02 +01:00
clemkeirua
45c8c8ca21
an admin can delete a groupe-instructeur with 0 dossier
2020-01-20 16:15:02 +01:00
clemkeirua
d6e7799370
removed routing condition in weekly summary
2020-01-20 14:23:19 +01:00
clemkeirua
7e15c6a4a4
add filtering by group in procedure_overview
...
The weekly overview do not work for instructeurs in procedures with multiples groups ;
they see dossiers that they do not have access to. Now the correct filter is added
2020-01-20 14:23:19 +01:00
Paul Chavard
4edc7b00cf
Use geocoder
2020-01-15 15:04:04 +01:00
Paul Chavard
14295db9ad
Revert "Revert "Merge pull request #4552 from tchak/champ-communes""
...
This reverts commit 4373cb22cb
.
2020-01-14 18:46:07 +01:00
clemkeirua
1a1d4a9c29
coexistence de l'ancien comportement avec le nouveau
2020-01-14 09:30:08 +01:00
clemkeirua
8da1185a5d
ajout des dates de changement de statut
2020-01-14 09:29:29 +01:00
clemkeirua
18e21f75c9
Retours de code review
...
- message_date_with_year systématique pour les messages
- tous les commentaires sont affiché
- gestion du champ 'Explication'
2020-01-14 09:29:29 +01:00
clemkeirua
cf385e326c
infos usagers, entreprise et champ siret
2020-01-14 09:29:29 +01:00
clemkeirua
bc506bf693
ajout d'un lien d'export pdf usager
2020-01-14 09:29:29 +01:00
clemkeirua
b153b0e5e2
modification du lien d'export pdf instructeur
2020-01-14 09:29:29 +01:00
clemkeirua
85d4adbf8b
ajout de l'export pdf pour instructeur
2020-01-14 09:29:29 +01:00
clemkeirua
4373cb22cb
Revert "Merge pull request #4552 from tchak/champ-communes"
...
This reverts commit 4cec26f73a
, reversing
changes made to 0ef25ef36c
.
2020-01-13 16:26:27 +01:00
Christophe Robillard
0f881f942b
raise if trying to del a user who can't be deleted
2020-01-13 10:06:43 +01:00
Christophe Robillard
696a058280
delete adminis with procs managed by other admins
2020-01-13 10:06:43 +01:00
Christophe Robillard
9a62d3fe0c
delete a user
2020-01-13 10:06:43 +01:00
Christophe Robillard
58ef36ff57
tells if a user can be deleted
2020-01-13 10:06:43 +01:00
Paul Chavard
785a09b326
Use service_url instead of blob_url on secure attachments
2020-01-08 14:43:05 +01:00
Paul Chavard
cccb04d725
ActiveStorage url should expire after an hour
2020-01-08 14:43:05 +01:00
Pierre de La Morinerie
b3558c497d
dossiers: make build_default_individual
explicit
...
It avoid the use of callbacks, and may avoid situations where an empty
individual is implicitely created.
2020-01-08 10:48:22 +01:00
Pierre de La Morinerie
5e05556ee8
dossiers: add a validation on dossier individual
...
Validate that a dossier on a `for_individual?` procedure always has
an `individual` associated record.
For this, the individual needs to be built before the record is
validated (i.e. even before the `before_create` callback is run).
This should help with #4596 : now if a dossier is created without an
`individual`, or if the `invividual` record is later removed, the
validation will fail.
2020-01-08 10:48:22 +01:00
Pierre de La Morinerie
e32a42cfe6
dossiers: split the dossier creation on several lines
2020-01-08 10:48:22 +01:00
Pierre de La Morinerie
5b2311c851
dossiers: rescue RecordNotFound only for procedures
...
This ensures that we won't rescue an `ActiveRecord::RecordNotFound`
exception related to another object.
2020-01-08 10:48:21 +01:00
Paul Chavard
e61e39d345
Remove unused code and tests
2020-01-07 11:52:51 +01:00
Paul Chavard
ff46ee366e
Fix user brouillon spec
2020-01-07 11:52:51 +01:00
Paul Chavard
4bbd16576b
Add champ communes
2020-01-07 11:52:51 +01:00
Paul Chavard
22aa2d4ee0
Make all location champs autocomplete
2020-01-07 11:52:51 +01:00
Paul Chavard
fa2eea81aa
Cleanup demarche archivee state
2020-01-07 11:13:42 +01:00
clemkeirua
4f604c8b0a
put the strike banner behind a feature-flip
2020-01-06 15:25:43 +01:00
Pierre de La Morinerie
a5f2c84cbf
sign_up: fix suggestions error when navigating away
...
When navigating away from the page, the field receives the 'focusout'
event – but stops to be present in the DOM.
Thus we need to check that the DOM element is actually present.
2019-12-19 17:45:14 +01:00
Pierre de La Morinerie
8eb295d67e
dossiers: avoid exceptions on invalid AASM transitions
...
When attempting an invalid transition on a dossier, provide a meaningful
error message (instead of letting an `AASM::InvalidTransition` exception
propagate).
This handles not only the case where the same state is applied twice
(which was already handled manually), but all cases where the transition
is invalid.
2019-12-19 13:25:32 +01:00
Pierre de La Morinerie
c7a307553c
helpers: allow dossier_display_state
to take a state as input
...
This allow to use either:
- `dossier_display_state(dossier)`
- `dossier_display_state(:en_construction)`
2019-12-19 13:22:40 +01:00
simon lehericey
2ee559c748
Fix typo in purges_stale_exports_job filename
2019-12-18 13:35:04 +01:00
simon lehericey
60538c9c28
Controller use new export model
2019-12-18 13:13:15 +01:00
simon lehericey
745086cbb5
Simplify view
2019-12-18 13:13:15 +01:00
simon lehericey
ce7ab89934
Add purge stale export job
2019-12-18 13:13:15 +01:00
simon lehericey
d0939ae1a4
Add Export Model
2019-12-18 13:13:15 +01:00
simon lehericey
d0f0533a32
Remove unused code
2019-12-18 13:13:15 +01:00
simon lehericey
f069f6f779
Make the new instructeur receive the affectation mail
2019-12-16 18:20:00 +01:00
simon lehericey
c02e8b9553
Routing: send emails to the right group
2019-12-16 17:47:08 +01:00
clemkeirua
c2c3f05262
p'tit fix d'utilisabilité
2019-12-16 09:49:23 +01:00
simon lehericey
278659dcb3
fix footer without tel
2019-12-12 15:57:47 +01:00
maatinito
9672d892e9
Bug with time zone: Time.zone.today looses time_zone and may breaks database comparisons
2019-12-11 17:34:10 +01:00
simon lehericey
058442c84e
[link to #4557 ] An instructeur cannot change its email on its own
2019-12-11 17:18:21 +01:00
simon lehericey
21910c959e
@current_user -> current_user
2019-12-11 17:18:21 +01:00
simon lehericey
301653bb89
Only display email form if the user is not instructeur
2019-12-11 17:18:21 +01:00
Paul Chavard
6b5793f0b9
[GraphQL] fix a crash in mutations with an attachment
2019-12-11 13:22:32 +01:00
Paul Chavard
422b7f37ec
[GraphQL] expose file information
2019-12-11 12:34:49 +01:00
Pierre de La Morinerie
ef76af5546
app: add a site-wide banner for the national strike
2019-12-04 17:32:04 +01:00
Paul Chavard
2f060fc30a
Add depubliee state to procedures
2019-12-04 16:52:41 +01:00
Paul Chavard
3a142fea40
Isolate react components from react loaders
2019-12-04 16:26:59 +01:00
Paul Chavard
03326169c5
Always load IntersectionObserver to fix old browsers
...
fix #4614
2019-12-04 16:26:59 +01:00
Pierre de La Morinerie
7f2d5f6248
app: unify pre-maintenance banner with other site-wide banners
2019-12-04 15:29:15 +01:00
Pierre de La Morinerie
704ac64f63
stylesheet: move all browser banner styles into site-banner.scss
2019-12-04 15:25:37 +01:00
Paul Chavard
e5f582d644
Afficher la description du champ répétable
...
fix #4579
2019-12-04 14:28:31 +01:00
Paul Chavard
b5eafdab56
[GraphQL]: informations du service
2019-12-04 14:21:40 +01:00
Paul Chavard
fd42fafcb4
[GraphQL]: informations du demandeur du dossier
2019-12-04 12:39:29 +01:00
Paul Chavard
34afc44813
Expose declarative démarche state in GraphQL
2019-12-04 12:30:26 +01:00
Paul Chavard
e429c79eb1
Allow administrators to set themselves démarches as déclaratives
2019-12-04 12:30:26 +01:00
Christophe Robillard
e35dcad5ae
rend le téléphone obligatoire côté client
2019-12-04 05:34:43 +01:00
Christophe Robillard
77b647fe25
N'affiche pas un telephone inexistant d'un service
2019-12-04 05:34:43 +01:00
Christophe Robillard
6eb36482bc
rend lisible l'explication d'un contact valide
2019-12-04 05:34:43 +01:00
Christophe Robillard
8ee6657f1e
rend le champ telephone optionnel côté client
2019-12-04 05:34:43 +01:00
Christophe Robillard
4e7c779116
refuse les numéros de tel invalides
...
rend facultatif les numéros de téléphone
2019-12-04 05:34:43 +01:00
Christophe Robillard
b60aff8468
explique en détail l'importance de renseigner des info de contact valides
2019-12-04 05:34:43 +01:00
Christophe Robillard
0b518844dc
explique pourquoi un tel valide est important
2019-12-04 05:34:43 +01:00
simon lehericey
508ba8f116
Add seek_and_destroy_expired_dossier
2019-12-03 17:18:53 +01:00
simon lehericey
006e426a11
Work on deletion mail
2019-12-03 17:18:53 +01:00
simon lehericey
79bfb8b143
Delete expired dossiers
2019-12-03 17:18:53 +01:00
simon lehericey
6391f7ff9c
Work on notify_near_deletion mailer
2019-12-03 17:18:53 +01:00
simon lehericey
03b7e81ca4
Send deletion notice for near expired brouillon
2019-12-03 17:18:53 +01:00
Pierre de La Morinerie
f351ade434
javascript: expose Turbolinks globally
...
When calling `redirect_to` in a Rails controller that emits Javascript,
Rails will emit `Turbolinks.replace(…)` commands. And for this,
Turbolinks needs to be globally available.
2019-12-03 16:28:47 +01:00
Pierre de La Morinerie
3212dfddca
app: allow hiding the browser banner for one week
2019-12-03 16:09:18 +01:00
Pierre de La Morinerie
299f9df375
app: on the old design, move the deprecation banner to a better location
...
Otherwise it hides the "Change role" controls.
2019-12-03 16:02:08 +01:00
Pierre de La Morinerie
2b934610a0
app: improve the browser deprecation banner appearance
2019-12-03 16:02:08 +01:00
clemkeirua
8b1535e462
ajout de pagination au sommet de la liste des dossiers
2019-12-03 14:55:43 +01:00
Pierre de La Morinerie
5928a16b37
Amélioration de la mise en page
2019-12-03 14:06:12 +01:00
clemkeirua
841b00bafe
focus sur le mot de passe lorsqu'on traite les suggestions
2019-12-03 14:06:12 +01:00
clemkeirua
8cab6ae19f
retours divers
2019-12-03 14:06:12 +01:00
clemkeirua
fdec2e04c3
la boite de suggestion d'email est en dessous du champ email
2019-12-03 14:06:11 +01:00
Pierre de La Morinerie
fb3f82074d
Hide the suggestions when the user corrects the address
2019-12-03 14:06:11 +01:00
Pierre de La Morinerie
1d1260060e
Fix the tests by using event delegation
2019-12-03 14:06:11 +01:00
clemkeirua
80b68afab5
implement email suggestion
2019-12-03 14:06:11 +01:00
clemkeirua
0bfdb2d5da
fermeture et acceptation de la suggestion d'email
2019-12-03 14:06:11 +01:00
Christophe Robillard
3db2d44fc0
affiche un warning pour l'email qqsoit l'email
2019-12-03 14:06:11 +01:00
clemkeirua
9e44af70b5
minor typo in textareas
2019-12-03 10:13:16 +01:00
clemkeirua
233c93bb7c
move p outside of label
2019-12-03 10:07:04 +01:00
clemkeirua
d712cc7a35
move ul outside of p
2019-12-03 10:07:04 +01:00
clemkeirua
9ae1a3c2d3
add missing alt
2019-12-03 10:07:04 +01:00
simon lehericey
4175aa0b28
GroupeInstructeur: do not use outdated email column
2019-12-02 14:52:01 +01:00
Paul Chavard
b845753a60
Fix admin creation
...
fix #4592
2019-11-29 20:14:35 +01:00
Paul Chavard
7b947feae4
Rename demarche archivée to demarche close
2019-11-28 15:07:16 +01:00
Paul Chavard
2cf415dc41
Simplify React components loader
2019-11-28 14:45:40 +01:00
Paul Chavard
c1c8ab7ac6
Disable transition from publiée to brouillon
2019-11-28 14:17:47 +01:00
Paul Chavard
3e334a3306
Drop test_started_at
...
# Conflicts:
# spec/models/procedure_spec.rb
2019-11-28 14:17:47 +01:00
benjaminhenkel
09d0c8d8a4
Correction d'une petite faute
2019-11-27 16:13:17 +00:00
Pierre de La Morinerie
b9fd844633
dossiers: fix autosave not ignoring file inputs
...
The dossier autosave is supposed to ignore file inputs (which are
handled differently by ActiveStorage).
Fix a typo in the CSS selector.
2019-11-27 13:57:39 +00:00
simon lehericey
6657459f9c
Fix add instructeur with empty mail
...
As select2 does not handle required attribute, we can only add server side logic
2019-11-27 14:39:16 +01:00
simon lehericey
71051441d6
only one h1
2019-11-27 12:59:08 +00:00
simon lehericey
38d433b53d
Add some role
2019-11-27 12:59:08 +00:00
simon lehericey
07112f2e15
Remove alt on decorative image
2019-11-27 12:59:08 +00:00
simon lehericey
2f47495173
Use h1 tag for .hero-tagline
2019-11-27 12:59:08 +00:00
simon lehericey
9296e24452
Reduce marianne image to 65px wide as ie11 cannot resize svg
2019-11-27 12:59:08 +00:00
simon lehericey
d4f256b735
Use text instead of image for logo
...
- "it is good design practice to use actual text that is styled with CSS rather than image-based text presentation" (https://www.w3.org/WAI/tutorials/images/textual )
- mm markup que https://www.gov.uk/ et que https://www.w3.org/WAI/tutorials/images/decorative/#decorative-image-as-part-of-a-text-link
2019-11-27 12:59:08 +00:00
Paul Chavard
e9f993fe0c
[GraphQL]: normalize date names in French
2019-11-27 12:23:00 +01:00
Pierre de La Morinerie
52051914aa
editor: disable the "Add champ" button until the champ is saved
...
Otherwise some champs are created before the previous one has been
saved, and React complains that several champs have the same
`champ-undefined` key.
(Plus it made the tests flaky and unreliable.)
2019-11-27 11:58:46 +01:00
Pierre de La Morinerie
7ed649dfca
editor: don't create a champ by default
...
Before the editor attempted to create a default champ as soon as the
list became empty.
This created many race conditions, which made the tests flaky.
Remove this behavior, and add an empty label instead.
2019-11-27 11:58:45 +01:00
Pierre de La Morinerie
f58f9f9950
dossiers: render a valid response after an autosave
...
This helps Firefox DevTools to mark the request as valid and completed
successfuly.
2019-11-27 10:37:33 +00:00
Pierre de La Morinerie
30b822b135
dossiers: don't trigger an autosave when an attachment is modified
...
The draft autosave should not be triggered when attaching a file
(as file inputs are handled separately).
2019-11-27 10:37:33 +00:00
Pierre de La Morinerie
c6eab70679
dossiers: autosave shouldn't send files being uploaded
...
When a file is being uploaded asynchronosely, hidden input fields
are created by DirectUpload to contain the result of the upload.
However, before the upload finishes, the value of these inputs is not
meaningful. Moreover, it makes the ActiveRecord signature invalid – thus
preventing drafts from being saved.
Exclude these fields from the auto-save.
2019-11-27 10:37:33 +00:00
Pierre de La Morinerie
64d96646a3
javascript: autosave with explicit cookies settings
...
Older browsers implemented a different default value for `window.fetch`
credentials: it was omitted unless explicitely set.
So we force the value for these older browsers:
- Firefox 39-60
- Chrome 42-67
- Safari 10.1-11.1.2
See https://github.com/github/fetch#sending-cookies
2019-11-27 10:37:33 +00:00
Pierre de La Morinerie
2309017727
javascript: add a window.fetch polyfill
...
This allows the autosave to work on browsers that don't support fetch:
- IE 11
- Edge < 14
- Safari < 11
2019-11-27 10:37:33 +00:00
maatinito
9de9a1fd71
Use time.zone functions instead of server time functions
...
(Time.zone.today vs Date.today)
2019-11-26 14:26:36 +01:00
maatinito
14bc2b99b9
auto-archive badly occurs in UTC time and not in local time (1 hour too late in France, 10 hours before in Tahiti ;-)
2019-11-25 14:39:42 +01:00
Pierre de La Morinerie
c2c332244e
manager: fix Instructeur and Administrateur email
...
Use the email attribute on the User (rather than the deprecated email
column on Instructeur or Administrateur).
Fix #4565
2019-11-25 13:01:22 +01:00
clemkeirua
9503a363e5
4378 Ajout des PJ de la messagerie dans le zip des PJs du dossier
2019-11-25 10:36:32 +01:00
Pierre de La Morinerie
b78134c691
specs: make the routing feature test more robust
...
- Use human-readable form labels
- Always wait for the result of the previous action to be loaded before
starting another action
2019-11-21 18:29:45 +01:00
simon lehericey
054181a16f
Champ Repetition has no label, thus it's displayed as a section
2019-11-21 15:34:59 +01:00
simon lehericey
2162522814
ul should have li childs
2019-11-21 15:34:59 +01:00
simon lehericey
bc85e9b7ec
Use aria-describedby to link notice and input again
...
https://www.w3.org/WAI/tutorials/forms/instructions/#using-aria-describedby
2019-11-21 15:34:59 +01:00
simon lehericey
84b125d272
p cannot be included in label
...
The main problem come from
%label{for: input_id}
#{champ.libelle}
%span.notice= string_to_html(champ.description)
%input
where string_to_html contains p tags
The proposed solution is
%label #{champ.libelle}
%p.notice
%input
It should be iso in the graphic sense.
2019-11-21 15:34:59 +01:00
simon lehericey
d5da7916e5
Placeholder not allowed in date input
2019-11-21 15:34:59 +01:00
simon lehericey
f45ede7f44
href should not contain space
2019-11-21 15:34:59 +01:00
clemkeirua
f2c69400aa
add rescue_from to UserDeviseMailer
2019-11-21 14:59:30 +01:00
Pierre de La Morinerie
6de5c0c9d1
autosave: make requests time out
...
This avoids recent requests being stuck because an older request never
finished.
2019-11-21 14:00:06 +01:00
Pierre de La Morinerie
68f5aae99d
autosave: add feature test
2019-11-21 14:00:06 +01:00
Pierre de La Morinerie
bff7892ba8
dossiers: autosave drafts
2019-11-21 14:00:06 +01:00
Paul Chavard
0c6705f7fd
Drop old export service
2019-11-21 10:25:40 +01:00
clemkeirua
be7fde1103
fix UnknownFormat raised in Instructeurs::ProceduresController#download_export
2019-11-21 09:52:38 +01:00
Pierre de La Morinerie
74a9db6580
javascript: make utils resilient to missing elements
2019-11-20 17:36:09 +01:00
Christophe Robillard
b42f21264e
permet le suivi auto après envoi instructeur
...
Close #4163
2019-11-20 16:41:30 +01:00
Pierre de La Morinerie
5f9a9d059e
dossiers: render JSON if needed
...
When receiving a request that expects JSON, return a simple '200'.
This avoids the unecessary work of rendering all the HTML page (which
ultimately will not be used).
2019-11-20 11:30:27 +01:00
Pierre de La Morinerie
8b8a96abda
dossiers: save draft by default (instead of submitting)
...
Make the default behavior of `update_brouillon` be to update the draft,
instead of submitting the dossier.
This makes all requests made to `update_brouillon` without specifying
an extra `submit_draft` parameter to just save the draft. It will make
autosaving the draft easier and safer.
2019-11-20 11:24:31 +01:00
Pierre de La Morinerie
03a7bc3d5a
dossiers: give the edit form an unique id
2019-11-20 11:24:31 +01:00
Pierre de La Morinerie
b90cd9f28f
styles: fix hover on dropdown items
...
More specifically, fix items in the Help dropdown displaying a pointer
cursor on the whole area – where only the links inside the item should
have the hover cursor.
Also, having a `cursor: pointer` rule applied only on hover state is
difficult to debug: better to apply it always, and let the browser
handle it.
2019-11-20 10:48:53 +01:00
simon lehericey
59d5cd7abc
fix label > div by label > span
2019-11-19 15:14:06 +01:00
simon lehericey
45ff1fd697
Change span by div to fix Element p not allowed as child of element span
2019-11-19 15:14:06 +01:00
simon lehericey
4a5059ed34
Add alt='' to decorative image https://www.w3.org/WAI/tutorials/images/decorative/
2019-11-19 15:14:06 +01:00
simon lehericey
0e6ffd0baa
Fix table layout: tbody was wrapped in thead
2019-11-19 15:14:06 +01:00
simon lehericey
279696451e
Fix html: Element div not allowed as child of element span
2019-11-19 15:14:06 +01:00
simon lehericey
59432594a0
Header: same outline for the search button
2019-11-19 15:14:06 +01:00
simon lehericey
9f6b9c5028
Make the help button accessible for keyboard
2019-11-19 15:14:06 +01:00
simon lehericey
0a3a47339c
Add title to print button
2019-11-19 15:14:06 +01:00
simon lehericey
41445564b4
Remove unused .header-help div
2019-11-19 15:14:06 +01:00
simon lehericey
fa808c8010
Make login w3c compatible again
2019-11-19 15:14:06 +01:00
simon lehericey
dae7a3bfd0
[ fix #4529 ] Log user email in manager space
2019-11-19 12:15:03 +01:00
Paul Chavard
e600aceccc
[GraphQL]: add dossier state change mutations
2019-11-19 11:51:34 +01:00
simon lehericey
3217f18a0b
Simple wording
2019-11-18 17:08:51 +01:00
simon lehericey
874439580b
Pluralize some texts
2019-11-18 17:08:51 +01:00
simon lehericey
67495e9662
Add person icon to table
2019-11-18 17:08:51 +01:00
simon lehericey
9ca026a630
Use a select2 box for looking to instructeurs
2019-11-18 17:08:51 +01:00
benjaminhenkel
2f6b1fa302
Maj message quand messagerie désactivée
2019-11-18 14:28:05 +01:00
simon lehericey
efd35a3de7
Accessibility: outline links to ease keyboard navigation
2019-11-14 09:50:04 +01:00
Paul Chavard
ba03dbf8dd
[GraphQL] Add dossierEnvoyerMessage mutation
2019-11-13 19:54:27 +01:00
Paul Chavard
3db741b6b6
[GraphQL]: add ValidationErrorType
2019-11-13 19:54:27 +01:00
Paul Chavard
9ce81f665b
[GraphQL]: fix geo_areas docs
2019-11-13 15:53:56 +01:00
Paul Chavard
a23e84bc57
[GraphQL]: more docs
2019-11-13 15:53:56 +01:00
Paul Chavard
ea6667ff9f
[GraphQL]: démarche and dossier number should be a number
2019-11-13 15:53:56 +01:00
Paul Chavard
556ec351f3
Drop email on instructeurs
2019-11-13 15:38:44 +01:00
Paul Chavard
2874b31c44
Bump activestorage-openstack
2019-11-13 11:59:43 +01:00
Pierre de La Morinerie
88373ddf20
individual: raise when the individual object cannot be created
...
Currently, a number of dossiers in production are for procedures for
individuals, but don't have a `individual` object.
This is probably because creating the Individual from France Connect
infos fails – but fails quietly, and nullify the relationship.
As a first step, we now raise an exception when the creation from FC
infos fails. We will then identify the issue, and see if we can fix it –
or if we should be resilient to this kind of issues.
2019-11-12 18:29:37 +01:00
Paul Chavard
ac092089ff
Remove service.siret from manager
2019-11-12 17:39:36 +01:00
Paul Chavard
fa741c9bae
[GraphQL]: do not return dossiers brouillons
2019-11-07 22:07:42 +01:00
Paul Chavard
990c867c2e
[GraphQL] Add more filters to dossiers
2019-11-07 22:07:42 +01:00
Paul Chavard
5bc8b5fe12
Implement ActiveStorage::FileNotFoundError
2019-11-07 17:20:09 +01:00
Pierre de La Morinerie
8a7f4ec769
editor: reduce scroll duration when inserting a new champ
...
The previous default was 1s, which felt slooooow.
2019-11-07 15:49:15 +01:00
Pierre de La Morinerie
fc8a0d46ff
editor: insert new champs after the last fully visible champ
...
Before, when the "Add new champ" button was clicked, the new champ
was inserted after the **first** fully visible champ.
That was most of the time unexpected. The correct behavior would be to
insert the new champ after the **last** fully visible champ.
That's what this commit does. Now the "Add new champ" behavior feels
much less confusing.
2019-11-07 15:19:11 +01:00
Paul Chavard
f22b39b7c5
Handle non unique champ repetable labels
...
fix #4466
2019-11-07 14:27:52 +01:00
Paul Chavard
2a61ed5b1c
Export etablissement information in csv
...
fix #4440
2019-11-07 14:27:52 +01:00
Paul Chavard
4231b81727
[GraphQL] Add create direct upload mutation
2019-11-07 12:48:51 +01:00
simon lehericey
9469734f29
Follow flipper name convention to appears on manager admin page
2019-11-07 11:09:05 +01:00
clemkeirua
75923f7cb2
add explanation about rescue_from in application_mailer
2019-11-07 10:13:11 +01:00
clemkeirua
7f76ab6671
disable retry sending a mail with an invalid email adress
2019-11-07 10:11:48 +01:00
simon lehericey
1a1bd306b1
Add main and headers tags in layout (RGAA 9.2.1)
2019-11-06 17:18:08 +01:00
simon lehericey
9c7feae0b2
RGAA fix : 9.1.2 Dans chaque page Web, la hiérarchie entre les titres (balises h ou balise possédant un role ARIA "heading" associé à une propriété aria-level) est-elle pertinente ?
2019-11-06 17:01:07 +01:00
simon lehericey
b6765a03ae
Footer: remove top list and make each column a list as service-public.fr
...
(note: not so sure because of https://www.service-public.fr/P10025 )
2019-11-06 17:01:07 +01:00
simon lehericey
6ec2b084c7
h3 -> p
2019-11-06 17:01:07 +01:00
simon lehericey
16814af474
Make (part of) the html valid again
...
simple_format always wraps its content so the better idea I have got was to use a span to avoid p in p.
2019-11-06 17:01:07 +01:00
simon lehericey
8efac29eba
Better structure footer-site-links in list
...
it follows service-public.fr structure
- remove extraneous footer-link class
- remove extraneous space with `>` haml weird stuff
- homogenize json-style hash
- merge classes on ul
- use pseudo element for eye candy
2019-11-06 17:01:07 +01:00
simon lehericey
79968f12fb
RGAA A : h4 => span in top dropdown item to respect title hierarchy (9.1.2)
2019-11-06 17:01:07 +01:00
simon lehericey
daeeeda583
RGAA: ajout de title aux links
2019-11-06 17:01:07 +01:00
Chaïb Martinez
a00ce94eea
RGAA A : ajout de l'attribut alt pour les images
...
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-11-06 17:01:07 +01:00
Chaïb Martinez
47b177fd31
RGAA A : L'attribut alt est absent pour le logo des demarches
...
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-11-06 16:50:10 +01:00
clemkeirua
04c13190c3
introduce smtp_key in order to use 2 different sendinblue keys
...
client_key is exposed to the client via gon, so if we use it for sending email too we are exposing a key so anybody could send an email.
The current client_key has a different level of right and can't send emails so it's ok to expose it.
2019-11-06 13:34:36 +01:00
clemkeirua
959aacdea5
Sendinblue email balancing using proper credentials
...
This reverts commit c61981e795
.
2019-11-06 13:34:36 +01:00
Paul Chavard
0562e2728f
Fix type_de_champ validation error
2019-11-06 12:54:07 +01:00
Paul Chavard
ee62d6fca4
Fix move type de champs
2019-11-06 12:54:07 +01:00
Paul Chavard
a708b071dd
Do not crash with champ repetable with no children
2019-11-06 12:54:07 +01:00
Paul Chavard
f5c80f211d
Guard for missing attestation on dossier
2019-11-06 12:54:07 +01:00
Paul Chavard
95f98fe605
API v1 correctly handle resultats_par_page
2019-11-06 12:54:07 +01:00
Pierre de La Morinerie
8df91df9fa
assigns: strip and lowercase the search filter
2019-11-06 12:16:30 +01:00
Pierre de La Morinerie
0eeac59ecd
assigns: fix search among the unassigned instructeurs
...
This was broken since moving the email out of the Instructeur column.
2019-11-06 12:16:30 +01:00
Paul Chavard
08b1a0f90d
[API Carto]: use typhoeus and correctly handle errors
2019-11-06 11:10:56 +01:00
simon lehericey
9f5169eb7d
Remove unused Administrateur.reset_password method
2019-11-05 14:10:39 +01:00
simon lehericey
395aba8bbc
Remove administrateur active notion
2019-11-05 14:10:39 +01:00
simon lehericey
5643e671a0
Code use user.active?
2019-11-05 14:10:39 +01:00
simon lehericey
b193dd1465
User get the active notion
2019-11-05 14:10:39 +01:00
Pierre de La Morinerie
c37bfc7349
instructeurs: fix email casing in invitation
...
When inviting an instructeur, the code first looked up an existing
instructeur using the normalized (downcased) email address–but then
tried to promote it using the non-normalized version, which failed.
This fixes the issue by always using the normalized email.
2019-11-05 10:54:58 +01:00
simon lehericey
e3d7688e66
[ fix #4473 ] Invite_administrateur!: do not reset password if the user is active
2019-11-05 10:29:39 +01:00
simon lehericey
243bc2887f
Invite_administrateur!: remove unused return
2019-11-05 10:29:39 +01:00
Pierre de La Morinerie
f63cd86811
webhook: fix a crash when the Helpscout customer is unknown
2019-11-04 18:36:52 +01:00
clemkeirua
c61981e795
Revert "Sendinblue email balancing using interceptor"
...
This reverts commit b2135b6576
.
2019-11-04 15:55:08 +01:00
Chaïb Martinez
b2135b6576
Sendinblue email balancing using interceptor
...
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-11-04 15:30:44 +01:00
Pierre de La Morinerie
2e8d365b93
instructeurs: disable the email column
2019-11-04 10:44:24 +01:00
Pierre de La Morinerie
f8358b3ae9
instructeurs: create without providing the email
2019-11-04 10:44:24 +01:00
Pierre de La Morinerie
f131dbb80d
instructeurs: make the create form not using email directly
...
Before the form attempted to read an email value from the Instructeur
model, and failed (because the empty Instructeur had no user yet).
We could let `Instructeur#email` return `nil` if there is no User –
but as a created Instructeur is always supposed to have a User, this
seems like a nice safeguard to keep.
So instead this commit rewrites the create form, which now doesn’t
depend on an Instructeur model. Seems easy enough for now.
2019-11-04 10:44:24 +01:00
Pierre de La Morinerie
d78d206544
instructeurs: fix expert creation not to use Instructeur.email
...
It kind of worked until now, because the email field is disabled, and
thus never accessed.
But better make it clean, by accessing an object (User) where the email
field actually exists.
2019-11-04 10:44:24 +01:00
Pierre de La Morinerie
8e6930d257
instructeurs: fix ProcedurePresentation to use instructeur.user.email
...
The `joins` are declared explicitely in order to associate a predictable
name to the joined table.
Otherwise, when the query is joined with `:users`, ActiveRecord will
alias the join automatically to solve the conflict. Unfortunately, the
automatic resolution means that the table name becomes unpredictable,
and thus unsuitable to perform queries on.
2019-11-04 10:44:24 +01:00
Pierre de La Morinerie
8b8213c301
instructeurs: always eager load the user relationship
...
Now that `Instructeur.email` is merely an alias to `instructeur.user.email`,
and we changed every occurence of `instructeurs.pluck(:email)` to
`instructeurs.map(&:email)`, the new version using `map` may cause N+1 queries
if the users have not been preloaded.
It makes sense to always preload the user when fetching an Instructeur:
- Instructeur and User have a strongly coupled relationship
- It avoids N+1 queries everywhere in the app
Of course fetching an instructeur without needing its user will now do an
unecessary fetch of the associated user. But it seems better than leaving
a risk of N+1 queries in many places.
2019-11-04 10:44:24 +01:00
Pierre de La Morinerie
a462edb9bc
instructeurs: alias instructeur.email
...
This also means we need to replace instances of `pluck` on the email
column.
2019-11-04 10:44:24 +01:00
Pierre de La Morinerie
cd478b489e
instructeurs: replace calls to Instructeur.find_by(email: …)
2019-11-04 10:44:23 +01:00
Paul Chavard
839b0d7e6d
Add Entreprise raison sociale to dossier export
...
fix #4422
2019-10-31 17:11:46 +01:00
Paul Chavard
18e91e7ca3
Extend old export format till mid-November
2019-10-31 17:11:46 +01:00
Pierre de La Morinerie
627d30191f
manager: allow hidden procedures to be searched
...
The Manager::DossiersController already allow hidden dossiers to be
searched and displayed. Give the same behavior to Procedures.
2019-10-31 17:03:02 +01:00
Pierre de La Morinerie
076e3a9294
procedure: improve layout of the "webhook" field
2019-10-31 16:04:47 +01:00
Pierre de La Morinerie
817662f7d9
procedure: move description to views/shared
...
Now that the description is used not only in the layout, but also in the
procedure form, better to make it an official shared partial.
2019-10-31 10:27:19 +01:00
Pierre de La Morinerie
2e0ef84941
images: rename 'attachment' icon to 'attached'
...
This avoids conflicts with the 'attachment' component.
2019-10-31 10:27:19 +01:00
Pierre de La Morinerie
aea93779cc
procedure: use the attachment view to upload files
2019-10-31 10:27:19 +01:00
Pierre de La Morinerie
1c61f2de58
views: refactor the attachment/edit view
...
Make it more reusable, by:
- Renaming `attachment/update` to `attachment/edit`
- Refactoring the CSS styles into their own stylesheet
- Allow to specify the 'accept' option
2019-10-31 10:27:19 +01:00
Pierre de La Morinerie
5be83bd01e
procedure: make the layout more similar to the mockup
2019-10-31 10:27:19 +01:00
Pierre de La Morinerie
02384b078c
procedure: remove UI to edit the european flag
...
This is an option we want to deprecate, and remove entirely in the
future.
Admins can still add the EU flag manually to their uploaded logo.
2019-10-31 10:27:19 +01:00
Pierre de La Morinerie
112b44bdea
procedure: align radio buttons vertically
...
- Remove the unused `.radios.vertical`
- Add a `.editable-champ-radio.vertical` variant for vertical radios
- Add an example of vertical radios to the patron
- Use vertical radios to display the procedure options
2019-10-31 10:27:19 +01:00
Nicolas Bouilleaud
72b7ff221c
move procedure to new design
2019-10-31 10:27:19 +01:00
simon lehericey
652e95d0c5
Add link from instructeur procedure view
2019-10-30 14:27:51 +01:00
simon lehericey
477f7c9837
Remove instructeur
2019-10-30 14:27:51 +01:00
simon lehericey
79b808470c
Add instructeur
2019-10-30 14:27:51 +01:00
simon lehericey
94081a3997
Show Groupe Instructeur
2019-10-30 14:27:51 +01:00
simon lehericey
4491dca19a
Index Groupe Instructeur
2019-10-30 14:27:51 +01:00
simon lehericey
def9c67c56
Clean html
2019-10-30 14:27:51 +01:00
Paul Chavard
6a3d725134
Revert "Revert "Decommission ActiveStorage proxy service and use openstack service""
...
This reverts commit 71227be37f
.
2019-10-30 12:11:45 +01:00
simon lehericey
71227be37f
Revert "Decommission ActiveStorage proxy service and use openstack service"
...
This reverts commit 0ff6c793ae
.
2019-10-29 10:30:40 +01:00
simon lehericey
4febf1851f
notifications_for_procedure is now based on instructeur.groupe_instructeurs
2019-10-25 09:42:17 +02:00
simon lehericey
d411bfddc8
We can send a dossier to instructeurs from the same groupe
2019-10-25 09:42:17 +02:00
simon lehericey
e290fc3674
No need to update column as the sign_up process activates the user
2019-10-24 18:32:48 +02:00
simon lehericey
8ae592fe25
[ fix #4361 ] administrateur active
2019-10-24 18:32:48 +02:00
Pierre de La Morinerie
dc1f3b4220
champs: add a "plus" icon to the "Add row" button
2019-10-24 16:52:29 +02:00
Pierre de La Morinerie
906f0fc468
champs: fix margin of "Add row" button in the Preview
2019-10-24 16:52:29 +02:00
Pierre de La Morinerie
35e97ac617
patron: add content to the repetition champ
2019-10-24 16:52:29 +02:00
Pierre de La Morinerie
8f4ead96b0
patron: make the labels more readable
2019-10-24 16:52:29 +02:00
clemkeirua
d9e993571c
add a warning during export generation
2019-10-24 16:27:10 +02:00
clemkeirua
cb5f922bb6
cleanup the queue flag during cleanup job
2019-10-24 16:27:10 +02:00
clemkeirua
da590cc73a
sequence async file generation so that the queue flag is cleared
2019-10-24 16:27:10 +02:00
Pierre de La Morinerie
bb024d1850
javascript: display a localized message on upload errors
2019-10-24 16:12:56 +02:00
Pierre de La Morinerie
a3057afc22
javascript: report upload errors to Sentry
2019-10-24 16:12:56 +02:00
Paul Chavard
a192924ee5
Fix infinit rerendering of TypeDeChamp component
...
fix #4428
2019-10-24 13:31:54 +02:00
simon lehericey
90ae4181bf
fix dossier_linked_path in routed procedure
2019-10-23 21:47:20 +02:00
simon lehericey
fbe93e0fce
Fix pluralization in search page
2019-10-23 21:47:20 +02:00
simon lehericey
35bba62297
Update routing critéria name
2019-10-23 21:47:20 +02:00
simon lehericey
d136d023cd
Add feature flipped link in admin nav bar
2019-10-23 21:47:20 +02:00
simon lehericey
a5ffe9f54b
Remove instructeur from the group
2019-10-23 21:47:20 +02:00
simon lehericey
a6deafd885
Add instructeurs to groupe
2019-10-23 21:47:20 +02:00
simon lehericey
3dd3af8482
Groupe instructeur update
2019-10-23 21:47:20 +02:00
simon lehericey
9a6336f508
Groupe instructeur create
2019-10-23 21:47:20 +02:00
simon lehericey
733e83cc54
Groupe instructeur show
2019-10-23 21:47:20 +02:00
simon lehericey
2749c00ce3
Groupe instructeur index
2019-10-23 21:47:20 +02:00
simon lehericey
6a974663b0
An instructeur owns procedure with groupe instructeur mechanisme
2019-10-23 21:47:20 +02:00
simon lehericey
1fa149575c
Add constraints to GroupeInstructeur
2019-10-23 21:47:20 +02:00
simon lehericey
4b058001aa
Fix active link in left panel
2019-10-23 21:47:20 +02:00
Paul Chavard
0ff6c793ae
Decommission ActiveStorage proxy service and use openstack service
...
We are making these changes in order to always use DS_Proxy. Before this change DS_Proxy was not used to write files when ActiveStorage was used directly and not through “direct upload”.
2019-10-23 17:58:00 +02:00
Paul Chavard
86b271997b
Invite experts to linked dossiers
...
closes #3669
2019-10-23 13:10:09 +02:00
Pierre de La Morinerie
d542bca8de
admin: relabel the number
champ
...
Avoid two type de champs having the same label.
Soon this champ will even be deprecated and disappear.
Ref #4414
2019-10-22 15:59:43 +02:00
clemkeirua
ec78c99a2a
ajout d'un job de suppression des vieux exports
2019-10-22 15:23:49 +02:00
clemkeirua
7290214624
uniformize export wording in UI
2019-10-22 12:15:49 +02:00
clemkeirua
4a6893d88b
migrate sendinblue API to v3
2019-10-22 10:06:53 +02:00
clemkeirua
87741f4b49
introduce constant for exports
2019-10-22 09:51:14 +02:00
clemkeirua
cdab08b198
UI work
2019-10-22 09:51:14 +02:00
clemkeirua
43424e4f4e
merge with the work of paul, using 3 links
2019-10-22 09:51:14 +02:00
clemkeirua
70ea5e167e
procedure download is performed through a controller in order not to leak the URL
2019-10-22 09:50:58 +02:00
clemkeirua
1af2b63ed1
initial implementation of async export
2019-10-22 09:50:58 +02:00
simon lehericey
18de25fac7
Display the dossier.groupe_instructeur.label on various screens
2019-10-17 15:48:14 +02:00
simon lehericey
b7434c3132
User can choose its gi
2019-10-17 15:48:14 +02:00
simon lehericey
6b8cefa551
Procedure: defaut_groupe_instructeur is the first group
...
Especially useful when the defaut groupe is renamed ...
2019-10-17 15:48:14 +02:00
simon lehericey
5897464224
Build Dossier champ only once
2019-10-17 15:48:14 +02:00
Pierre de La Morinerie
db0fede521
views: improve the state button
...
- Turn the "accepted" infos into standard dropdown sections
- Display the justificatif even if there is no motivation
2019-10-15 12:48:14 +02:00
Pierre de La Morinerie
dd57953b76
views: refactor the state button
...
Now that all states have a dropdown, we can simplify the code.
This also brings the "Repasser en instruction" action for all states
(including when no attestation or motivation is present).
2019-10-15 12:48:14 +02:00
Pierre de La Morinerie
07f75ff20e
views: fix missing attestation link
...
- Fix the missing link to see attestations (see #4400 )
- Fix the "Repasser en instruction" wording being confusing for
accepted state
- Add lot of tests
2019-10-15 12:48:14 +02:00
Pierre de La Morinerie
0e5f66c5ba
views: make the "Voir l'attestation" UI simpler
...
Instead of adding a button, just turn the "attestation" text into a link
2019-10-15 12:41:37 +02:00
Pierre de La Morinerie
0064c2c610
views: tell an attestation will be sent only if it is true
...
Previously the message stating "an attestation will be sent" was
displayed even when the attestation was disabled.
2019-10-15 12:41:37 +02:00
Pierre de La Morinerie
e0571a8ae3
avis: improve layout and wording
2019-10-14 16:03:08 +02:00
Pierre de La Morinerie
c2e82e4145
champ_policy: allow instructeurs to access private annotations
...
Fix #4388
2019-10-08 14:34:12 +02:00
Pierre de La Morinerie
a20b6b73a2
policies: rename "Scope" to "ApplicationScope"
...
For clarity.
2019-10-08 14:28:26 +02:00
simon lehericey
785b8fd78f
Remove simple form from mail_templates
2019-10-08 10:57:35 +02:00
simon lehericey
0c15326df6
User: inactive user have never signed_in
2019-10-08 10:09:16 +02:00
simon lehericey
3e0f1b9c66
User: eager load instructeur and administrateur to remove 2 db requests per http request
2019-10-08 09:53:40 +02:00
simon lehericey
5143d341ec
Admin: 1 query for crips
2019-10-08 09:53:40 +02:00
Paul Chavard
e7ed408e08
Auto-link valeur des champs
...
closes #2865
2019-10-07 21:20:24 +02:00
clemkeirua
053cc5cfc5
[ fix #4058 ] instructeur peut passer accepte → instruction
2019-10-07 15:17:33 +02:00
clemkeirua
d3063c0b63
remove download_as_zip feature flag
2019-10-03 10:48:24 +02:00
clemkeirua
d8bc73b972
fix wording
2019-10-01 15:32:03 +02:00
clemkeirua
49cc3d4ba5
merci: ne pas afficher qu'un dossier peut être modifié si pas possible
2019-10-01 15:32:03 +02:00
Chaïb Martinez
d71ab9a7a8
Add "continuer" button 👉
...
[fix #4369 ]
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-10-01 10:26:42 +02:00
Chaïb Martinez
19590d9814
add "sortir" link
...
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-10-01 10:16:02 +02:00
Chaïb Martinez
4225951a1d
minor fix
...
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-10-01 10:16:02 +02:00
Chaïb Martinez
9b98bcd176
remove duplicate link
...
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-10-01 10:16:02 +02:00
Chaïb Martinez
8b895df34c
Update "nouveauté" link
...
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-10-01 10:16:01 +02:00
simon lehericey
451387d32d
Dossier: add conditions on joins for with_notifications scope
2019-09-26 15:46:20 +02:00
Paul Chavard
3f36153807
[GraphQL] Add groupe_instructeurs to demarche
2019-09-26 11:25:14 +02:00
Nicolas Bouilleaud
03c950ea97
Move followed_dossiers_with_notifications to a Dossier scope
...
Instead of instructeur.followed_dossiers_with_notifications, we can now write instructeur.followed_dossiers.with_notifications.
Yay composition!
2019-09-25 14:10:00 +02:00
Nicolas Bouilleaud
1505d45be1
Optimize notifications queries for badges by using exists?, not present?
...
`ActiveRecord::Relation.exists?` yields a SQL EXISTS query, while `present?` is a method of Enumerable, which needs the actual result array to be queried.
2019-09-25 14:10:00 +02:00
Nicolas Bouilleaud
a4166d3c57
Refactor Instructeur.notifications_* methods
...
- rename `dossiers_id_with_notifications` to `followed_dossiers_with_notifications`,
- rename `notifications_per_procedure` to `procedures_with_notifications`,
- return an ActiveRecord::Relation instead of the result of the query, so that the call place can compose it,
- `merge` with the wanted Dossier scope in the call places, don’t bother passing it as a parameter,
- use the “state” (now “scope”) parameter as a scope method that can be just applied on `Dossier`.
2019-09-25 14:10:00 +02:00
Nicolas Bouilleaud
650e973d0a
Fix plural in entreprise(s).data.gouv.fr
2019-09-24 16:20:34 +02:00
Vini75
8c977dca09
Adjust link to entreprisedatagouv
2019-09-24 16:14:31 +02:00
Vini75
9968eb69c0
Adjust link to entreprisedatagouv
2019-09-24 16:14:23 +02:00
Vini75
7f1b34926f
link to entreprisedatagouv.fr on user
2019-09-24 15:55:06 +02:00
Vini75
606c084914
Add link to entreprises datagouv.fr
2019-09-24 15:49:25 +02:00
Paul Chavard
da4523612a
Update graphql schema
2019-09-24 10:47:21 +02:00
Paul Chavard
5a7e415474
Put graphql behind a feature flag
2019-09-24 10:47:21 +02:00
Paul Chavard
eb7aba18e6
Add dossier champs and annotations types
2019-09-24 10:47:21 +02:00
Paul Chavard
1c10718c11
Add messages and avis types
2019-09-24 10:47:21 +02:00
Paul Chavard
8928eaba11
Add demarche champs and annotations types
2019-09-24 10:47:21 +02:00
Paul Chavard
bf6fbbf2b6
Add graphql end point
2019-09-24 10:47:21 +02:00
Paul Chavard
5a7eb734ff
Dump graphql schema for reference
2019-09-24 10:47:21 +02:00
Paul Chavard
ba683a107c
Add authorizations to root queries
2019-09-24 10:47:21 +02:00
Paul Chavard
a7fc4df09b
Resolve models and types
2019-09-24 10:47:21 +02:00
Paul Chavard
e06051bc96
Add graphql root types
2019-09-24 10:47:21 +02:00
Paul Chavard
52e84f2ffe
Add graphql object types
2019-09-24 10:47:21 +02:00
Paul Chavard
9bb52dfb8c
Add graphql base types
2019-09-24 10:47:21 +02:00
Paul Chavard
d2fdaacb5d
Add Api::V2::Schema
2019-09-24 10:47:21 +02:00
Paul Chavard
2e854f2ac3
Add graph loading scopes to Dossier and Procedure
2019-09-24 10:47:21 +02:00
Nicolas Bouilleaud
e962fb26e0
Allow sorting Dossiers by “has notifications” in traites
...
fixes #4351
2019-09-24 09:37:42 +02:00
Nicolas Bouilleaud
00b1aa0ea1
Disable turbolinks for links to Stats pages
...
This is a workaround for #350
2019-09-23 14:25:04 +02:00
Nicolas Bouilleaud
f74fde3f80
Avoid sending notification emails about archived dossiers
2019-09-20 11:06:33 +02:00
Nicolas Bouilleaud
a2131d0fcc
Don’t unfollow when archiving
...
It was slightly broken in two ways:
- it doesn’t make other instructeurs unfollow the dossier
- if the dossier is unarchived, instructeurs don’t refollow automatically.
2019-09-20 11:06:33 +02:00
Nicolas Bouilleaud
769621de46
Explicitly pass the “state” param in notifications_*_procedure methods
2019-09-20 11:06:33 +02:00
Nicolas Bouilleaud
8a06c01f13
Reorder methods in instructeur.rb
...
Move token stuff together, out of notification-related stuff.
2019-09-20 10:48:08 +02:00
Nicolas Bouilleaud
4f0871dab0
Use a single query in dossiers_id_with_notifications (instead of four)
...
This is used in /procedures#show and /procedures#index, to display badges on the “suivis” and “traités” tabs of each procedure. Rails cache helps when it’s the exact same query, but it’s not the case for different tabs.
I’m not certain it’ll be a visible performance improvement but it shouldn’t hurt.
2019-09-20 09:45:59 +02:00
simon lehericey
faddbc23ef
Eager load procedure: :groupe_instructeurs for export
2019-09-19 12:30:12 +02:00
simon lehericey
a2f82ab8be
Add groupe_instructeur_label to export v2
2019-09-19 12:30:12 +02:00
simon lehericey
f577484aa2
Add groupe_instructeur_label to export v1
2019-09-19 12:30:12 +02:00
simon lehericey
3bc20bdb06
Procedure.routee?
2019-09-19 12:30:12 +02:00
simon lehericey
8660d4af30
Instructeur: only export its dossiers
2019-09-19 12:24:40 +02:00
Paul Chavard
f4d4a896a0
Merge pull request #4342 from tchak/revert-proxy
...
Revert "Upload through proxy"
2019-09-19 09:14:32 +02:00
Paul Chavard
6533ec420b
Revert "Upload through proxy"
...
This reverts commit 91815ad709
.
2019-09-19 09:13:41 +02:00
simon lehericey
e2acb0a946
ProcedurePresentation: can use groupe instructeur
2019-09-18 15:51:02 +02:00
simon lehericey
f5bbc9e2f9
InstructeurProcedureShow: show dossier for all the gi involved
2019-09-18 15:51:02 +02:00
simon lehericey
9b16bd2037
Dossier: retrieve all dossiers for a procedure
2019-09-18 15:51:02 +02:00
simon lehericey
21577a0f0b
Instructeur: dedup procedures with multiple gi
2019-09-18 15:51:02 +02:00
Paul Chavard
8fcf1353f3
Remove duplicated attachments
2019-09-17 18:12:53 +02:00
simon lehericey
dec42e4886
Instructeur procedure index: show stats by procedure
...
Also sum the count from differents groupe_instructeur from the same procedure
2019-09-17 17:19:14 +02:00
Paul Chavard
91815ad709
Upload through proxy
2019-09-17 17:04:52 +02:00
Pierre de La Morinerie
4b883a57bf
stylesheets: make the actions bar sticky
2019-09-17 16:58:11 +02:00
Pierre de La Morinerie
1f8f38f492
stylesheets: align the buttons vertically
2019-09-17 16:58:11 +02:00
Pierre de La Morinerie
974c1b1150
stylesheets: move the dossier floating bar CSS to dossier_edit.scss
...
forms.scss is supposed to be for generic elements.
2019-09-17 16:58:11 +02:00
pedong
09a0f21cac
use same look with .champs-editor.buttons
2019-09-17 16:58:11 +02:00
pedong
d2a78abc3a
[ fix #3975 ] set buttons floating in dossier page
2019-09-17 16:58:11 +02:00
Nicolas Bouilleaud
0c98f29d59
Move the cached procedure stats queries to a ProcedureStatsConcern
2019-09-17 16:43:48 +02:00
Nicolas Bouilleaud
06d60cd943
Cache requests in procedures/stats
2019-09-17 16:43:48 +02:00
Nicolas Bouilleaud
3e2985b305
First attempt at procedure stats
...
fixes #3945 , #3946 , #3948
2019-09-17 16:43:48 +02:00
Nicolas Bouilleaud
543f9894c1
Make sure the “commencer” link uses the proper test path
2019-09-17 16:30:48 +02:00
Nicolas Bouilleaud
c26a701a17
Refactor and redesign publish modal
...
* remove the autocomplete menu
* use ujs to pre-validate the procedure
* tweak the UI
2019-09-17 16:30:48 +02:00
Nicolas Bouilleaud
bd1e0aba38
Add Procedure path suggestion
2019-09-17 16:30:48 +02:00
Nicolas Bouilleaud
8806eab8d6
Properly validate Procedure.lien_site_web is set when publishing
2019-09-17 16:30:48 +02:00
Nicolas Bouilleaud
00c37eccb3
Simplify procedure.path and publish event
...
* Get rid of the “reopen” event, merge it with “publish” (it’s the same code)
* Remove the “availability” states; “available with brouillon” makes no sense since the brouillons path are always uuids
* Instead of checking if publish can happen, just try it and handle the errors
2019-09-17 16:30:48 +02:00
Nicolas Bouilleaud
99f986b815
Cleanup Procedure retrieval in “Commencer”
...
Make sure to only fetch active (brouillons or published) procedures.
2019-09-17 16:30:48 +02:00
Nicolas Bouilleaud
92e6032115
Remove path availability dead code when creating/editing a procedure
...
There’s no “path” field anymore in the Procedure form, it can only be set when publishing.
2019-09-17 16:30:48 +02:00
Nicolas Bouilleaud
b9968b76b0
Remove “avec_lien” helpers now that Procedure.path cannot be nil
2019-09-17 16:30:48 +02:00
Nicolas Bouilleaud
8fa630d2bb
Remove Gestionnaire.visible_procedures
...
It is actually the same thing as Gestionnaire.procedures. It already included the procedures with paths as well as the archived procedures, and in production, there were no Gestionnaire for who procedures was returning a different result than visible_procedures (expect for two baddata brouillon procedures with a nil path).
In addition, Procedure.path is now nonnull, which means the Procedure.avec_lien scope is pointless.
Finally, the current spec showed that the only procedure not visible to the gestion was the one he was not assigned to.
2019-09-17 16:30:48 +02:00
Nicolas Bouilleaud
e9c6ed80e4
Migration: Index and make Procedure.path nonnull
2019-09-17 16:30:48 +02:00
maatinito
ae34e48624
[ fix #4311 ] Unable to reinvite admin
2019-09-17 16:15:04 +02:00
clemkeirua
949a0c21e6
gestion des 2 formats de bouton monavis
2019-09-17 13:39:45 +02:00
Paul Chavard
ff2b6ca3ea
Fix service controller
2019-09-17 12:37:37 +02:00
Paul Chavard
8a691d534a
Fix AdministrateurUsageStatisticsService
2019-09-17 12:37:37 +02:00
Paul Chavard
adfa80142a
Cleanup application_controller and current_user
2019-09-17 12:37:37 +02:00
Paul Chavard
88842918f9
Prepare to drop columns
2019-09-17 12:37:37 +02:00
Paul Chavard
3eeebd62eb
Use built in active_storage helper
2019-09-17 11:11:08 +02:00
simon lehericey
acb99609ba
Move defaut_groupe_instructeur as has_one and eager_load
2019-09-16 15:57:07 +02:00
simon lehericey
afa0237349
remove logo n+1
2019-09-16 15:48:19 +02:00
Paul Chavard
b97cbd3402
Serialize champ repetition for tags
...
closes #4272
2019-09-12 17:23:18 +02:00
Paul Chavard
3b8d3b7967
Add Style/CollectionMethods to rubocop
2019-09-12 14:48:18 +02:00
simon lehericey
82bef0f651
use notifications_per_procedure properly
2019-09-11 20:49:48 +02:00
Pierre de La Morinerie
503c393a87
helpscout: use replies_sent to compute contact rate
...
The `conversations_count` we previously used counts replies, but also
all conversations that were tagged or re-tagged during the month – with
made counting the actual work spent on user support brittle.
Counting the replies is a better estimation of what we get.
Unfortunately this also removes the filtering-by-tag feature. To
mitigate this, the reports are now scoped to a specific mailbox. This
allows to create extra mailboxes for conversations that should't be
counted in the stats.
2019-09-11 17:26:10 +02:00
Paul Chavard
c370c2f475
Cleanup FlipFlop
2019-09-10 23:52:44 +02:00
Paul Chavard
65e227c44b
Migrate to flipper
2019-09-10 16:10:14 +02:00
clemkeirua
feb9c32537
search attachments inside bloc repetables
2019-09-10 15:30:44 +02:00
Paul Chavard
347f03d2a9
Redirect to pdf attachement old name if not attached
2019-09-10 15:06:47 +02:00
Paul Chavard
3eb3ae001e
Rename “Passé en construction le” to 'Déposé le' for clarity
2019-09-10 14:59:10 +02:00
Chaïb Martinez
dd6c6bfe7a
mailers: add a NO_REPLY address to transactional emails
2019-09-10 13:37:28 +02:00
Pierre de La Morinerie
aa1cf6788b
mailers: turn revert_to_instruction into a notification email
2019-09-10 13:29:06 +02:00
pedong
a7d3bbb8cc
Del SIRET in service for API
2019-09-10 11:06:28 +02:00
pedong
25596ca2f2
[ fix #4181 ] add service to procedure API
2019-09-10 11:06:28 +02:00
Paul Chavard
d8402fbd2c
Remove last reference to commentaire.file
2019-09-10 10:49:12 +02:00
Paul Chavard
434210de2e
Ignore to be removed columns
2019-09-10 10:49:12 +02:00
Paul Chavard
7ffb98e616
Remove carrierwave uploaders
2019-09-10 10:49:12 +02:00
Pierre de La Morinerie
2724f4667b
groupe_instructeur: unsassign instructeurs on group destroy
...
Fix #4282
2019-09-09 17:29:29 +02:00
clemkeirua
6849fd6afe
change le texte de la messagerie selon le type d'utilisateur
2019-09-09 16:25:02 +02:00
Pierre de La Morinerie
c26da5ec37
mailers: prevent the signature from being auto-linked
...
Some emails clients (Gmail or Mail.app) may turn the signature into
a clickable link.
This can distract users, and make them think we are a good point of
contact (where they should contact their administration or use the
website directly instead).
2019-09-09 11:43:57 +02:00
Chaïb Martinez
9f60365500
[ fix #4266 ] Add 'Revenir sur le site de mon administration' on commencer page
2019-09-03 15:46:25 +02:00
simon lehericey
6a83adf336
StatController: work by groupe_instructeur
2019-09-03 06:47:02 +02:00
simon lehericey
ad7ef6c739
Link assign_to and procedure by groupe_instructeur
2019-09-03 06:47:02 +02:00
simon lehericey
4da12ed3e8
User/DossierController: dossier are linked to default group by default
2019-09-03 06:47:02 +02:00
simon lehericey
d582af0962
Fix Instructeur Procedure Index
2019-09-03 06:47:02 +02:00
simon lehericey
d0bfb62fec
Procedure Factory: use procedure.new_dossier
2019-09-03 06:47:02 +02:00
simon lehericey
3cc8f0c792
Link Dossier and GroupeInstructeur
2019-09-03 06:47:02 +02:00
simon lehericey
a82d49aa60
Procedure: save procedure while cloning
...
This is required to be able to assign the administrateur.instructeur to the defaut_groupe_instructeur of the new procedure
2019-09-02 11:41:12 +02:00
simon lehericey
31cb056351
Procedure: remove direct instructeurs access
...
Add shortcut for the spec to assign instructeurs directly to the defaut groupe
2019-09-02 11:41:12 +02:00
simon lehericey
b541ef0b41
Procedure has many instructeurs with defaut_groupe_instructeur
2019-09-02 11:41:12 +02:00
simon lehericey
ba24958035
Procedure add missing_instructeurs?
2019-09-02 11:41:12 +02:00
simon lehericey
64d28dba2f
cleaning : use missing_steps
2019-09-02 11:41:12 +02:00
simon lehericey
85499365a0
Instructeur has_many procedures through groupe_instructeur
2019-09-02 11:41:12 +02:00
simon lehericey
25991c2892
Assign a procedure assign a group as well
2019-09-02 11:41:12 +02:00
simon lehericey
97884c4349
Link AssignTo et GroupeInstructeur
2019-09-02 11:41:12 +02:00
simon lehericey
115d91387c
A procedure has a default groupe instructeur
2019-09-02 11:41:12 +02:00
simon lehericey
f296318072
Create GroupeInstructeur
2019-09-02 11:41:12 +02:00
clemkeirua
c2916e9d05
remove possibility to create carte with parcelle agricole
2019-08-29 16:01:35 +02:00
Paul Chavard
3c6b35d720
Fix attestation preview
2019-08-28 16:33:51 +02:00
benjaminhenkel
2b510a15a2
Update _informations.html.haml
2019-08-28 15:02:44 +02:00
benjaminhenkel
73d643d1be
Update flash message for test demarche
2019-08-28 14:54:17 +02:00
clemkeirua
4032fc61e3
move to only one pipedrive account
2019-08-28 12:16:25 +02:00
Paul Chavard
0ecf5b47eb
Call ActiveStorage::Filename.to_s
2019-08-28 11:01:58 +02:00
Paul Chavard
64dccbab5c
Only rename logo param if it is present
2019-08-28 11:01:58 +02:00
Paul Chavard
15148a4fe1
Fix invalid characters in repetition champs sheet_name for xls export
2019-08-28 10:47:58 +02:00
Paul Chavard
5edbc08542
Render attesation apercu inline
2019-08-27 17:44:02 +02:00
Paul Chavard
32563c3675
Redirect to active_storage files when available
2019-08-27 17:43:33 +02:00
Paul Chavard
a19b10b118
Migrate attestation files to active_storage
2019-08-27 17:42:52 +02:00
clemkeirua
188e0fd6b2
removed ask_birthday for new procedures & dossiers
2019-08-27 15:32:17 +02:00
maatinito
ae059dc029
Corrected placeholder on champ carte
2019-08-27 15:13:10 +02:00
simon lehericey
7b9b90a3e0
[ fix #4238 ] When the token does not exist, redirect to home page without sending a new link
2019-08-27 15:01:46 +02:00
Chaïb Martinez
5f20d657d0
Add target blank
...
[fix #3536 ]
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-08-27 10:45:26 +02:00
Chaïb Martinez
7640911ab9
Remove sign up form sign in
...
Add link to sign up help
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-08-27 10:45:26 +02:00
Paul Chavard
d02e0fc556
Fix and test migrate_procedure_logo task
2019-08-22 11:28:03 +02:00
Paul Chavard
cc35a04e26
Migrate procedure logo to active_storage
2019-08-21 11:15:00 +02:00
Paul Chavard
6215ccb3d7
Fix carte initialize
2019-08-21 10:48:49 +02:00
Paul Chavard
b7b46e9a82
Improve clone of procedure attachements
2019-08-20 17:30:44 +02:00
Philémon
0528026631
retrait d'un s
...
par souci de cohérence entre "satisfaction usagerø" et "contact usagerø" :)
la bise!
2019-08-20 13:53:24 +02:00
Philémon
e6e0f5ed31
changement de wording
...
changement de wording "Connectez-vous pour donner votre avis" > "Cliquez ici pour donner votre avis", ça permet de clarifier (sinon les usagers peuvent penser que c'est le lien pour se connecter à ds (/sign_in).
c'est le fruit de discussion avec des admin :)
2019-08-20 13:53:24 +02:00
simon lehericey
b7f8bb2fea
Simplify ip_service
2019-08-20 13:29:29 +02:00
simon lehericey
c1a622efa1
Add User.create_or_promote_to_administrateur
2019-08-20 12:20:12 +02:00
simon lehericey
01a91e68ca
Simply avis controller
2019-08-20 12:20:12 +02:00
simon lehericey
98a24bea51
Simplify invite_instructeur
2019-08-20 12:20:12 +02:00
simon lehericey
97d0855d47
add User.create_or_promote_to_instructeur
2019-08-20 12:20:12 +02:00
simon lehericey
e913b01c52
fix_manager_reset_password
2019-08-20 12:12:20 +02:00
simon lehericey
ebe871819d
Fix admin deletion by an administration
2019-08-20 12:01:36 +02:00
Paul Chavard
e9ba7700d4
Remove commentaire file uploader
2019-08-20 10:24:13 +02:00
simon lehericey
80cb8b87fe
Keep only the FC logic and use devise for the rest
2019-08-16 16:48:22 +02:00
simon lehericey
9c715b2969
SessionController: new User in view
2019-08-16 16:48:22 +02:00
simon lehericey
416a07d2dd
SessionView: simplify
2019-08-16 16:48:22 +02:00
simon lehericey
27085af9b5
SessionController: remove remember_me
...
It is somehow taken care by warden
2019-08-16 16:48:22 +02:00
simon lehericey
002510d5cb
SessionController: remove complicated try_to_authenticate
2019-08-16 16:48:22 +02:00
simon lehericey
67cc2c1a87
SessionController: remove instructeur_signed_in?
2019-08-16 16:48:22 +02:00
simon lehericey
a3b9bf90d4
SessionController: remove useless code
...
- the redirection of a locked user is made by the sign_in method
- because of the paranoid mode it displays the devise.failure.invalid error message
2019-08-16 16:48:22 +02:00
simon lehericey
1b14d85c77
Rerender if wrong credentials
2019-08-16 16:48:22 +02:00
simon lehericey
dab1519b8c
Remove credenticals synchronisation logic
2019-08-16 11:35:19 +02:00
simon lehericey
58ecf18390
ActivateController: add tests and clean a bit
2019-08-16 11:22:36 +02:00
simon lehericey
d5ddd182a7
remove useless session views
2019-08-14 18:04:26 +02:00
simon lehericey
972b6793f7
Remove useless sessions_controller
2019-08-14 18:04:26 +02:00
simon lehericey
149b0b5797
Fix Sign out
2019-08-14 16:58:50 +02:00
simon lehericey
e3e6bc7689
! NEED JOB REBOOT Move remind activation logic to user
2019-08-14 16:34:50 +02:00
simon lehericey
d0ac1c3301
Fix manager invite administrateur
2019-08-14 16:34:50 +02:00
simon lehericey
c380d807ab
Spec: sign_in with administrateur.user
2019-08-14 15:08:14 +02:00
simon lehericey
1b38d4071d
temporary remove password complexity check
2019-08-14 15:06:16 +02:00
simon lehericey
4142acf8d3
Replace administrateur devise methods in app
2019-08-14 15:06:16 +02:00
simon lehericey
840be2408e
Remove administrateur devise methods
2019-08-14 15:06:15 +02:00
simon lehericey
81f44fa76b
Link user and administrateur
2019-08-14 15:06:15 +02:00
Paul Chavard
e68d2cf5e2
Enable champ repetition for all
2019-08-14 12:53:51 +01:00
Paul Chavard
9eaf14968f
Enable export v2 for all
2019-08-14 12:53:51 +01:00
Paul Chavard
0969b1f85f
Enable email_login_token for all gestionnaires
2019-08-14 12:53:51 +01:00
Pierre de La Morinerie
182a9a5df2
service: remove the mandatory SIRET field
2019-08-14 10:38:36 +02:00
Paul Chavard
ef66defcd1
Fix invite instructeur from manager
2019-08-13 20:12:46 +01:00
Pierre de La Morinerie
4e9895c11b
app: mark the contact forms as not sensitive to trusted tokens
...
Instructeurs waiting for a confirmation token should be able to
access the contact form (especially to ask for help).
Fix #4198
2019-08-13 19:48:11 +02:00
Paul Chavard
86b9ed2079
Run load scripts after ujs responces
2019-08-13 17:03:55 +01:00
simon lehericey
8fa3c9e4f7
Fix expert invitation
2019-08-13 15:15:16 +02:00
simon lehericey
5fdac38cb2
Fix instructeur invitation
2019-08-13 15:15:16 +02:00
simon lehericey
efd793f266
AdminProcedureController: fix self assignation as instructeur
2019-08-13 15:15:16 +02:00
simon lehericey
ad31822a68
Spec: sign_in with instructeur.user
2019-08-13 15:15:16 +02:00
simon lehericey
47b7dc368b
Remove or fix now nonsense code
2019-08-13 15:15:16 +02:00
simon lehericey
c8a7bde5e0
Replace instructeur devise methods in app
2019-08-13 15:15:16 +02:00
simon lehericey
a84e07a376
Remove instructeur devise methods
2019-08-13 15:15:16 +02:00
simon lehericey
dd4ffb926c
Link user and instructeur
2019-08-13 15:15:16 +02:00
simon lehericey
e3fd1cc33a
Remove weird switch_devise_profile_service
2019-08-13 15:15:16 +02:00
Pierre de La Morinerie
79784089a4
dossiers: refresh the whole header actions bar on status change
...
This ensure the other state-dependant buttons get updated to–like the
"Follow" or "Archive" button.
Fix #4186
2019-08-13 15:07:22 +02:00
Pierre de La Morinerie
3a37c1eeae
dossiers: rename .mixed-buttons-bar
to .header-actions
2019-08-13 15:07:22 +02:00
Pierre de La Morinerie
219f690b96
dossiers: move header actions to a partial
2019-08-13 15:07:22 +02:00
simon lehericey
5bda753735
Remove all devise route and controller for instructeur and administrateur
2019-08-13 14:13:48 +02:00
simon lehericey
a4b9eecded
Remove unused devise session controller
2019-08-13 14:13:48 +02:00
benjaminhenkel
6ed5cd6feb
navbar: improve wording, and allow two-lines layout
2019-08-13 12:26:11 +02:00
benjaminhenkel
efb7883bd1
Update _monavis.html.haml
2019-08-12 16:54:00 +02:00
simon lehericey
3fde2a6f70
Rename gestionnaire in code to instructeur
2019-08-12 13:47:01 +02:00
simon lehericey
6902f84b85
Brutally rename gestionnaire filename to instructeur
2019-08-12 13:47:01 +02:00
simon lehericey
bb8d65c6b4
Subtly rename admin/instructeurs to admin/assigns
2019-08-12 13:47:01 +02:00
simon lehericey
7ac243ac44
Use proper token to find the administrateur ... how can it works otherwise ?
2019-08-12 13:43:03 +02:00
simon lehericey
7e78b7d62d
Administrateur password, remove one level of indirection
2019-08-12 13:43:03 +02:00
clemkeirua
6c56fc73d7
used new constant for genders
2019-08-01 20:46:58 +02:00
clemkeirua
1e6847bc6f
introduce constants for M./Mme
2019-08-01 17:42:32 +02:00
clemkeirua
d7105cb6f8
added spec for dossier#update_with_france_connect
2019-08-01 17:42:32 +02:00
clemkeirua
707e8a0004
dossier_controller#new uses info from FC if any
2019-08-01 17:42:32 +02:00
maatinito
8d3e3baabc
#3928 administrator new & edit pwd pages
2019-08-01 17:12:14 +02:00
maatinito
220b38ad2a
#3928 different pwd edit page for administrators
2019-08-01 17:12:14 +02:00
maatinito
3bf32b6d43
#3928 redesign of password panel (complexity bar & explanation)
2019-08-01 17:12:14 +02:00
maatinito
0b0ef8a318
#3928 Zxcvbn service to compute password complexity
2019-08-01 17:12:14 +02:00
Paul Chavard
02904f55b1
Fix champ policy
2019-08-01 16:41:53 +02:00
Paul Chavard
b8d3e4c41b
Fix attestation url for dossiers with no attestation
2019-08-01 15:53:50 +02:00
Paul Chavard
c75e39884e
Save selection utilisateur as geo area
2019-08-01 11:38:09 +02:00
clemkeirua
f5d3818e3c
remove unnecessary retransition methods
2019-08-01 10:40:08 +02:00
Keirua
2f82dd9a3d
improve typography and texts
...
Co-Authored-By: Nicolas Bouilleaud <nico@bou.io>
2019-08-01 10:29:51 +02:00
clemkeirua
38b48f4217
transition from accepte to instruction as superadmin
2019-08-01 10:29:51 +02:00
Paul Chavard
b266915892
Add repetitions to api
2019-08-01 10:04:35 +02:00
Paul Chavard
fba195c0b5
Add attestation url to dossier on api
2019-07-31 18:30:40 +02:00
Paul Chavard
6cfad01d12
Stop using Flipflop as switch for weekly_overview
2019-07-31 15:15:09 +02:00
Paul Chavard
25db21467d
Stop using Flipflop as switch for Fog
2019-07-31 15:15:09 +02:00
Paul Chavard
6f3fde21f2
Merge pull request #4139 from Keirua/fix/confirm-on-delete-champ
...
#4137 - Ajout d'un confirm à la suppression d'un champ
2019-07-31 12:31:44 +02:00
Paul Chavard
fc75580a3c
Start using pundit
2019-07-30 18:09:28 +02:00
Paul Chavard
8c72470a6c
Add default etablissement champ name
2019-07-30 17:17:36 +02:00
Paul Chavard
ab1170bcfc
Fix export dossier n+1 query
2019-07-30 17:17:36 +02:00
Paul Chavard
5a9468aa95
Fix repetition data export
2019-07-30 17:17:36 +02:00
Pierre de La Morinerie
02a5234bde
lib: remove FileSizeValidator
...
It was only used by the PieceJustificative model.
2019-07-30 16:11:17 +02:00
Pierre de La Morinerie
65e7489b4f
uploaders: remove PieceJustificativeUploader
2019-07-30 16:11:17 +02:00
Pierre de La Morinerie
95e24392f9
models: remove old pieces justificatives
2019-07-30 16:11:17 +02:00
Pierre de La Morinerie
ea1c8ea7e3
models: remove associations to old pieces justificatives
2019-07-30 16:11:17 +02:00
Pierre de La Morinerie
f6a1c7ded3
manager: remove support for old pj
2019-07-30 16:11:17 +02:00
Pierre de La Morinerie
0da0a2b446
model: remove support for cloning procedures with old pj
2019-07-30 16:11:17 +02:00
Pierre de La Morinerie
f69f325236
api: remove export of old pieces justificatives
2019-07-30 16:11:17 +02:00
Pierre de La Morinerie
e975fe4ade
tasks: remove task to migrate old pieces justificatives
2019-07-30 16:11:17 +02:00
Pierre de La Morinerie
0018f36b44
gestionnaire: remove UI for filtering pieces justificatives
2019-07-30 16:11:16 +02:00
Pierre de La Morinerie
f825f62ce5
dossier: remove UI for viewing old pieces justificatives
2019-07-30 16:11:16 +02:00
Pierre de La Morinerie
5502f2e42e
dossier: remove UI for uploading old pieces justificatives
2019-07-30 16:11:16 +02:00
Pierre de La Morinerie
0c4cb3b498
admin: remove UI for managing old pj
2019-07-30 16:11:16 +02:00
Nicolas Bouilleaud
7205f4da9e
L'enfer du Nord Paris-Roubaix (Tour de France, Tour de France)
2019-07-30 14:47:48 +02:00
pedong
9438f962c5
add alert for account is locked
2019-07-29 17:48:44 +02:00
pedong
0ed9c4cbd4
add check access_locked? when login
2019-07-29 17:48:44 +02:00
pedong
8d03a6747c
add lockable to User, Gestionnaire, administration, Administrateur
2019-07-29 17:48:44 +02:00
Nicolas Bouilleaud
b066ccbc89
Make sure Procedure.path is not null in our data
2019-07-29 13:53:33 +02:00
Pierre de La Morinerie
bcd5182446
dossier: hide the draft explanation when already submitted
2019-07-29 10:54:19 +02:00
Pierre de La Morinerie
e99edda7b1
dossiers: hide the Edit button on the actual edit page
...
Otherwise the "Edit" button may be confused for a "Save" button.
2019-07-29 10:49:49 +02:00
Pierre de La Morinerie
7b345365fd
dossiers: fix the layout of the Edit button
2019-07-29 10:45:49 +02:00
Pierre de La Morinerie
f1838f3767
dossiers: fix edit button being visible on locked dossiers
...
Fix #4143
2019-07-29 10:41:58 +02:00
clemkeirua
314b0f5dc0
fix tests
2019-07-25 17:15:19 +02:00
clemkeirua
6f47655301
rendu lien_site_web obligatoire au moment de la publication
2019-07-25 15:46:04 +02:00
clemkeirua
6b19432d47
deplacement de l'URL qui envoie vers la procédure
2019-07-25 15:46:04 +02:00
Pierre de La Morinerie
2174172e34
admin: display CTA buttons in emails preview
2019-07-25 12:25:50 +02:00
Pierre de La Morinerie
1c837eb901
mailers: improve wording of transactional emails and default templates
2019-07-25 12:25:50 +02:00
Pierre de La Morinerie
8313752663
mailers: add CTA to templated emails
2019-07-25 12:25:50 +02:00
Pierre de La Morinerie
6195ee41f3
mailers: add CTA to new_draft
email
2019-07-25 12:25:50 +02:00
Pierre de La Morinerie
45c62cefb2
helpers: add vertical_margin helper for mailers
2019-07-25 12:25:50 +02:00
Pierre de La Morinerie
2c612f6448
helpers: add variants to mailer_round_button
2019-07-25 12:25:50 +02:00
Pierre de La Morinerie
3abb0a1c44
helpers: prevent information leakage from round_button links
2019-07-25 12:25:50 +02:00
clemkeirua
2ff6958ad6
better spacing
2019-07-25 11:40:46 +02:00
clemkeirua
a9708bff5d
ajout d'infos pratiques pour aller chercher son siret
2019-07-25 11:39:16 +02:00
Pierre de La Morinerie
079ac3da33
invite: signal that the message is optional
2019-07-25 11:10:49 +02:00
clemkeirua
caa90613fd
ajout d'un confirm à la suppression d'un champ
2019-07-25 10:46:40 +02:00
Chaïb Martinez
14192916f1
Add edit dossier link
...
[fix #4114 ]
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-24 12:21:35 +02:00
pedong
4a0873c5af
add quote show the message invite
2019-07-23 19:05:56 +02:00
pedong
0f957ec77b
[fixe #3974 ] add message for invite mail
2019-07-23 18:54:58 +02:00
Chaïb Martinez
ff395b8c4b
Add a triggered message in chat box for new admins 😎
...
Remove useless text
[fix #4052 ]
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-23 17:08:35 +02:00
clemkeirua
af436500fd
better button
2019-07-23 16:11:15 +02:00
clemkeirua
f166077f5e
ajout d'un bouton de suppression des admin dans le manager
2019-07-23 16:11:15 +02:00
Pierre de La Morinerie
858b093314
mailers: use the standard view mechanism to render notifications
...
Instead of rendering a view as a template, consider the view as a normal
view.
2019-07-23 14:53:50 +02:00
Pierre de La Morinerie
5bbcd600fb
mailers: extract more of the template to partials
...
This will allow to re-use these partials in other emails
2019-07-23 14:53:32 +02:00
Pierre de La Morinerie
45abb6ebc2
mailers: move default templates to a specific subdirectory
...
It makes more understandable that they are templates (and not views
rendered directly by Rails).
2019-07-22 16:22:20 +02:00
Pierre de La Morinerie
dbe03d4f74
suivi: remove link to stats dashboard
...
The dashboard is currently private–and it currently contains sensitive
informations that are hard to filter out.
2019-07-22 11:49:09 +02:00
Pierre de La Morinerie
af6172d0e8
suivi: explain how to disable tracking
2019-07-22 11:48:28 +02:00
clemkeirua
50ddf723b0
garde le bandeau bleu de navigation après MAJ
2019-07-22 10:27:33 +02:00
clemkeirua
2e107babfb
meilleures marges monavis
2019-07-18 17:39:06 +02:00
clemkeirua
d62740c198
extraction de la taille max des fichiers dans une constante
2019-07-18 17:19:39 +02:00
clemkeirua
f7842fa4bd
ajout d'un message lorsque le dossier fait plus de 50Mo
2019-07-18 16:39:59 +02:00
Pierre de La Morinerie
3c0ba5e698
emails: improve wording of the messagerie nudge
2019-07-18 12:38:13 +02:00
Pierre de La Morinerie
f88d7c28fa
emails: add a "Read message" button to the new answer email
2019-07-18 12:38:13 +02:00
Pierre de La Morinerie
630ae06542
emails: sign the new answer email as the administration
2019-07-18 12:38:13 +02:00
Pierre de La Morinerie
8b80c48679
emails: use the notification template for more messages
...
This allow to display the procedure logo and contact footer
at the bottom of these emails.
2019-07-18 12:38:13 +02:00
Pierre de La Morinerie
b157d860d2
emails: adjust notification footer for dossiers without messagerie
2019-07-18 12:38:13 +02:00
Pierre de La Morinerie
37c93e634e
emails: clarify the notify_new_draft
action
2019-07-18 12:38:13 +02:00
clemkeirua
ee8a1092e4
extracted MonAvisEmbedValidator
2019-07-17 18:04:32 +02:00
clemkeirua
91d10c0cf7
added navbar for mon avis
2019-07-17 18:04:32 +02:00
clemkeirua
6d43465ee5
renammed into monavis_embed
2019-07-17 18:04:32 +02:00
clemkeirua
8d2c5cfa14
validation par regex
2019-07-17 18:04:32 +02:00
clemkeirua
d8b63cd4c9
added 'monavis' inside the procedure and for users
2019-07-17 18:04:32 +02:00
Pierre de La Morinerie
727702ad4b
emails: mention the procedure name in the email title
2019-07-17 15:01:19 +02:00
Pierre de La Morinerie
71dfb38787
emails: improve typography of titles
2019-07-17 15:01:19 +02:00
Pierre de La Morinerie
bc42c90fe5
emails: make signature more compact
2019-07-17 14:55:55 +02:00
Pierre de La Morinerie
bd39eb3453
emails: remove dead code
2019-07-17 14:55:55 +02:00
clemkeirua
7eeddc0b79
using a shared example + scoped to state TERMINE
2019-07-17 11:53:16 +02:00
clemkeirua
b8fa567c81
ajout du tag 'lien document justificatif'
2019-07-17 11:53:16 +02:00
Pierre de La Morinerie
d86030fb76
dossier: add a reply icon near to "Reply to message" button
2019-07-17 11:43:21 +02:00
Pierre de La Morinerie
b4fe6e236e
messagerie: improve the textarea placeholder
2019-07-17 11:43:21 +02:00
Pierre de La Morinerie
92dd91a31b
messagerie: add a reply button next to the latest message
2019-07-17 11:43:21 +02:00
Pierre de La Morinerie
09efd06dff
forms: add a focus indicator to focused fields
2019-07-17 11:43:21 +02:00
Pierre de La Morinerie
80efe27ff2
pj migration: retry when changing the content type fails
2019-07-16 17:51:29 +02:00
Pierre de La Morinerie
a8354bd103
dossiers: unify deletion of dossiers between manager and user
...
The code paths for deleting a dossier were different, depending on
whether the dossier was deleted by the user, or from the Manager.
This commit unifies the two code paths into one.
This has the effect of:
- An operation log is now recorded when an user deletes its own dossier;
- Gestionnaires are now notified even when the dossier is deleted from
the Manager;
- The `support:delete_user_account` task now requires the email address
of the author.
2019-07-16 16:22:20 +02:00
clemkeirua
25f81f1d3c
download a dossier as zip with all attachments
2019-07-16 09:11:25 +02:00
Pierre de La Morinerie
76335511c8
omniauth: protect against CSRF
...
See https://github.com/omniauth/omniauth/wiki/Resolving-CVE-2015-9284
2019-07-15 18:16:00 +02:00
Pierre de La Morinerie
36eca3d059
dossier: rename the "Submit" action
2019-07-15 17:18:28 +02:00
Pierre de La Morinerie
862b08427b
status_overview: remove extraneous line
2019-07-15 15:55:25 +02:00
Pierre de La Morinerie
d9c01c0af6
status_overview: improve wording
2019-07-15 15:45:16 +02:00
Benjamin-Doberset
8ea8e52431
Update _status_overview.html.haml
2019-07-15 15:45:16 +02:00
Pierre de La Morinerie
077082c381
dossier: improve estimated delay wording
2019-07-15 15:27:22 +02:00
Benjamin-Doberset
77d825ae63
Update _estimated_delay.html.haml
2019-07-15 15:27:22 +02:00
Chaïb Martinez
5cb6ba2f3b
Fix tests
...
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-15 12:10:56 +02:00
Chaïb Martinez
3f9f67eb78
admin: fix the "Valider" button being hidden by Crisp
...
Fix #4021
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-15 12:10:56 +02:00
Chaïb Martinez
d968e7e6bd
Add some admin usage info for contextual help with crisp
...
Fix #4052
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-15 12:10:56 +02:00
Chaïb Martinez
04e204c740
Minor text fix
...
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-15 12:10:56 +02:00
Chaïb Martinez
535d032b73
Send URL page view to Crisp to trigger contextual help
...
Fix #4052
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-15 12:10:56 +02:00
Pierre de La Morinerie
d5f360c85f
manager: fix the deletion email not being sent
...
When deleting a dossier from the manager, the deletion notification
email was not being sent. This is because the returned object from
`Dossier#hide!` was invalid.
2019-07-15 10:01:16 +02:00
Pierre de La Morinerie
619f663e1a
procedure: remove individual_with_siret
column
2019-07-11 15:57:46 +02:00
Pierre de La Morinerie
a047ee356b
procedure: remove expects_multiple_submissions
column
2019-07-11 15:57:46 +02:00
clemkeirua
6838e69986
ajout de textes explicatifs pour les instructeurs
2019-07-11 15:48:00 +02:00
Pierre de La Morinerie
35c3795f56
dossier: make messagerie available on archived procedures
...
An Admin may archive a procedure to make it unavailable to
the general public, but before all dossiers are handled. In this case,
the messagerie needs to be available.
Fix #4089
2019-07-11 15:37:04 +02:00
Pierre de La Morinerie
10065df8ce
champs: put champ label in numeric fields validation messages
...
Replaces
> La valeur du champ doit être un nombre entier (sans chiffres après
> la virgule)
by
> La valeur du champ « Nombre de parents » doit être un nombre entier
> (sans chiffres après la virgule)
2019-07-11 15:12:48 +02:00
simon lehericey
768a298c2d
Same for go back in instruction
2019-07-11 12:50:15 +02:00
simon lehericey
5f39d3eac8
Fix bug when instruction repasse en construction twice
2019-07-11 12:50:15 +02:00
simon lehericey
6de1e2ec58
Fix bug when an instructeur closes a dossier already closed
2019-07-11 12:50:15 +02:00
Pierre de La Morinerie
fdca7c025a
procedure: ignore :expects_multiple_submissions
on the correct model
2019-07-11 12:14:25 +02:00
Pierre de La Morinerie
c2c9b19b3b
procedure: remove individual_with_siret
...
It isn't used anymore (see #3077 )
2019-07-11 11:58:21 +02:00
Pierre de La Morinerie
7ca3d5fce2
procedure: select for_individual
by default
2019-07-10 18:47:34 +02:00
Pierre de La Morinerie
9616df192d
procedure: use the model value for checking the radio buttons
...
Previously `checked: true` forced the checked status, disregarding the
actual value of the model.
Fix #4080
2019-07-10 18:47:28 +02:00
Paul Chavard
3cb39c2840
Refactor message attachements to use active_storage
2019-07-10 15:35:29 +02:00
Pierre de La Morinerie
03fc555edf
profile: send an email when the account is already taken
2019-07-10 11:31:09 +02:00
Pierre de La Morinerie
80074d6d82
profile: improve layout and wording of the confirmation message
2019-07-10 11:31:09 +02:00
Pierre de La Morinerie
f8a1911625
profile: display profile page even for single-role users
2019-07-10 11:31:09 +02:00
benjaminhenkel
c36b884adf
Update _state_button.html.haml
...
changement faute d'orthographe
2019-07-10 10:41:13 +02:00
simon lehericey
f6c402deec
better default value for linked_drop_down_list
2019-07-10 10:21:34 +02:00
clemkeirua
d29be1fe41
suppression de redouane de Pipedrive
2019-07-09 17:29:25 +02:00
clemkeirua
4c9846dcd1
Mise à jour du mail d'activation admin
2019-07-09 17:29:25 +02:00
clemkeirua
1f3015e24f
suppression de camille de la liste pipedrive
2019-07-09 17:29:25 +02:00
Pierre de La Morinerie
06afc3890f
france_connect: raise an error if some validation error occurs
...
If a validation error occurs in `find_or_create`, an object without `id`
will be returned–and the code will crash soon after.
Ensure that we crash immediately, so that we can report the root cause
(the validation error) instead of a seemingly-unrelated crash later.
2019-07-09 15:50:28 +02:00
Pierre de La Morinerie
6b27ac8514
france_connect: make existing user lookup case-insensitive
...
Fix #4053
2019-07-09 15:50:28 +02:00
Pierre de La Morinerie
ecfccae6f0
dossiers: remove support for Dossier#expects_multiple_submissions
2019-07-09 14:50:11 +02:00
Pierre de La Morinerie
d77a5552b7
dossiers: allow to start a new dossier after submitting one
2019-07-09 14:44:36 +02:00
Pierre de La Morinerie
b5ed74c09d
dossiers: always allow to create a new dossier
...
Turns out this is confusing for users (some UI elements are present for
some procedures, but not for others).
Better enable it for everyone.
2019-07-09 14:44:30 +02:00
simon lehericey
ea79b9a595
typo: use ’
2019-07-09 11:55:17 +02:00
simon lehericey
d36f6ebcd7
[ fix #1709 ] A user can change its email
2019-07-09 11:55:17 +02:00
simon lehericey
d68d2be798
Profil: accessible to all roles
2019-07-09 11:55:17 +02:00
clemkeirua
39f72a2be3
courbage d'apostrophes
2019-07-09 10:59:42 +02:00
clemkeirua
44fa210e34
changement du choix particulier/entreprise lors de creation d'une procedure
2019-07-09 10:59:42 +02:00
Paul Chavard
ad0a74ea7c
Fix dates in dossiers export
2019-07-09 10:02:08 +02:00
Pierre de La Morinerie
422f4b9cdb
dossiers_controller: warn properly when instructing a dossier twice
...
Fix #4055
2019-07-08 17:58:45 +02:00
Nicolas Bouilleaud
930fd345de
Validate messagerie_available? when creating a new Commentaire
...
Commentaires bu Users and Gestionnaire need the messagerie to be available; Automatic system Commentaires can be created anytime.
This reintroduces Commentaire validation that was introduced in #3979 and disabled in #4018
2019-07-08 16:13:43 +02:00
Nicolas Bouilleaud
3f439ac07a
Add Commentaire.is_sent_by_system? and .is_sent_by(someone)
...
And use it in CommentaireHelper and in the _message_icon and _message_issuer partials
2019-07-08 16:06:44 +02:00
Nicolas Bouilleaud
2abd93d360
Display the full User
email in Commentaires
...
* Only redact gestionnaires’ emails
* Also, rename Commentaire.sender to Commentaire.redacted_email
2019-07-08 16:06:44 +02:00
Nicolas Bouilleaud
3bf19de124
Remove Commentaire::columns override
...
It was used for a cleanup migration a long time ago (see #233 , #3033 , #3043 )
2019-07-08 16:06:44 +02:00
Nicolas Bouilleaud
7e98213829
Pass the signed-in user as the commentaire author from /contact
2019-07-08 16:06:44 +02:00
Nicolas Bouilleaud
72fd5d250f
Respect dossier.messagerie_available? in SupportController (/contact)
2019-07-08 16:06:44 +02:00
Nicolas Bouilleaud
12008728d2
Actually respect dossier.messagerie_available? in _messagerie.html.haml
...
instead of dossier.archived?
(fixup after #3979 )
2019-07-08 16:06:44 +02:00
Chaïb Martinez
c43b0c00db
minor text change [ fix #4050 ]
...
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-08 14:46:47 +02:00
Chaïb Martinez
94d340d25c
Remove phone number
...
Add chat link
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-08 14:32:55 +02:00
Chaïb Martinez
0fdae2456b
We will not quibble
...
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-08 14:20:49 +02:00
Nicolas Bouilleaud
4d73275bab
Drop Procedure.administrateur_id
2019-07-04 17:01:12 +02:00
maatinito
fee3ef8f4f
A4 output and allows large logos (headers) to take the whole width of the page
2019-07-03 15:31:34 -10:00
Paul Chavard
05987223db
Avoid crashing when demarche have no service
2019-07-03 17:18:44 +02:00
Paul Chavard
e582ff729c
Add aasm to dossiers state
2019-07-03 13:37:27 +02:00
Mathieu Magnin
10d3ba10f2
Before save copy body in rich_body
2019-07-03 13:15:49 +02:00
Mathieu Magnin
d13b7f953f
Migrate mail body to ActionText
2019-07-03 13:15:49 +02:00
Mathieu Magnin
b34f8fbe3d
Add ActionText
2019-07-03 13:15:49 +02:00
simon lehericey
4b154983fb
Landing: voir les démarches -> comment trouver ma démarche
2019-07-03 12:59:09 +02:00
Paul Chavard
860588b216
Upgrade javascript dependencies and add actiontext
2019-07-03 11:42:25 +02:00
simon lehericey
522d7684ea
dossier state button in red when refused
2019-07-02 18:40:20 +02:00
simon lehericey
c7e10fc43f
Manager: remove repasser_en_instruction
2019-07-02 18:40:20 +02:00
simon lehericey
b2c987ff0d
[ fix #3683 ] Dossier: add repasser_en_instruction!
2019-07-02 18:40:20 +02:00
simon lehericey
b79220e711
UI
2019-07-02 18:35:47 +02:00
Paul Chavard
8cb6b348a4
Update app/views/gestionnaires/procedures/_download_dossiers.html.haml
...
Co-Authored-By: Nicolas Bouilleaud <nico@bou.io>
2019-07-02 14:52:56 +02:00
Paul Chavard
fb0ef15e3c
Export dossiers v2
2019-07-02 14:20:29 +02:00
Paul Chavard
46c1bbbc6f
Official support for declarative demarches
2019-07-02 14:12:26 +02:00
Nicolas Bouilleaud
bd666a53af
Reallow automatic Commentaires for archived/closed Dossier
2019-07-01 11:59:29 +02:00
Nicolas Bouilleaud
3fee1c7644
Fix UpdateAdministrateurUsageStatisticsJob not being properly scheduled
2019-07-01 11:14:26 +02:00
Chaïb Martinez
e7b868c16f
Bug fix
...
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-01 11:13:36 +02:00
Chaïb Martinez
017f914e21
Add admin roi low and high
...
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-01 11:13:36 +02:00
Nicolas Bouilleaud
bd47bf2691
Disable Messagerie in archived Dossiers and procedures
...
* Use the existing Dossier#messagerie_available? method
* Raise when attempting to build a Commentaire if not messagerie_available?
* Disable the Messagerie form if not messagerie_available?
* Add tests :)
* Tweak the Horaires formatting while we’re here.
2019-07-01 09:39:39 +02:00
Paul Chavard
0d80c48b7e
Add avis to api
2019-06-27 14:40:17 +02:00
Paul Chavard
7f8079b5bb
Download active_storage blobs through proxy
2019-06-26 15:32:57 +02:00
Paul Chavard
aad4025ce0
Revert "Download active_storage blobs through proxy"
...
This reverts commit 0b39da7080
.
2019-06-26 15:31:35 +02:00
Paul Chavard
0b39da7080
Download active_storage blobs through proxy
2019-06-26 15:07:40 +02:00
Paul Chavard
7a2e9fe8a4
Merge pull request #3990 from betagouv/benjamin-alerte
...
Minor text change
2019-06-25 16:39:38 +01:00
Paul Chavard
c5704fa22f
Remove unused code from Commentaire
2019-06-25 17:04:29 +02:00
benjaminhenkel
1200d25f26
Update _list.html.haml
2019-06-24 17:00:10 +02:00
Pierre de La Morinerie
50cf6059e6
tasks: ensure creating an empty champ doesn’t display a notification
2019-06-24 15:49:02 +02:00
Nicolas Bouilleaud
44b9a2ef12
Include application_helper in ApplicationMailer
...
fixes a crash in activate_before_expiration.haml (sentry RAILS-40)
2019-06-21 09:50:33 +02:00
Paul Chavard
1781a49932
Add order param to API
2019-06-20 15:28:16 +02:00
Pierre de La Morinerie
9ce92d5c3b
champs: show attachment actions only when the atachment is persisted
...
Fix #3961
2019-06-20 11:03:08 +02:00
Pierre de La Morinerie
d561936863
task: ensure that hidden dossiers are rolled back
2019-06-20 10:48:56 +02:00
Pierre de La Morinerie
f8dda3ae45
tasks: don't abort rollback when a dossier fails
...
Instead print a warning, and continue rolling back the other dossiers.
2019-06-20 10:31:23 +02:00
Pierre de La Morinerie
91393be13c
tasks: extract rollback to a separate method
2019-06-20 10:31:23 +02:00
Nicolas Bouilleaud
43f936ec77
Do not check for path availability when in the “new procedure” form
...
The user can’t even enter the path here, it’s nil.
fixes #3918
The @availability was always PATH_NOT_AVAILABLE when the form was reloaded after an error, because Procedure::path_availability always found an (archived) procedure with a nil path. It got confused and concluded its path was conflicting.
🤷🏻♂️
2019-06-18 14:31:12 +02:00
Nicolas Bouilleaud
eb592f8ddf
Add manager controller for bill signatures
2019-06-17 16:16:28 +02:00
Nicolas Bouilleaud
925edb01c7
Add OperationsSignatureJob
2019-06-17 16:16:28 +02:00
Nicolas Bouilleaud
ad3553f0be
Add BillSignature Service
2019-06-17 16:16:28 +02:00
Nicolas Bouilleaud
f355f849a6
Add BillSignature Model
2019-06-17 16:16:28 +02:00
Nicolas Bouilleaud
dace9a53d3
Add Universign timestamp API query
2019-06-17 16:16:28 +02:00
Nicolas Bouilleaud
e16cb731c5
Add poor man’s ASN1 parsing
2019-06-17 16:16:28 +02:00
Nicolas Bouilleaud
7e80b8a4dc
Enable the Rails/InverseOf cop and add missing inverse_of
2019-06-17 13:44:07 +02:00
Pierre de La Morinerie
51aacabf13
models: fix touch not propagating when using nested attributes
...
Sometimes, when using nested attributes, touch doesn’t propagate to
parent relationships. (see https://github.com/rails/rails/issues/26726 )
Specifically, this happens in our app when updating a dossier with
only new attachements (but without changing the value of any fields).
To work around this, we need to define the parent relationship
explicitely. This is good practice anyway.
Fix #3906
2019-06-17 13:44:07 +02:00
Pierre de La Morinerie
1a832388fe
brouillon: clarify the "How to save" explanations
2019-06-17 11:12:26 +02:00
Pierre de La Morinerie
f12668fbfb
tasks: prevent the PJ migrations task updating from touching dossiers
2019-06-12 19:07:45 +02:00
Pierre de La Morinerie
60a61da644
tasks: extract dossier migration to a separate method
2019-06-12 18:58:47 +02:00
pedong
7ef1a558f4
change date format for all, use try_format_date of helper
2019-06-12 17:48:12 +02:00
simon lehericey
ee296f2b44
Use default format for date and datetime champ
2019-06-12 17:48:12 +02:00
pedong
abcd58c35d
[ fix #3710 ] date with letter
...
Co-Authored-By: simon lehericey <mail@simon.lehericey.net>
2019-06-12 17:48:12 +02:00
Nicolas Bouilleaud
5acb7a3f1b
Make rubocop happy
...
I did make some changes some lines above this 🤷 .
2019-06-12 17:33:53 +02:00
Nicolas Bouilleaud
1ac6cad132
Display previous followers in “personnes impliquées”
2019-06-12 17:33:53 +02:00
Nicolas Bouilleaud
6b90bc1ea1
Add “previously followed” dossiers and gestionnaires
...
Using an “inactive” Follow scope, similar to the “active” scope.
(I was tempted to use a default_scope, but this breaks when trying to `unscope` it in associations.)
2019-06-12 17:33:53 +02:00
Nicolas Bouilleaud
be4c575622
Add Follow.unfollowed_at
...
The active scopes is used indirectly in the dossier<->gestionnaire associations: the existing tests in dossier and gestionnaire just work™.
2019-06-12 17:33:53 +02:00
Nicolas Bouilleaud
d417907f36
Just rely on the constraints to avoid duplicate Follows
...
Don’t check manually in advance: just try to create the new Follow and silently fail.
Since we have both Rails validation and DB constraints in place, we have two types of errors to check. I’m not actually sure this change improves the legibility of the code.
2019-06-12 17:33:53 +02:00
Nicolas Bouilleaud
ba48a1da6e
Ensure Follow dates can not be not null
...
* Add Follow.unfollowed_at
* Change the unicity constraint to gestionnaire/dossier AND unfollowed_at
2019-06-12 17:33:53 +02:00
Nicolas Bouilleaud
8e04b4f0c9
Clear the “add admin” field after submit
...
Extract the add_admin form to its own partial and re-render it when an admin is successfully added.
2019-06-12 16:58:30 +02:00
Pierre de La Morinerie
55c9dfc001
api_entreprise: display better error message when SIRET is private
...
Previously we blamed the network.
Now we say that the entreprise infos cannot be retrieved. Which is not
ideal, but better.
2019-06-12 11:58:04 +02:00
Pierre de La Morinerie
78f75744e3
javascript: fix payload of ActiveStorage events missing on IE 11
...
Under some circumstances (like dispatching events just before a page
navigation), IE 11 events will be dispatched twice by the browser: once
with the payload, and a second time without.
To prevent these errors, ignore the events if the payload is missing.
2019-06-06 15:00:57 +02:00
Chaïb Martinez
eccd456325
Add crisp
...
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-06-05 17:41:47 +02:00
Paul Chavard
5a216b5583
Fix default button type
...
fix #3924
2019-06-04 17:59:02 +02:00
Chaïb Martinez
9198f7f437
Remove useless select options
...
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-06-04 16:55:11 +02:00
Chaïb Martinez
3b513af32a
Add nb_of_dossiers by years and deadline to PipeDrive Person
...
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-06-04 16:55:11 +02:00
Paul Chavard
6d312e1716
spec: refactor wait_for_ajax
to work with out new ajax utils
...
`wait_for_ajax` is not used anymore, but it may be in the future.
2019-06-04 16:30:36 +02:00
Paul Chavard
d5911071f8
Return dossiers on api with stable order
2019-06-04 15:34:49 +02:00
Pierre de La Morinerie
1f69c6c6eb
stylesheets: fix font of dropdown items on Firefox
...
Styling `<select>` elements is notoriously hard. Here, it seems that
Firefox doesn't handle custom fonts on `<option>` elements. As we have
no fallback font, the browser uses its default font, Times.
Having fallback fonts is good practice anyway.
2019-06-04 11:37:40 +02:00
Pierre de La Morinerie
f2f16e2580
carte: disable tiles layer during tests
...
During integration tests, we don't want to load the tiles from OSM:
- It hits OSM servers during every test run;
- It it slow (Capybara waits for the tiles to be loaded to proceed);
- It makes test time out when tiles cannot be loaded for some reason.
Fix #3913
2019-06-03 17:24:15 +02:00
Paul Chavard
ff44b7a600
Refactor purge pj to be more generic
2019-05-29 15:54:51 +02:00
Pierre de La Morinerie
a8847e40ea
pj migration: add comments and notices
2019-05-29 14:46:49 +02:00
Pierre de La Morinerie
6cb02f2927
pj migration: handle signal interrupts
2019-05-29 14:46:49 +02:00
Pierre de La Morinerie
1a256b37f8
pj migration: print a notice when migrating missing files
2019-05-29 12:20:10 +02:00
Pierre de La Morinerie
a168ae3a72
pj migration: reduce the number of queries by preloading champs
2019-05-29 12:20:10 +02:00
Pierre de La Morinerie
10df7b70ee
carrierwave: when migrating, create an empty blob if file is missing
2019-05-28 18:19:33 +02:00
Pierre de La Morinerie
44c410d40d
piece_justificative_service: fix for missing order_place
...
In production some pieces justificatives don't have an order place.
In this case, insert the champs after the ones that have an order place.
2019-05-28 17:20:07 +02:00
Pierre de La Morinerie
d410e31344
active_storage: document the virus scan hooks
2019-05-28 11:39:22 +02:00
Pierre de La Morinerie
52b7a82932
services: mark attachments migrated from CarrierWave as safe
...
This avoids to enqueue thousands of scans when migrating the PJs of
a whole procedure.
2019-05-28 11:39:22 +02:00
Pierre de La Morinerie
4cf54e0d28
tasks: add progress report to the pjs migration task
...
Progress is indicated per migrated champ.
2019-05-28 10:42:18 +02:00
Pierre de La Morinerie
21ac60ad04
tasks: add a task to migrate pjs of procedures in batches
2019-05-28 10:42:18 +02:00
Chaïb Martinez
920c8c0c32
Add Gestionnaire ID and ROLES
...
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-05-27 16:30:03 +02:00
clemkeirua
f06ae1631f
no crash when q is missing on RechercheController::index
2019-05-22 15:02:57 +02:00
Paul Chavard
6797c01b69
Properly handle justificatif_motivation case
2019-05-22 14:11:08 +02:00
Paul Chavard
6a3413018a
Refresh attachments with virus scan result
2019-05-21 14:21:55 +02:00
Paul Chavard
f6421e081a
Refactor attachment view
2019-05-21 14:21:13 +02:00
Paul Chavard
f833f57e45
Add PurgeUnattachedBlobsJob
2019-05-21 14:05:33 +02:00
Paul Chavard
4a9ef5d12e
Always use purge_later
2019-05-21 14:05:33 +02:00
Chaïb Martinez
49f0127300
[ fix #3856 ] Add form contact admin link
...
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-05-20 15:30:28 +02:00
Chaïb Martinez
855d4d0245
[ fix #3867 ] Add legal text
...
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-05-20 13:43:46 +02:00
Nicolas Bouilleaud
e423da9319
Fix unclosed div tags in manager views
2019-05-20 13:30:52 +02:00
Paul Chavard
42235e81b1
Use active storage load hook to extend blob
2019-05-16 20:43:01 +02:00
Paul Chavard
348b15f595
Put devtools behind feature flags
2019-05-15 18:10:25 +02:00
Keirua
a0b2e504dd
Merge branch 'dev' into fix/add-refresh-for-pj
2019-05-15 17:16:35 +02:00
Paul Chavard
2817e571e8
Remove unused sendinblue import
2019-05-15 16:00:12 +02:00
clemkeirua
285e75f470
correction wording
2019-05-15 15:08:37 +02:00
clemkeirua
131f1aacc4
ajout de plus d'informations utilisateur pour télécharger le justificatif
2019-05-15 14:56:03 +02:00
Paul Chavard
0265c10474
Safari throw if deleting inexistent property
2019-05-14 17:12:27 +02:00
Paul Chavard
9725f2a418
Enable new champs editor for all
2019-05-14 16:18:29 +02:00
Paul Chavard
3446782cd0
Remove deprecated editor
2019-05-14 16:18:29 +02:00
Paul Chavard
9ce1f0d0a6
Set keep_until on operation_log if available on procedure
2019-05-14 14:31:03 +02:00
Paul Chavard
b8bf662c6d
Track dossier demander un avis
2019-05-14 14:31:03 +02:00
Paul Chavard
9c472e6524
Track dossier private annotations modifications
2019-05-14 14:31:03 +02:00
Paul Chavard
dba8d65137
Track dossier operations with author and subject
2019-05-14 14:31:03 +02:00
Paul Chavard
c93b1bb276
Add intersection-observer polyfill
2019-05-14 10:55:16 +02:00
Paul Chavard
c4dc2adcea
Add new type de champ after type de champ on screen
2019-05-14 10:55:16 +02:00
Chaïb Martinez
3004f96cf5
Add video and webinar URLs to admin pages
...
Fix #3850
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-05-13 17:47:02 +02:00
simon lehericey
5f18b07eda
webpacker stays mysterious
2019-05-13 17:35:11 +02:00
Pierre de La Morinerie
d36cb85f6a
notification_mailer: send procedure id when reporting a missing logo
2019-05-13 16:23:11 +02:00
Pierre de La Morinerie
f5f7dfba40
france_connect: fix for params entirely missing from the callback
...
Fix a Sentry exception encountered in production.
2019-05-13 15:45:12 +02:00
pedong
a226999382
redirect to same path after use signup
2019-05-13 15:28:25 +02:00
Pierre de La Morinerie
e66e78b4db
helpscout: remove integration of custom fields
...
Our new HelpScout plan doesn't allow custom fields
anymore.
2019-05-13 12:33:29 +02:00
clemkeirua
25bcd51fce
add log for virus_scanner
2019-05-13 12:22:19 +02:00
pedong
f0ed61cce8
Carrierwave: change the method name to extension_whitelist for filter uploader file extension
2019-05-07 13:20:20 +02:00
clemkeirua
afa6711564
refacto suite à simplification virusscan
2019-05-07 08:54:29 +02:00
clemkeirua
d0794f42d1
fix tag_substitution_concern links for lien attestation
2019-05-07 08:54:29 +02:00
clemkeirua
c98655be52
ellipsis on file input overflow
2019-05-07 08:54:29 +02:00
clemkeirua
67a3d435d0
added some space after the optionnal justificatif button
2019-05-07 08:54:29 +02:00
clemkeirua
0e26bda186
cleanup the tag substitution concern & uniformization
2019-05-07 08:54:29 +02:00
clemkeirua
653eff01f0
add download link for instructeur
2019-05-07 08:54:29 +02:00
clemkeirua
486a6eccd6
fix invalid refactoring
2019-05-07 08:54:29 +02:00
clemkeirua
e4259466b4
nettoyage du tag_substitution_concern
2019-05-07 08:54:29 +02:00
clemkeirua
b3956bc072
introduce virus scans
2019-05-07 08:54:29 +02:00
clemkeirua
f8a2598647
ajout du lien vers le justificatif dans la balise --lien attestation--
2019-05-07 08:54:29 +02:00
clemkeirua
ec2e17032e
suppression de la double confirmation
2019-05-07 08:54:29 +02:00