Commit graph

4587 commits

Author SHA1 Message Date
Chaïb Martinez
e88a3f8dbf Add a message to the démarches library page if the admin has 0 demarches 2018-12-28 18:25:15 +01:00
Chaïb Martinez
c19b1bb6cf Make the “New démarche from scratch ” button bigger 2018-12-28 18:25:12 +01:00
Chaïb Martinez
d0d11edf61 Make a démarches library title bigger 2018-12-28 18:24:59 +01:00
maatinito
4ad3a60e25 [Fix #2575] Créer automatiquement un compte instructeur aux administrateurs 2018-12-26 09:44:20 -10:00
gregoirenovel
03eb47016c Fix a gestionnaire sign in bug 2018-12-26 18:14:04 +01:00
Chaïb Martinez
1a7d0f2e12 Remove mailto contact DS into admin header 2018-12-26 14:43:34 +01:00
Chaïb Martinez
1c4eb72fa5 Suspect by defaut 2018-12-22 11:49:15 +01:00
Chaïb Martinez
905d2f1635 Add phone number from pipedrive 2018-12-22 11:49:15 +01:00
maatinito
384dbf3e1b Add an intro to the last week overview email 2018-12-20 17:07:19 +01:00
maatinito
10cd16656d Improve the style of the last week overview email 2018-12-20 17:07:17 +01:00
maatinito
15ad7bae53 Improve the style of the avis invitation email 2018-12-20 17:07:15 +01:00
maatinito
5ca9267065 Improve the style of the dossier expiration summary email 2018-12-20 17:07:11 +01:00
maatinito
87cccae17a Change the title of the avis invitation 2018-12-20 17:07:07 +01:00
maatinito
249a64f1a6 Improve the copy of the invite guest email 2018-12-20 17:07:06 +01:00
maatinito
e4883aa152 [Fix #325] Set InviteMailer’s layout 2018-12-20 16:21:27 +01:00
maatinito
a1a11adb83 [#325] Make the notification layout inherit from the general layout 2018-12-20 16:21:27 +01:00
maatinito
d80bf601e1 [#325] Add support for a footer in layout.html.erb 2018-12-20 16:21:27 +01:00
Mathieu Magnin
b40c706d98 [Fix #3192] Clone service if procedure is transferred 2018-12-20 15:45:48 +01:00
Chaïb Martinez
0fe473b84e Add 2 new categories in admin contact form 2018-12-20 15:29:49 +01:00
Chaïb Martinez
206f17be90 Add warning text in email field 2018-12-20 15:29:49 +01:00
Mathieu Magnin
1dcc8303a6 Add html links in invitation mail templates 2018-12-20 15:01:04 +01:00
Paul Chavard
eb9edc1cee Order types de champ in scope 2018-12-20 14:14:15 +01:00
gregoirenovel
af21618652 Improve the avis invitation email footer 2018-12-20 11:57:07 +01:00
maatinito
b72fd330b5 Use the layout's footer for the avis invitation email 2018-12-20 11:20:10 +01:00
maatinito
e554cc3644 Unify the emails' intro tag 2018-12-20 11:20:10 +01:00
maatinito
2de328da64 Unify the emails' intro sentence 2018-12-20 11:20:10 +01:00
maatinito
f51cdd0e48 Add a partial for the emails' signature 2018-12-20 11:20:10 +01:00
Frederic Merizen
2a758d0759 [Fix #3196] Convert YAML to JSON 2018-12-19 23:17:55 +01:00
Frederic Merizen
36d6a43084 [#3196] Make TypeDeChamp#options compatible with raw JSON
instead of YAML inside a JSON string.
We still need to support the YAML form until the data has been migrated
2018-12-19 18:43:56 +01:00
Paul Chavard
5d1c24f3d8 Add type de champ repetition models (with row) 2018-12-19 15:31:11 +01:00
gregoirenovel
df7e0a9881 Remove dead code 2018-12-19 14:59:15 +01:00
gregoirenovel
4b0e632abb Enable the Style/ColonMethodCall cop 2018-12-19 13:56:10 +01:00
gregoirenovel
616e9305e9 Enable the Style/ClassCheck cop 2018-12-19 13:56:10 +01:00
gregoirenovel
fba8d97256 Enable the Stlye/BlockDelimiters cop 2018-12-19 13:56:10 +01:00
gregoirenovel
a8f700b572 Enable the Style/FormatString cop 2018-12-19 13:56:10 +01:00
pedong
09552ed9ff [fix #3188] replace a to link_to in footer 2018-12-19 13:18:01 +01:00
gregoirenovel
85a20f9b28 Remove double spaces 2018-12-19 12:35:22 +01:00
Chaïb Martinez
408ee31595 Add Sendinbue subscribe form
Remove Mailjet newsletter subscribe popin
2018-12-19 12:35:22 +01:00
Frederic Merizen
d1cfe4468d Encourager la création de champs PJ plutôt que de vieilles PJS 2018-12-19 11:57:23 +01:00
gregoirenovel
336ee6aba0 Remove the Tour de France banner from the administration landing page 2018-12-19 10:57:28 +01:00
gregoirenovel
e69310fe07 ModuleApiCartoService → ApiCartoService 2018-12-19 10:29:11 +01:00
gregoirenovel
129df93fb1 Add a blank line to ease readability 2018-12-18 22:49:27 +01:00
gregoirenovel
3ce3d203d4 Simplify some code 2018-12-18 22:49:27 +01:00
gregoirenovel
81ee1c2961 Use a method instead of a comparison 2018-12-18 22:18:38 +01:00
gregoirenovel
026fd1aaa2 Use parentheses 2018-12-18 22:18:38 +01:00
maatinito
008793d844 [Fix #1318] ETQ Instructeur, j'aimerais être averti que le texte de la motivation sera visible par les utilisateurs 2018-12-18 16:27:51 +01:00
Mathieu Magnin
8435ff004f Add annotations privées to procedure page on manager 2018-12-18 12:15:50 +01:00
Frederic Merizen
57a136c861 Make champ PJ generally available 2018-12-18 11:11:23 +01:00
Pierre de La Morinerie
d614ea6bd5 stats: display contact rate 2018-12-18 10:38:59 +01:00
Mathieu Magnin
5ab0853f1c Harmonize user champ pj purge route to gestionnaire 2018-12-14 11:38:59 +01:00
Mathieu Magnin
edf3eefa87 Fix Sentry 114, Instructeur can delete pj in private champs 2018-12-13 17:27:05 +01:00
gregoirenovel
ebb76c57f1 Fix a typo 2018-12-12 11:29:59 +01:00
gregoirenovel
56dcbb5b64 Update message so that it reflects the reality 2018-12-10 17:25:44 +01:00
pedong
de5de75869 [fix #2985] del champ_linked_dropdown in feature 2018-12-10 16:47:22 +01:00
simon lehericey
5a87fad02e [fix #3154] order export 2018-12-10 16:41:37 +01:00
Pierre de La Morinerie
30774aa189 api_geo: cache requests for one day
This should make the 500 errors that we get in production less frequent.

NB: Unfortunately we can't write a spec for the caching behavior, as the
VCR mocks are never cached.
2018-12-10 11:41:07 +01:00
Pierre de La Morinerie
a0ae1afb45 typhoeus: add a cache store for successful requests 2018-12-10 11:41:07 +01:00
gregoirenovel
3b0562949c Ask API Entreprise for insee v3 2018-12-10 10:49:56 +01:00
gregoirenovel
31250b4642 Make more ApiEntreprise::API methods private 2018-12-10 10:48:57 +01:00
pedong
f70f276ae9 [fix #2813] set lien_notice nil when clone a procedure 2018-12-06 21:28:08 +01:00
Chaïb Martinez
80133601c7 Add Matomo tracking code for logged usagers 2018-12-06 19:44:50 +01:00
simon lehericey
db6c86b242 DossierController: user can destroy pjs 2018-12-06 10:45:10 +01:00
Frederic Merizen
4699e515ed [Fix #2999] Send gestionnaire back to what they were doing after email verification 2018-12-06 10:03:21 +01:00
Paul Chavard
ee93b4e33d Revert legacy carte API to parsed json 2018-12-05 18:19:15 +01:00
Paul Chavard
35494df78e Procedure export dossiers with champs siret 2018-12-05 17:09:39 +01:00
Pierre de La Morinerie
e206f3d4d4 gestionnaire: display draft procedures in the list
Fix #3088
2018-12-05 15:38:20 +01:00
Paul Chavard
a08f170dbd Assign users and gestionnaires to commentaires
fix #2052
2018-12-05 13:40:57 +01:00
Paul Chavard
2f2aa580f8 Update activestorage.js 2018-12-04 11:37:00 +01:00
Paul Chavard
c492e1cd88 Update webpacker (babel7) 2018-12-04 11:37:00 +01:00
Paul Chavard
f2f8770bb5 Fix wording on services page 2018-12-04 10:55:15 +01:00
pedong
1532d287ae [fix #3026] change champ date for archivage auto 2018-12-03 13:45:40 +01:00
pedong
c14f9900d6 [fix #2969] use JS replace semicolon by comma in the list email 2018-12-03 12:59:40 +01:00
Paul Chavard
e873b6a9c4 Expose selection utilisateur size on champ carte 2018-12-03 12:49:03 +01:00
Paul Chavard
d77a5c9f15 More tests and fixes on carte champ 2018-11-30 13:28:30 +01:00
Paul Chavard
097a15d624 Test and fix all possible cases of champ carte serialization 2018-11-30 12:02:27 +01:00
Paul Chavard
35d2bc36fc cleanup selection_utilisateur geo_json 2018-11-29 17:10:14 +01:00
Paul Chavard
ca147969ab Fix number champs validation 2018-11-29 15:12:31 +01:00
Paul Chavard
8d22275742 Make type_de_champ API ids stable 2018-11-29 11:41:13 +01:00
Paul Chavard
1883c57c87 Add stable ids to types_de_champ after every update 2018-11-29 11:41:13 +01:00
Paul Chavard
c18796d02a Fix geojson exposed on legacy carto API 2018-11-29 08:43:51 +01:00
Paul Chavard
9b39934e8b Destroy dossier_operation_logs when dossier is destroyed 2018-11-28 17:06:54 +01:00
Paul Chavard
b9af07b845 Add admin support contact form 2018-11-28 16:50:37 +01:00
gregoirenovel
5053d4a7d9 Change the admin landing tagline 2018-11-28 16:41:56 +01:00
gregoirenovel
6a39e0e831 Improve the admin landing page 2018-11-28 16:41:56 +01:00
gregoirenovel
684314c117 Fix a typo 2018-11-28 16:41:56 +01:00
Mathieu Magnin
b51bf759b1 [Fix #3081] If a dossier is destroyed, then destroy the attestation 2018-11-28 16:33:12 +01:00
Mathieu Magnin
fc5f698207 Fog was recently updated, NotFound Module changed 2018-11-28 16:15:33 +01:00
Paul Chavard
575a437f97 Remove carto from admin/procedure controller 2018-11-27 16:11:25 +01:00
Paul Chavard
c6ef30f3e1 Remove unused carto from instructeur interface 2018-11-27 16:11:25 +01:00
Paul Chavard
9ff65efea8 Remove deprecated carto from dossiers controller 2018-11-27 16:11:25 +01:00
Paul Chavard
d988638c58 Simplify API carte serializer 2018-11-27 16:11:25 +01:00
Paul Chavard
36f6f54337 Remove unused carto models 2018-11-27 16:11:25 +01:00
Paul Chavard
5632929d3d Remove old caro editor 2018-11-27 16:11:25 +01:00
Paul Chavard
37a7e26fc3 Remove unused users/carte_controller 2018-11-27 16:11:25 +01:00
Pierre de La Morinerie
ea8bc0c961 mailers: improve notification layout 2018-11-27 15:51:26 +01:00
Pierre de La Morinerie
3702b0967d mailers: ensure new_answer link is an actual a element 2018-11-27 15:42:09 +01:00
Mathieu Magnin
91115ea847 [Fix sentry-26] if file does not exist, filename should be nil 2018-11-27 14:10:43 +01:00
Paul Chavard
0f0ca2ec65 Lod dossier operations 2018-11-27 12:49:40 +01:00
Paul Chavard
85e3eb04f4 Add DossierOperationLog model 2018-11-27 12:49:40 +01:00
Paul Chavard
98d388b64d Use state change methods on dossier in dossier auto archive job 2018-11-27 12:49:40 +01:00
Paul Chavard
b5b6832be8 Use state change methods on dossier in dossier auto recieve job 2018-11-27 12:49:40 +01:00
Paul Chavard
a079eaea5c Add procedure gestionnaire_for_cron_job method 2018-11-27 12:49:40 +01:00
Paul Chavard
15b1499e5d Use state change methods on dossier in dossier controller 2018-11-27 12:49:40 +01:00
Paul Chavard
9843666bdc Implement state change methods on dossier 2018-11-27 12:49:40 +01:00
Paul Chavard
febf625dd9 Make difference between error and empty geo json 2018-11-27 12:36:10 +01:00
Paul Chavard
f2e7feec1d Do not send error json to backend - it doesn’t need it and it creates bad data 2018-11-27 11:45:24 +01:00
Mathieu Magnin
718a30639f [Fix #2929] Improve readability of invitation for avis 2018-11-23 13:18:36 +01:00
pedong
0d02f5896e [Fix #1339] properly display avis confidentiality to experts 2018-11-22 18:38:31 +01:00
Frederic Merizen
ad991a2fe5 Show user on dossier page in manager 2018-11-22 15:27:01 +01:00
gregoirenovel
251bd635c2 Prepare for champ_id deletion 2018-11-22 12:27:48 +01:00
gregoirenovel
e8c24c27e5 [Fix #110] Remove any reference left to facades 2018-11-22 11:25:55 +01:00
gregoirenovel
55143b94fc [Fix #1698] Show the footer on the “Merci” page 2018-11-22 10:04:41 +01:00
gregoirenovel
dc89c7f530 [Fix #3027] Redirect to the demarches index after a demarche deletion 2018-11-22 02:06:48 +01:00
gregoirenovel
d0ec53a494 Move accessibilite to the root controller 2018-11-22 02:00:54 +01:00
gregoirenovel
82d764e340 Move tour_de_france to the root controller 2018-11-22 02:00:54 +01:00
gregoirenovel
dffd132564 Remove a useless file 2018-11-22 01:51:55 +01:00
gregoirenovel
5b24d116d9 [Fix #324] Convert the last text email to html 2018-11-22 01:38:21 +01:00
gregoirenovel
5c5175d37c [Fix #463] Use l instead of I18n.l in views 2018-11-22 01:33:10 +01:00
Chaïb Martinez
0e8d235800 Add some params to track forms submissions 2018-11-21 18:25:47 +01:00
Mathieu Magnin
3ce9dd39af [Fix #3008] Soft delete demarche button in manager 2018-11-21 14:29:42 +01:00
Mathieu Magnin
5c2fe50319 Fix width in manager procedure detail 2018-11-21 14:24:09 +01:00
Mathieu Magnin
7c1768e5bb [Fix #3016] Do not crash if PJ has no extension 2018-11-21 14:15:45 +01:00
Paul Chavard
c99ef811b6 Do not save error json in database 2018-11-21 13:03:01 +01:00
Paul Chavard
49c872fb97 Fail fast if passed champ_id is invalid 2018-11-21 13:03:01 +01:00
Pierre de La Morinerie
38b5c77ad3 mailers: use notification layout for 'new answer' email
Fix #2224
2018-11-20 14:46:31 +01:00
Pierre de La Morinerie
a5f9be00e0 mailers: add preview URL to all previewable mailers 2018-11-20 14:46:31 +01:00
Pierre de La Morinerie
e5303fd986 mailers: streamline the NotificationMailer
Notifications are now only for demarche-templated emails.
2018-11-20 14:46:31 +01:00
Paul Chavard
7ba9624a3f Fix instructeurs list filter
fix #3002
2018-11-20 14:27:32 +01:00
Paul Chavard
d43068ace5 Disable carto for new procedures 2018-11-20 12:14:10 +01:00
Paul Chavard
e374a5c726 Refactor ChampSerializer 2018-11-20 10:53:14 +01:00
Paul Chavard
0b017580c5 Expose migrated legacy carto champs on api 2018-11-20 10:53:14 +01:00
Paul Chavard
fe630847e9 Refactor legacy carto serializer 2018-11-20 10:53:14 +01:00
Paul Chavard
31099b782f Remove dead code 2018-11-20 10:53:14 +01:00
Paul Chavard
d92364b90b Add user_geo_area do champ carte 2018-11-20 10:53:14 +01:00
Paul Chavard
971a08c92a Add expose legacy carto api flag 2018-11-20 10:53:14 +01:00
Paul Chavard
18815e88a3 Rename champ.zones to champ.geo_json 2018-11-20 10:53:14 +01:00
Paul Chavard
2462e42b53 Stop using legacy api carto after migration 2018-11-20 10:53:14 +01:00
Frederic Merizen
101e8e2588 [#2999] Rediriger vers la bonne page apres login
(ne corrige pas le cas ou l'utilisateur est passe par le mail de confirmation)
2018-11-16 15:44:20 +01:00
Frederic Merizen
238c0c707b [#2180] Bump Carrierwave 2018-11-16 11:11:39 +01:00
pengfei
0593299def tronquer uniquement label et mettre close-icon avant le text 2018-11-15 15:10:41 +01:00
pengfei
89daaedbe4 [fix #2719] tronquer les textes dans le filtre, max=50 2018-11-15 15:10:41 +01:00
Paul Chavard
2eb61bd6ed Move dossier invites handler to invites controller 2018-11-14 15:16:49 +01:00
Pierre de La Morinerie
83031b5cdd procedure: compute the usual instruction time only for the last month 2018-11-13 17:23:31 +01:00
Pierre de La Morinerie
b02d50dac8 manager: improve code to hide production features 2018-11-13 16:38:56 +01:00
simon lehericey
fb76197404 SessionController: flipflop trusted device 2018-11-13 10:41:45 +01:00
simon lehericey
36621bffeb FlipFlop: enable for gestionnaire 2018-11-13 10:41:45 +01:00
simon lehericey
457bc13c75 SessionController: do not display 'Connecté' when a login_link is required 2018-11-13 10:41:45 +01:00
simon lehericey
87967568b7 SessionController: if a admin is login in, redirect to admin page 2018-11-13 10:41:45 +01:00
simon lehericey
0d8d2de5a6 Session: add trusted_device cookie 2018-11-13 10:41:45 +01:00
simon lehericey
5690599289 Session: send a mail to confirm gestionnaire login 2018-11-13 10:41:45 +01:00
simon lehericey
2613d05a4f An admin has always a gestionnaire role 2018-11-13 10:41:45 +01:00
Pierre de La Morinerie
7a7093503a dossier: avoid the estimated duration to dangle on a new line 2018-11-12 10:22:21 +01:00
Pierre de La Morinerie
7635aede98 dossier: improve wording of estimated time
Ref #2970
2018-11-12 10:21:57 +01:00
Pierre de La Morinerie
e59bec51ef procedure: use 90th percentile to estimate the completion delay 2018-11-08 18:29:17 +01:00
Pierre de La Morinerie
5c921182ea procedure: rename mean_instruction_time to usual_instruction_time
Ref #2970
2018-11-08 17:20:06 +01:00
Pierre de La Morinerie
c7ac43cfe7 confirmation: add a dedicated page with confirmation instructions
Fix #2586
2018-11-08 16:20:05 +01:00
Pierre de La Morinerie
c927e6651d footer: fix extra horizontal pixels being added to the page 2018-11-08 16:20:05 +01:00
Paul Chavard
33c6ddc452 Remove dead code related to dossier state 2018-11-08 14:56:45 +01:00
Paul Chavard
eede94a59f Use dossier_legacy_state helper 2018-11-08 14:56:45 +01:00
Paul Chavard
0fe59a7c65 Add dossier_legacy_state helper 2018-11-08 14:56:45 +01:00
Paul Chavard
a524c72add Use dossier_display_state helper 2018-11-08 14:56:45 +01:00
Paul Chavard
f09a7a01c8 Add dossier_display_state helper 2018-11-08 14:56:45 +01:00
Paul Chavard
624b442cd7 Remove “Outil de changement d'état d'un dossier” 2018-11-08 14:56:45 +01:00
Paul Chavard
6706b9004f Fix includes on api queries 2018-11-08 14:45:09 +01:00
Paul Chavard
80189def98 Remove n+1 calls from API queries 2018-11-08 14:45:09 +01:00
Chaïb Martinez
8d02b4dbdf Add Matomo Suivi page 2018-11-08 14:25:37 +01:00
Chaïb Martinez
3187b5b05a Add Matomo tracking code 2018-11-07 17:34:10 +01:00
Paul Chavard
a7de2e68ed Refactor types_de_champ views to use service instead of facade 2018-11-07 11:36:10 +01:00
Paul Chavard
1c87eda6e1 Move types_de_champ helper to service 2018-11-07 11:36:10 +01:00
Paul Chavard
2d647f9fa7 Move types_de_champ facade to service 2018-11-07 11:36:10 +01:00
Paul Chavard
9acb1950a4 Remove dossier facade 2018-11-07 11:36:10 +01:00
Mathieu Magnin
62c01706df [Fix #2867] fix default sort for administrate 2018-11-06 19:22:01 +01:00
Pierre de La Morinerie
b0541fba79 users: sign-in after confirming an account within a short time 2018-11-06 18:24:34 +01:00
simon lehericey
9d406770a8 [fix #2956] YesNo: fixing to_s 2018-11-06 16:59:47 +01:00
Frederic Merizen
d564eb1225 [#835] Report failed and successful invitations 2018-11-06 16:40:42 +01:00
Frederic Merizen
8cf235f2fd [#835] Enable html5 validation of multiple mails 2018-11-06 15:44:43 +01:00
Frederic Merizen
c7358a8f53 [Fix #835] Enable asking for multiple avis at the same time 2018-11-06 15:44:43 +01:00
Frederic Merizen
31ca0552ab [#835] Extract avis creation into concern 2018-11-06 15:44:43 +01:00
gregoirenovel
9833564863 [#835] Add a missing validation to avis 2018-11-06 15:44:43 +01:00
gregoirenovel
19a6391dc8 [#835] Use the create_avis_params method instead of the params hash 2018-11-06 15:44:43 +01:00
Paul Chavard
7a60f1b549 Enable champ carte for everyone 2018-11-06 14:26:32 +01:00
Paul Chavard
9ac85295c6 Do not serialize properties on carte champs 2018-11-06 14:26:32 +01:00
Paul Chavard
ca09aa52a3 Put IntegerNumberChamp behind a flag 2018-11-06 11:28:44 +01:00
Paul Chavard
074050a91a Add IntegerNumberChamp 2018-11-06 11:28:44 +01:00
Paul Chavard
45bfb2fd47 Add DecimalNumberChamp 2018-11-06 11:28:44 +01:00
Paul Chavard
cfd1950e17 Migrate commencer to new_user 2018-11-01 13:10:41 +01:00
Mathieu Magnin
917b271a7f [Fix #2697] When file does not exist on openstack do not crash 2018-10-31 15:22:45 +01:00
Paul Chavard
8ff45c7978 Fix commentaire file_url generator 2018-10-31 12:53:14 +01:00
simon lehericey
2f2f1e1321 Let the API return times in UTC for now 2018-10-31 11:43:48 +01:00
Paul Chavard
9b40ef2a77 Expose commentaire attachement on api
fix #2817
2018-10-30 16:22:51 +01:00
Paul Chavard
e391fe6bec Clarify procedure path availability code 2018-10-30 15:59:37 +01:00
Paul Chavard
6782643426 Fix js error on path check before publish 2018-10-30 15:59:37 +01:00
Paul Chavard
6e4d111e09 Refactor and fix procedure update error handling 2018-10-30 15:59:37 +01:00
Mathieu Magnin
e90c541ab4 [Fix #2276] When service creation fails form is not cleared 2018-10-30 15:49:18 +01:00
gregoirenovel
6bc1a8cb71 Remove the confirmation button from the manager 2018-10-30 15:24:30 +01:00
Paul Chavard
fcdc0114fd Add id to geo areas 2018-10-30 12:16:09 +01:00
Paul Chavard
725e88a89a Rename :procedure_path -> :path 2018-10-30 12:01:45 +01:00
Paul Chavard
f1fd1b38ec Refactor procedures_controller 2018-10-30 12:01:45 +01:00
Paul Chavard
b42095363e Refactor procedure model 2018-10-30 12:01:45 +01:00
Paul Chavard
641831864b Refactor commencer actions 2018-10-30 12:01:45 +01:00
Paul Chavard
78dc582588 Remove ProcedurePath 2018-10-30 12:01:45 +01:00
Frederic Merizen
06a667f353 [Fix #2815] Ne pas parler de plusieur PJs quand il n'y en a qu'une 2018-10-30 11:19:17 +01:00
Frederic Merizen
f6207bee26 Do not take time of day into account when searching dates 2018-10-26 17:53:26 +02:00
simon lehericey
a06f872a4b ProcedurePresentation: rescue big int as a datetime value 2018-10-26 14:39:17 +02:00
simon lehericey
63db387984 ProcedurePresentation: display dossier date in d/m/Y 2018-10-26 10:10:20 +00:00
simon lehericey
3685c65fb7 [fix #2905] fix DATE_TRUNC usage
DATE_TRUNC is played on the db where the timestamp are stored in utc.
So if a user search for 12/12/2012 in Paris timezone and that we truncate it should do something similar to :

SELECT DATE_TRUNC('day', foo.timezone) from (SELECT timestamp '2012-12-12 00:00:00' AT TIME ZONE 'Europe/Paris') as foo;
=> 2012-12-11

To avoid such pb, I suggest avoiding DATE_TRUNC when exact results are needed
2018-10-26 10:10:20 +00:00
simon lehericey
3dad743d56 remove localtime as it uses server timezone 2018-10-26 10:10:20 +00:00
simon lehericey
ee0a6b1913 Time.at => Time.zone.at 2018-10-26 10:10:20 +00:00
simon lehericey
e684cec516 DateTime.new => Time.zone.local 2018-10-26 10:10:20 +00:00
simon lehericey
4b25d16f5a Time.zone.parse(_, options) => Time.zone.strptime(_, options) 2018-10-26 10:10:20 +00:00
simon lehericey
f620e4aee2 DateTime.parse => Time.zone.parse 2018-10-26 10:10:20 +00:00
simon lehericey
2238e5bd9f Time.now => Time.zone.now 2018-10-26 10:10:20 +00:00
simon lehericey
13ffa61435 DateTime.now => Time.zone.now 2018-10-26 10:10:20 +00:00
Paul Chavard
fba0fad22e Show warning on dossier pages when procedure is brouillon 2018-10-25 18:05:47 +02:00
gregoirenovel
fed1f05456 Add CADRE_JURIDIQUE_URL 2018-10-25 14:45:13 +02:00
gregoirenovel
394524b397 Improve the webhook description 2018-10-25 14:45:13 +02:00
Frederic Merizen
64cb231b01 [#2675] Fix notification sort order 2018-10-24 17:10:30 +02:00
Frederic Merizen
02f4ef215a [#2675] Make dossiers_id_with_notifications public 2018-10-24 17:10:30 +02:00
Frederic Merizen
dfdcfc62e2 [#2675] Make dossiers_id_with_notifications self-contained 2018-10-24 17:10:30 +02:00
Paul Chavard
72db9084a8 Fix old carto exception when no selection is passed 2018-10-24 13:16:50 +02:00
Paul Chavard
c0344fc30e Fix procedures with multiple dossier link champs 2018-10-24 10:44:28 +02:00
Paul Chavard
fd490efb59 GeoArea on API expose fields per source type 2018-10-23 18:13:44 +02:00
Paul Chavard
5a8a4b393f Add RPG carte source 2018-10-23 18:13:44 +02:00
Paul Chavard
7ffbe417f9 Add ApiGeo RPG adapter 2018-10-23 18:13:44 +02:00
Paul Chavard
ed46e2c3be Use Typhoeus in ApiGeo adapter 2018-10-23 18:13:44 +02:00
Frederic Merizen
51954a6d85 [#2604] Warn that we are destroying an invalid ProcedurePresentation 2018-10-23 16:41:51 +02:00
Frederic Merizen
14fd60bee7 [Fix #2604] Handle ProcedurePresentations that have gone invalid 2018-10-23 16:41:51 +02:00
Frederic Merizen
7baa239095 [#2604] Introduce errors when retrieving ProcedurePresentation 2018-10-23 16:34:38 +02:00
Frederic Merizen
84cac7a5c2 [#2604] Remove unneeded self in AssignTo 2018-10-23 16:34:35 +02:00
Frederic Merizen
dd80cc280a [#2604] Extract method in ProceduresController 2018-10-23 16:34:19 +02:00
Chaïb Martinez
535fe6d13a Link directly to the instructeur tutorial in the instructeur email 2018-10-23 11:23:24 +02:00
Chaïb Martinez
eb7ef0ff82 Link to our contact form 2018-10-23 11:23:24 +02:00
Chaïb Martinez
796ff972e6 Add a webinaire registration CTA at the end of the admin email 2018-10-23 11:23:24 +02:00
Chaïb Martinez
e8dd6b00bf Link to the admin tutorial instead of the doc 2018-10-23 11:23:24 +02:00
Chaïb Martinez
e785c91d92 Make the phone number a link 2018-10-23 11:23:24 +02:00
gregoirenovel
4716afb1c2 Remove one “invite” occurence (also written after this occurence) 2018-10-23 11:23:24 +02:00
Chaïb Martinez
48eada980e Make the account activation link more visible in the admin email 2018-10-23 11:23:24 +02:00
Paul Chavard
c8c75fc254 Better handle empty user selection layers 2018-10-23 09:35:25 +02:00
Paul Chavard
4249f8ae25 Add carte type de champ options 2018-10-23 09:35:25 +02:00
Paul Chavard
b40abaa133 Display carte champ value 2018-10-23 09:35:25 +02:00
Paul Chavard
4a097900d2 Implement carte champ editor 2018-10-23 09:35:25 +02:00
Paul Chavard
99e1a20d98 Add champ carte endpoint 2018-10-23 09:35:25 +02:00
Paul Chavard
383a14ff06 Add geo data helper 2018-10-23 09:35:25 +02:00
Paul Chavard
a541f1fcee Add type options on carte champ 2018-10-23 09:35:25 +02:00
Paul Chavard
f28cfdc779 Rename shared folder carto to carte 2018-10-23 09:35:25 +02:00
Paul Chavard
8d9f6573da Rename shared module carto to carte 2018-10-23 09:35:25 +02:00
Paul Chavard
febef735b8 Refactor carto to share more code 2018-10-23 09:35:25 +02:00
Paul Chavard
53a261f424 Don’t rely on a decorator for ProcedureSerializer#geographic_information 2018-10-22 23:28:16 +02:00
Paul Chavard
2e7a4a4098 Add state to ProcedureSerializer 2018-10-22 23:28:16 +02:00
Paul Chavard
4ebc0b7f4c Refactor link attribute generation on ProcedureSerializer 2018-10-22 23:28:16 +02:00
Paul Chavard
7cf225d443 Add Carte champs support to the API 2018-10-22 23:28:00 +02:00
Paul Chavard
17418edb54 Add SIRET champs support to the API 2018-10-22 23:28:00 +02:00
Paul Chavard
df73e442e9 Explicit foreign_key on CarteChamp 2018-10-22 23:28:00 +02:00
Paul Chavard
e5d8d351ba Fix sentry errors in old carto module 2018-10-22 15:40:19 +02:00
Chaïb Martinez
f47aab8ce6 Improve the help CTA message for instructeurs 2018-10-18 18:38:04 +02:00
gregoirenovel
0ae8c1d719 [Fix #2880] Do not show our phone number to instructeurs 2018-10-18 18:38:04 +02:00
Chaïb Martinez
e0ea605460 [Fix #2877] Modification du titre contact dans le menu instructeur 2018-10-18 18:27:36 +02:00
Frederic Merizen
4b2a06acb5 [#2874] Show archived / followed status of dossier in search result 2018-10-18 16:05:19 +02:00
Frederic Merizen
447e54fe45 [Fix #2874] Allow archived dossiers to appear in search results 2018-10-18 16:05:19 +02:00
Pierre de La Morinerie
65bdfacd8c dossier: remove old SIRET code, controllers and views 2018-10-18 15:46:00 +02:00
Pierre de La Morinerie
da5c3c3007 dossier: remove unused pieces_justificatives partial 2018-10-18 15:46:00 +02:00
Chaïb Martinez
a8b40c4a18 Modification du texte dans le header admin. Ajout du tel et de l'email de de support 2018-10-18 15:31:59 +02:00
gregoirenovel
7eeaac5d81 Hide the mean verification/instruction times for a special demarche
It is not relevant for this demarche, and we’re
doing them a favor
2018-10-18 13:10:55 +02:00
Chaïb Martinez
0090ed2e1f Modification de texte pour le cadre juridique, afin de le rendre plus clair et simple a remplir. 2018-10-18 12:09:16 +02:00
simon lehericey
fd9bdbf31d StatsController: avoid doing useless queries 2018-10-18 11:50:43 +02:00
Frederic Merizen
a0ab2bae04 [Fix #2861] Coquille 2018-10-17 19:50:03 +02:00
gregoirenovel
3a973999a3 [Ref #2738] Hide exercices if not gestionnaire 2018-10-17 15:07:29 +02:00
gregoirenovel
da4037b2fd Add a blank line 2018-10-17 12:24:00 +02:00
gregoirenovel
f9d38762ea [Ref #2738] Remove exercices from a soon-to-be deleted template 2018-10-17 12:24:00 +02:00
Frederic Merizen
a2bd0582b9 [Fix #2741] Filter / sort by en_construction_at 2018-10-17 12:16:51 +02:00
Pierre de La Morinerie
93f1a53dfc dossier: add page for etablissement 2018-10-17 10:37:06 +02:00
Pierre de La Morinerie
310f4b92d1 dossier: add action to save SIRET number 2018-10-17 10:37:06 +02:00
Pierre de La Morinerie
54ba0f8e50 dossier: add new page for SIRET identification 2018-10-17 10:37:06 +02:00
Pierre de La Morinerie
1cf7568bb4 dossier: extract demarche overview to a partial 2018-10-17 10:37:06 +02:00
gregoirenovel
f8b1bc96bb Hide other delete links when the demarche has not been persisted 2018-10-17 09:32:27 +02:00
gregoirenovel
2c44754981 [Fix #2847] Hide the delete logo link if demarche is not persisted 2018-10-17 09:32:27 +02:00
simon lehericey
aff085bb6b StatsController: avoid division by nil 2018-10-16 18:02:00 +02:00
gregoirenovel
2ab38955b7 Bump default gems
- administrate (0.10.0 → 0.11.0)
- groupdate (4.0.1 → 4.0.2)
- spreadsheet_architect (3.1.0 → 3.2.0)
- webpacker (4.0.0.pre.pre.2 → 4.0.0.pre.3)
2018-10-16 15:33:23 +02:00
Paul Chavard
93ba94a9e6 Add carte champ and geo area models 2018-10-16 14:01:12 +03:00
Frederic Merizen
bbdb446dfd [#2772] For unmigrated dossiers, make read-only access possible
and notify usager
2018-10-16 10:40:04 +02:00
Frederic Merizen
1e4ccda14c [#2772] Notify users that their dossier was restored 2018-10-16 10:40:04 +02:00
gregoirenovel
a8af27105d Remove ssl_verifypeer option in ApiEntreprise::API.call
SSL seems OK for https://entreprise.api.gouv.fr/
2018-10-16 10:23:30 +02:00
gregoirenovel
5a326db650 Simplify ApiCarto::API.call
SSL seems OK for https://apicarto.sgmap.fr
2018-10-16 10:16:44 +02:00
gregoirenovel
99894961a5 AddressController#get → #suggestions 2018-10-16 09:38:53 +02:00
gregoirenovel
6658b466cb address/get → address/suggestions 2018-10-16 09:38:53 +02:00
gregoirenovel
43f9fc93de AddressController#get_address_point → #geocode 2018-10-16 09:38:53 +02:00
gregoirenovel
f01057267b address/address_point → address/geocode 2018-10-16 09:38:53 +02:00
gregoirenovel
e667cad617 ban → address 2018-10-16 09:38:53 +02:00
gregoirenovel
79ebdc3443 Ban::SearchController → AddressController 2018-10-16 09:38:53 +02:00
gregoirenovel
f66f0f9668 Remove two useless initialize methods 2018-10-16 09:33:16 +02:00
gregoirenovel
22088b167d Remove ApiAdresse::Geocodeur 2018-10-16 09:33:16 +02:00
gregoirenovel
d68aca545a Refactor ApiAddresse::PointAdapter 2018-10-16 09:33:16 +02:00
gregoirenovel
145880555e ApiAdresse::PointAdapter#point → #geocode 2018-10-16 09:33:16 +02:00
gregoirenovel
af716fa3c6 ApiAdresse::PointRetriever → ApiAdresse::PointAdapter 2018-10-16 09:33:16 +02:00
gregoirenovel
81d2b27160 Refactor ApiAdresse::AddressAdapter 2018-10-16 09:33:16 +02:00
gregoirenovel
7af41b35a2 ApiAdresse::AddressAdapter#list → #get_suggestions 2018-10-16 09:33:16 +02:00
gregoirenovel
517c0ad3fc ApiAdresse::AddressRetriever → ApiAdresse::AddressAdapter 2018-10-16 09:33:16 +02:00
gregoirenovel
32b27ba111 Add some spacing 2018-10-15 23:31:23 +02:00
gregoirenovel
76cf9ab746 ApiGeo::Driver → ApiGeo::API 2018-10-15 23:31:23 +02:00
gregoirenovel
c654122e90 Unify scoping in app/lib 2018-10-15 23:31:23 +02:00
gregoirenovel
831cd56b95 Remove comments in ApiAdresse 2018-10-15 23:31:23 +02:00
gregoirenovel
8b4ba42f15 Simplify ApiAdresse 2018-10-15 23:31:23 +02:00
gregoirenovel
a841a517df ApiAdresse::Driver → ApiAdresse::API 2018-10-15 23:31:23 +02:00
gregoirenovel
5db4de6c53 QuartiersPrioritaires::Adapter → QuartiersPrioritairesAdapter 2018-10-15 23:31:23 +02:00
gregoirenovel
918a91a985 ApiCarto::Cadastre::Adapter → ApiCarto::CadastreAdapter 2018-10-15 23:31:23 +02:00
simon lehericey
45d63df5ee Autocomplete.js: debounce input 2018-10-15 21:41:42 +02:00
gregoirenovel
6be26af7db Use parentheses 2018-10-15 20:55:46 +02:00
gregoirenovel
5e9e913dce Carto::Geocodeur → ApiAdresse::Geocodeur 2018-10-15 20:55:46 +02:00
gregoirenovel
d726fbf698 CARTO::SGMAP → ApiCarto 2018-10-15 20:55:46 +02:00
gregoirenovel
442b4a241b Make API_ADRRESSE_URL canonical 2018-10-15 20:55:46 +02:00
gregoirenovel
a7a6898ce3 Constantize the API Adresse URL 2018-10-15 20:55:46 +02:00
gregoirenovel
ca8af0e904 Use parentheses 2018-10-15 20:55:46 +02:00
gregoirenovel
dac2019675 Carto::Bano → ApiAdresse 2018-10-15 20:55:46 +02:00
gregoirenovel
d749d20bb3 api_url → url 2018-10-15 20:55:46 +02:00
gregoirenovel
a7019719c2 Use parentheses 2018-10-15 20:55:46 +02:00
gregoirenovel
4903a6b189 Carto::GeoAPI → ApiGeo 2018-10-15 20:55:46 +02:00
gregoirenovel
34ac68b27f 2018-10-15 17:12:34 +02:00
gregoirenovel
ac2cc1e5f4 Add a blank state message to carto 2018-10-15 17:12:34 +02:00
gregoirenovel
b162c68844 Use Hash#slice 2018-10-15 17:12:34 +02:00
gregoirenovel
889b9b9342 Make Cadastre::Adapter#to_params more like QuartiersPrioritaires::Adapter 2018-10-15 16:45:30 +02:00
gregoirenovel
22beb41240 Unify #generate_qp with #generate_cadastre 2018-10-15 16:45:30 +02:00
gregoirenovel
a18af4e616 Simplify CARTO::SGMAP::API.call 2018-10-15 16:45:30 +02:00
gregoirenovel
5df4e3305e Simplify CARTO::SGMAP::API 2018-10-15 16:45:30 +02:00
gregoirenovel
2ed4c1da1c Use round brackets 2018-10-15 16:45:30 +02:00
gregoirenovel
0196309822 Remove a useless default in CARTO::SGMAP::API.call 2018-10-15 16:16:16 +02:00
gregoirenovel
1f0af303f3 Remove the unused ModuleApiCarto#classes method 2018-10-15 16:16:16 +02:00
simon lehericey
3d51b7f4a3 so crazy right now 2018-10-15 14:55:07 +02:00
simon lehericey
21e3dc1498 Let the stats be great again 2018-10-15 14:55:07 +02:00
simon lehericey
17b100b4e9 ControllerStat: renaming 2018-10-15 14:55:07 +02:00
Paul Chavard
9a4975a2dd Remove dead carto code 2018-10-14 12:34:44 +02:00
Paul Chavard
55b955f838 carto: refactor carto editor using new primitives 2018-10-14 12:34:44 +02:00
Paul Chavard
ad2c589e4d carto: extract draw method from old design carto 2018-10-14 12:34:44 +02:00
Paul Chavard
25e71634e7 carto: extract polygonArea helper 2018-10-14 12:34:44 +02:00
Paul Chavard
53c6003d27 carto: use exported polygon styles 2018-10-14 12:34:44 +02:00
Paul Chavard
f321e9df3f carto: use initMap in new design carto 2018-10-14 12:34:44 +02:00
Paul Chavard
485aabf295 carto: export polygon styles 2018-10-14 12:34:44 +02:00
Paul Chavard
e1b068d67c carto: add initMap method 2018-10-14 12:34:44 +02:00
Paul Chavard
561f9a8164 carto: add drawLayer method 2018-10-14 12:34:44 +02:00
Paul Chavard
6673467117 carto: add createLayer and removeLayer methods 2018-10-14 12:34:44 +02:00
Paul Chavard
c6a28d1444 Cleanup carto save 2018-10-14 12:34:44 +02:00
Paul Chavard
2bab056613 Cleanup carto css 2018-10-14 12:34:43 +02:00
Paul Chavard
dff4f2116a Move geographical zones list to a partial 2018-10-14 12:34:43 +02:00
Paul Chavard
c63675461a Add new carto init code 2018-10-14 12:34:43 +02:00
Paul Chavard
5a2a18d8f1 Remove previous carto init code 2018-10-14 12:34:43 +02:00
Paul Chavard
b5a3fc76fb Remove legacy carto routes 2018-10-14 12:34:43 +02:00
Paul Chavard
59c1b24f3c Change demarche modifee message
fix #2821
2018-10-13 11:06:31 +02:00
simon lehericey
888bbee097 [fix #2818] DossierController: ensure save_draft is authorized 2018-10-12 12:14:49 +02:00
gregoirenovel
c56ea05f60 Show the service, not the organisation in Procedures list 2018-10-11 14:13:43 +02:00
gregoirenovel
56cfcd08d3 [Fix #2692] Move the sign up CTA at the top of the sign in page 2018-10-11 12:22:47 +02:00
gregoirenovel
d78f4a8faf [#2692] Make the sign up button a primary button on the sign in page 2018-10-11 12:22:47 +02:00
Frederic Merizen
3dca3c7dee [Fix #1961] Check that sorted_ids works for individual 2018-10-11 12:13:03 +02:00
Frederic Merizen
abd066c6f4 [#1961] filtered_ids for individual 2018-10-11 12:13:03 +02:00
Frederic Merizen
34da620b0f [#1961] get_value for individual 2018-10-11 12:13:03 +02:00
Frederic Merizen
5d862ae92b [#1961] Add individual fields 2018-10-11 12:13:03 +02:00
Frederic Merizen
07b8838561 Remove dead code
Should have been removed as part of #2720 but was accidentally reintroduced
in #2770
2018-10-11 12:00:49 +02:00
Frederic Merizen
05c8c3f18b [Fix #2800] Handle empty cells
Evidently link_to handles nil differently when it receives it as a first
argument than when it is returned from a block argument
2018-10-10 20:32:03 +02:00
Frederic Merizen
577475f26e [Fix #2580] Filter by created_at / updated_at 2018-10-10 18:18:28 +02:00
Paul Chavard
136031bea4 Remove jQuery import from new design 2018-10-10 15:05:51 +02:00
Paul Chavard
b79e77687e Refactor avis helpers 2018-10-10 15:05:51 +02:00
Paul Chavard
08d5e7d328 Refactor toggle chart helpers 2018-10-10 15:05:51 +02:00
Paul Chavard
9d5ffba068 Refactor state button helpers 2018-10-10 15:05:51 +02:00
Paul Chavard
3897d4abf4 Refactor messagerie helpers 2018-10-10 15:05:51 +02:00
Paul Chavard
d18b1c8ddc Refactor form validation helpers 2018-10-10 14:55:28 +02:00
Paul Chavard
8c16eb4cd0 Use @utils instead of jQuery 2018-10-10 14:55:28 +02:00
Paul Chavard
c343893d00 Expose all utils function as @utils 2018-10-10 14:39:36 +02:00
gregoirenovel
c8f872c566 InviteUser → Invite 2018-10-10 12:07:10 +02:00
gregoirenovel
ed11852300 Delete the InviteGestionnaire model 2018-10-10 12:07:10 +02:00
gregoirenovel
46d02d3e2b Remove a return 2018-10-10 10:38:57 +02:00
gregoirenovel
89dec3d363 Add a variable to ease code reading 2018-10-10 10:38:57 +02:00
gregoirenovel
4e2964aec3 Unify code in Users::Dossiers::InvitesController#show 2018-10-10 10:38:57 +02:00
gregoirenovel
662349c8bb Remove InviteDossierFacades 2018-10-10 09:36:05 +02:00
Frederic Merizen
fac6922b98 [#2750] Set might be overkill here 2018-10-10 09:07:57 +02:00
Frederic Merizen
667deae5cc [#2750] Sanity check procedure 2018-10-10 09:07:57 +02:00
Frederic Merizen
30ef6e6d95 [#2750] No need to validate table and column
Because they are pre-validated by rails on the model
2018-10-10 09:07:57 +02:00
Frederic Merizen
58c0ec1bbd [#2750] Validate order on model update rather than on usage 2018-10-10 09:07:57 +02:00
Frederic Merizen
026c322fce [#2750] Make ProcedurePresentation checks private 2018-10-10 09:07:57 +02:00
Frederic Merizen
40a5ff0266 [#2750] do parsing of displayed_fields inside ProcedurePresentation
rather than in the view
2018-10-10 09:07:57 +02:00
Frederic Merizen
f59984ea70 [#2750] Remove redundant references to procedure 2018-10-10 09:07:57 +02:00
Frederic Merizen
462c818025 [#2750] Move fields from DossierFieldService to ProcedurePresentation 2018-10-10 09:07:57 +02:00
Frederic Merizen
9fa7a6fd0e [#2750] Move get_value to ProcedurePresentation 2018-10-10 09:07:57 +02:00
Frederic Merizen
fc157c3e4c [#2750] Move sorted_ids to ProcedurePresentation 2018-10-10 09:07:57 +02:00
Frederic Merizen
2e9dafb4c3 [#2750] Move filtered_ids to ProcedurePresentation 2018-10-10 09:07:57 +02:00
Frederic Merizen
0e9b40ccf6 [#2750] Move fields from Procedure to ProcedurePresentation 2018-10-10 09:07:57 +02:00
Frederic Merizen
efcac5192a [#2750] Move fields_for_select to ProcedurePresentation 2018-10-10 09:07:57 +02:00
Frederic Merizen
c1f18a164d Remove dead, buggy code 2018-10-10 05:51:17 +02:00
gregoirenovel
f3caa8ef7f Remove apipie (and maruku) 2018-10-09 17:23:07 +02:00
gregoirenovel
a1bab24681 Change the link to the API documentation 2018-10-09 17:23:07 +02:00
gregoirenovel
98d348aab1 Remove the delete demarche feature for admins 2018-10-09 16:42:32 +02:00
Paul Chavard
bcbfc370b2 Add button in manager to transition démarche in brouillon state
fix #2565
2018-10-09 16:14:18 +02:00
Paul Chavard
cc96723475 Allow users to fill dossiers on démarches en brouillon 2018-10-09 15:05:08 +02:00
simon lehericey
2288303de9 [fix #2777] DossiersSerializer: add state 2018-10-08 18:36:49 +02:00
simon lehericey
87e731bc75 Dossier: move state translation to model dossier 2018-10-08 17:55:20 +02:00
gregoirenovel
c5ee377a1a Fix a date on the tour de france page 2018-10-08 14:34:01 +02:00
Paul Chavard
37d424d671 Refactor carto code 2018-10-05 09:55:41 +02:00
Paul Chavard
51127c324d Move old carto code to webpacker 2018-10-05 09:55:41 +02:00
Paul Chavard
6ed4bb538c Remove dead code 2018-10-05 09:55:41 +02:00
Paul Chavard
7898a33469 Format old javascript with prettier 2018-10-05 09:55:41 +02:00
Paul Chavard
179786380d Use leaflet and freedraw from npm 2018-10-05 09:55:41 +02:00
Paul Chavard
eda3dd4215 Compile FranceConnect module with webpacker 2018-10-05 09:55:13 +02:00
Paul Chavard
9d19936f82 Move franceconnect kit to webpacker 2018-10-05 09:55:13 +02:00
Paul Chavard
ff405e1b2d Stop using global function 2018-10-05 09:55:13 +02:00
gregoirenovel
b853402ef9 Add a blank state message in the avis tab 2018-10-05 00:01:54 +02:00
gregoirenovel
25cbd5e7af [Fix #2757] Do not show the avis form for dossiers that are terminés 2018-10-05 00:01:54 +02:00
gregoirenovel
fffbbb5d73 Extract the conditional in a partial to its caller 2018-10-05 00:01:54 +02:00
gregoirenovel
458e3e37f8 Rename .dossiers-table-empty to .blank-tab 2018-10-05 00:01:54 +02:00
gregoirenovel
db6706bd65 Remove an extra blank line 2018-10-05 00:01:54 +02:00
gregoirenovel
7fe3b43eab Improve a comment in RNAAdapter 2018-10-04 21:03:49 +02:00
gregoirenovel
1ffd4a230b Simplify RNAAdapter#process_params
Avoid catching an attribute only to remove it
a few lines later
2018-10-04 21:03:49 +02:00
gregoirenovel
b28607a3a6 Simplify an instruction in ExercicesAdapter#process_params 2018-10-04 21:03:49 +02:00
Paul Chavard
e3e83b6021 Allow link to any dossier 2018-10-04 19:53:10 +02:00
Frederic Merizen
33f29f35ab Avoid recreating service too often 2018-10-04 18:09:39 +02:00
Frederic Merizen
eafd0e8348 Evite de cacher la whitelist trop longtemps 2018-10-04 18:09:39 +02:00
Paul Chavard
1302b68d91 Only reject api entreprise data if required fields are missing 2018-10-04 17:55:09 +02:00
gregoirenovel
36ce94195b Remove france_connect delegation on User 2018-10-04 13:54:07 +02:00
gregoirenovel
14c8e02aca [Fixes #2597] Remove given_name and family_name delegation 2018-10-04 13:54:07 +02:00
gregoirenovel
12f0c99b5a Remove FC fields from instructeur table customisation 2018-10-04 13:54:07 +02:00
gregoirenovel
5107b33af8 Remove FC fields from search 2018-10-04 13:54:07 +02:00
gregoirenovel
5f8e8caeb5 Stop auto copying the FC infos to the dossier identity 2018-10-04 13:54:07 +02:00
Paul Chavard
44511acfed Do not reload page when instructeur change dossier state
fix #2425
2018-10-04 11:12:43 +02:00
Frederic Merizen
b36d153620 Fix missing sort columns 2018-10-03 17:09:49 +02:00
Chaïb Martinez
dc0dd8a479 Remove the details from the Publication tab 2018-10-03 16:03:43 +02:00
Chaïb Martinez
baca93dc38 Rename the Informations tab to Publication 2018-10-03 16:03:43 +02:00
Pierre de La Morinerie
7a23aaf62f session: consistent wording between usagers and instructeurs 2018-10-03 15:10:02 +02:00
Pierre de La Morinerie
627df7a1f3 session: migrate the password pages to the new design 2018-10-03 15:10:02 +02:00
Pierre de La Morinerie
bfd106ba30 session: migrate the "token confirmation" page to the new design 2018-10-03 15:09:30 +02:00
Pierre de La Morinerie
e87264b402 stylesheets: add a devise-container class 2018-10-03 15:09:30 +02:00
gregoirenovel
c91a1cf474 Enable Style/SymbolArray 2018-10-03 12:15:48 +02:00
gregoirenovel
d9d4f6fe20 Enable Style/SymbolProc 2018-10-03 12:15:48 +02:00
gregoirenovel
7e4268db67 Enable Style/TrailingCommaInArguments 2018-10-03 12:03:21 +02:00
gregoirenovel
275bb64c1f Enable Style/TrailingCommaInArrayLiteral 2018-10-03 12:03:21 +02:00
gregoirenovel
a171186dd8 Enable Style/TrailingCommaInHashLiteral 2018-10-03 12:03:21 +02:00
gregoirenovel
ed240cb4d3 Enable Style/UnneededInterpolation 2018-10-03 12:03:21 +02:00
gregoirenovel
6eeba14885 Enable Style/WordArray 2018-10-03 12:03:21 +02:00
gregoirenovel
d1439f8a52 Enable Style/YodaCondition 2018-10-03 12:00:17 +02:00
gregoirenovel
1f4ef0074f Enable Style/ZeroLengthPredicate 2018-10-03 12:00:17 +02:00
Chaïb Martinez
e452fa8343 [Fix #2432] Warn admins to always share a direct link to their demarche 2018-10-03 11:18:17 +02:00
Frederic Merizen
8bb08a1b8b [#2579] Validate columns on ProcedurePresentation model 2018-10-03 10:17:46 +02:00
Frederic Merizen
103f466cb8 [Fix #2579] Protect get_value against method name injection 2018-10-03 10:17:46 +02:00
Frederic Merizen
1ac8840bc9 [#2579] Protect against SQL injection on column and table in filtered_ids 2018-10-03 10:17:46 +02:00
Frederic Merizen
670edc3279 [#2579] Sanitize order 2018-10-03 10:17:46 +02:00
Frederic Merizen
314e9354c1 [#2579] Simplify sorted_ids 2018-10-03 10:17:46 +02:00
Frederic Merizen
3bb6fd2d47 [#2579] Remove no-op
(sanitize_sql_for_order does not do anything when its argument is a string)
2018-10-03 10:17:46 +02:00
Frederic Merizen
b8f88ece5c [#2579] Fix injection SQL dans le filtrage instructeur 2018-10-03 10:17:46 +02:00
Paul Chavard
941c529b2c Remove CGU checkbox
fix #2725
2018-10-03 08:59:02 +02:00
Mathieu Magnin
1dc2c30b24 Add mail templates to manager 2018-10-02 17:27:28 +02:00
Mathieu Magnin
a029aa62b1 [Fix #2674] Add Services to manager 2018-10-02 16:17:17 +02:00
Pierre de La Morinerie
20f0151e8a dossier: remove pdf.svg 2018-10-02 15:43:37 +02:00
Pierre de La Morinerie
36c1aa118d dossier: remove RecapitulatifController
And add a redirection to the new URLs.
2018-10-02 15:42:29 +02:00
Pierre de La Morinerie
d476953108 dossier: remove Invites view 2018-10-02 14:40:47 +02:00
Pierre de La Morinerie
bf9f427299 dossier: remove DescriptionController 2018-10-02 14:40:47 +02:00
Pierre de La Morinerie
3392df0029 dossier: remove CommentairesController 2018-10-02 14:40:38 +02:00
gregoirenovel
553a6b53f2 Make the annotations privées submit button more visible 2018-10-02 14:18:07 +02:00
Pierre de La Morinerie
758ccff984 dossier: remove feature flag 2018-10-02 12:25:44 +02:00
Chaïb Martinez
da134c6d4b Ajout d'une astuce dans l'ajout d'instructeur 2018-10-02 11:43:44 +02:00
gregoirenovel
cf69c28979 Fix scope for logo/notice/deliberation deletion 2018-10-02 11:03:48 +02:00
gregoirenovel
b994fa4206 Do one thing per line 2018-10-01 16:15:46 +02:00
gregoirenovel
3965709bd0 Fix a mistake in the Tour de France page 2018-10-01 15:33:19 +02:00
Pierre de La Morinerie
cd938b4c36 dropdown: refactor to make the button an actual button 2018-09-27 17:43:08 +02:00
Pierre de La Morinerie
c79c1a2636 carto: update link to dossier 2018-09-27 17:22:59 +02:00
Pierre de La Morinerie
0526551e71 templates: update link to dossier 2018-09-27 17:22:59 +02:00
Pierre de La Morinerie
40cf7ebdcb mailers: update links to messagerie 2018-09-27 17:22:59 +02:00
Pierre de La Morinerie
5f1ce48d2e invites: update link to dossier 2018-09-27 17:22:59 +02:00
Pierre de La Morinerie
08dfe7d13a support: update link to messagerie 2018-09-27 17:22:59 +02:00
Paul Chavard
3c66fceba5 Replace password strength js with ujs 2018-09-27 16:00:14 +02:00
Paul Chavard
5a795ae30b Add more information about lien demarche 2018-09-27 15:47:33 +02:00
simon lehericey
4d4dba1550 Procedure: small renaming on mean_time 2018-09-27 15:02:38 +02:00
simon lehericey
88f7e888c3 Administrateur: do not save api_token in clear text anymore 2018-09-27 10:24:56 +02:00
simon lehericey
16566b46c0 DossierController: private some methods 2018-09-27 10:24:56 +02:00
simon lehericey
912371fbd6 DossierController: use new token validation 2018-09-27 10:24:56 +02:00
simon lehericey
8dd4a1ca4e ProcedureController: remove useless logger call 2018-09-27 10:24:56 +02:00
simon lehericey
3c95273d6f ProcedureController: use new token validation 2018-09-27 10:24:56 +02:00
simon lehericey
0b2a98cdce ApiController: private some methods 2018-09-27 10:24:56 +02:00
simon lehericey
f7c23bb435 ApiController: remove ensure_token_is_present
An admin without token answer false to admin.api_token_valid?(api_token) with api_token=*
2018-09-27 10:24:56 +02:00
simon lehericey
4a04f2e59f ApiController: check token validity for a given admin 2018-09-27 10:24:56 +02:00
simon lehericey
d576d426f4 ApiController: remove old authenticate logic
The old logic cannot work anymore as we cannot `find_by api_token`
2018-09-27 10:24:56 +02:00
simon lehericey
1af789b9a8 Profile: add breadcrumb 2018-09-27 10:14:32 +02:00
simon lehericey
8c4f8347ca Api Token: store token in an encrypted form 2018-09-27 10:14:32 +02:00
simon lehericey
1997f45d7e Api Token: do not generate one token by default 2018-09-27 10:14:32 +02:00
simon lehericey
17285b0368 Profil: display token only once 2018-09-27 10:14:32 +02:00
simon lehericey
bd04972f65 Profile: move to new design 2018-09-27 10:14:32 +02:00
simon lehericey
f115658d55 OH ! 2018-09-27 10:14:32 +02:00
Paul Chavard
f94a24d7ce Add path field to procedure information form 2018-09-26 10:53:45 +02:00
Paul Chavard
f6a6d8f457 Fix destroy dossiers on procedure reset 2018-09-26 10:53:45 +02:00
Mathieu Magnin
7280b1f503 [Fix #1285] Password strength is checked when user is typing 2018-09-26 09:51:30 +02:00
Mathieu Magnin
d1d8d9afe2 [Fix #1285] Add JS to dynamically check the password strength 2018-09-26 09:51:30 +02:00
Mathieu Magnin
2507f963b1 [Fix #1285] Create an endpoint to check password strength 2018-09-26 09:03:04 +02:00
Mathieu Magnin
35da5d595f [Fix #1285] Redesign the administrateurs password activation page 2018-09-26 09:03:03 +02:00
Mathieu Magnin
499021588d [Fix #1285] Password strength is ensured when saving an administrateur 2018-09-26 09:03:03 +02:00
Frederic Merizen
998754ab73 [Fix #2258] Validate options for linked dropdown menus 2018-09-25 20:32:19 +02:00
Frederic Merizen
b521095010 [#2258] Notify administrator of problems saving the types de champs 2018-09-25 20:31:42 +02:00
Frederic Merizen
3fea14c07d [#2258] Let dynamic type validate the type de champ 2018-09-25 20:31:34 +02:00
Frederic Merizen
695426316c [#2258] Make linked menus more robust in the face of bad configuration 2018-09-25 20:31:06 +02:00
Paul Chavard
90fb81af2b Load OSM tiles over https 2018-09-25 17:48:29 +02:00
Chaïb Martinez
21a13b3311 Correctif mineur de texte dans le formulaire d'inscription admin 2018-09-25 16:57:41 +02:00
Frederic Merizen
40bc6208f0 [Fix #2550] Also send mail notification when accepting dossier 2018-09-25 15:57:07 +02:00
Frederic Merizen
7631bde16a [#2550] Generate attestation on auto-accepted dossier 2018-09-25 15:53:57 +02:00
gregoirenovel
c92b0b163c Add a banner about the Tour de France on the administration landing page 2018-09-25 13:43:11 +02:00
Frederic Merizen
9beaa293cd [#1421] Use delegation rather than STI for TypeDeChamp 2018-09-25 08:26:56 +02:00
Frederic Merizen
112fdb71fb [#2613] Remove dead code 2018-09-24 20:19:26 +02:00
Frederic Merizen
26ece1d144 [Fix #2613] Filter by date creation entreprise 2018-09-24 20:19:26 +02:00
Frederic Merizen
7d382837d9 [Fix #2622] Change filters to proper JSONB 2018-09-24 19:39:01 +02:00
Frederic Merizen
1419e9b73f [#2622] Change sort to proper JSONB 2018-09-24 19:39:01 +02:00
Frederic Merizen
68608307ad [#2622] Change displayed_fields to proper JSONB 2018-09-24 19:39:01 +02:00
gregoirenovel
5b011fef59 [Fix #2652] Add the /tour-de-france page 2018-09-24 18:07:29 +02:00
Pierre de La Morinerie
682e29a211 dossier: refactor the pages permissions
Fixes the invites not being able to create a commentaire.
2018-09-24 17:05:27 +02:00
Pierre de La Morinerie
a5419b2f08 dossier: fix redirection to dossiers/invite 2018-09-24 17:05:27 +02:00
Pierre de La Morinerie
01599ac1e1 dossier: allow inviting users on the dossier page 2018-09-24 17:05:26 +02:00
Pierre de La Morinerie
0995c8e5ad dossier: extract the invitation dropdown to a partial 2018-09-24 16:29:36 +02:00
gregoirenovel
f9d640d78d [Fix #2665] Fix the avis invitation email footer 2018-09-24 14:32:20 +02:00
gregoirenovel
7b3a7d2336 [Fix #187] Allow an admin to delete their demarche logo 2018-09-24 13:29:35 +02:00
gregoirenovel
94378e3663 [Fix #2332] Allow the notice deletion 2018-09-24 12:25:10 +02:00
gregoirenovel
89deb93e1d Remove marianne_small.png 2018-09-24 12:16:58 +02:00
gregoirenovel
5db408efdb [Fix #1511] Remove the now obsolete DS logo 2018-09-24 12:16:58 +02:00
gregoirenovel
0b0c668888 [Fix #2648] Add more details about the retention time out of DS 2018-09-24 12:09:54 +02:00
gregoirenovel
535f9004bf Admins can delete the attestation template's logo 2018-09-24 10:15:22 +02:00
gregoirenovel
d649e29bb0 [Fix #1979] Admins can delete the attestation template's signature 2018-09-24 10:15:02 +02:00
gregoirenovel
ded9c0eaf6 Add a separator between the explanation and form 2018-09-23 21:52:13 +02:00
gregoirenovel
086bf8e203 Improve the spacing on the new demande page 2018-09-23 21:45:39 +02:00
gregoirenovel
477faf06d7 Add a title to the new demande page 2018-09-23 18:17:16 +02:00
gregoirenovel
ed0e58d179 Add a footer to the new demande page 2018-09-23 18:16:53 +02:00
gregoirenovel
09196d12c3 Open the notice in a new tab 2018-09-21 15:57:04 +02:00
gregoirenovel
e4eb55a37f Revert "[Fix #2623] Ensure numbers are integers"
This reverts commit 68789ff43b.
2018-09-21 15:15:11 +02:00
gregoirenovel
2585485370 Move the dossier-edit class directly to the _edit.html.haml template
So that when the partial included in
modifier.html.haml can also benefit from its
styling rules
2018-09-21 10:35:20 +02:00
gregoirenovel
7b7a939312 [Fix #2642] Show the filename in the dossier print view 2018-09-21 10:26:10 +02:00
gregoirenovel
68789ff43b [Fix #2623] Ensure numbers are integers 2018-09-21 08:12:52 +02:00
Frederic Merizen
ac82a72dcc [#1946] Monthly expiring dossiers summary mail 2018-09-20 17:44:31 +02:00
Frederic Merizen
43d8db88d9 [#1946] Check if a dossier’s retention period has expired 2018-09-20 17:44:31 +02:00
Frederic Merizen
b672377f5b [#1946] Query dossiers by remaining retention time 2018-09-20 17:44:31 +02:00
gregoirenovel
0c9628c180 Fix some files according the the .editorconfig rules 2018-09-20 16:23:09 +02:00
gregoirenovel
66fcdda59b Extract some code in a helper
It makes the code clearer and will avoid some
linting issues
2018-09-20 16:23:09 +02:00
Paul Chavard
905a715e16 Fix dossier link 2018-09-20 16:05:40 +02:00
gregoirenovel
b317b49b3d Confirmation → activation 2018-09-20 10:43:07 +02:00
gregoirenovel
f86cc835f8 courriel → email / adresse email 2018-09-20 10:43:07 +02:00
gregoirenovel
acaf7ff5a7 Adresse électronique → adresse email 2018-09-20 10:43:07 +02:00
Paul Chavard
539f15af92 Fix new lines in confirm dialogs 2018-09-19 14:45:10 +02:00
Pierre de La Morinerie
e5f4056fe2 invite: fix prefilling the invited user email 2018-09-19 12:41:09 +02:00
Pierre de La Morinerie
1a6a643dc9 invite: refactor the generation of the invitation URL 2018-09-19 12:41:09 +02:00
Pierre de La Morinerie
bc55afba51 invite: clarify logic of sign-up redirection 2018-09-19 12:41:09 +02:00
gregoirenovel
8ea021fb69 Factorize code in a method 2018-09-19 12:31:59 +02:00
gregoirenovel
6b98c36dad Add Dossier#mean_traitement_time for the upcoming page de garde 2018-09-19 12:31:59 +02:00
gregoirenovel
f3a257d81d Show the mean verification time in the Résumé tab 2018-09-19 12:31:59 +02:00
gregoirenovel
d55c9dff4d Show the mean instruction time in the Résumé tab 2018-09-19 12:31:59 +02:00
Pierre de La Morinerie
082ef92a99 invite: move invites link to the after_confirmation callback
Refactored from 6a69d958da

The `after_confirmation_path_for` isn't really made to be a callbback.
For instance, it is not executed during tests.

Moving the invitations linking to a proper documented callback allows
the linking to work in a testing environment, when invoking `user.confirm`.
2018-09-19 12:08:28 +02:00
Paul Chavard
9a338ec140 Change how we format brouillon démarche label 2018-09-19 11:27:55 +02:00
gregoirenovel
a0660d17eb Refactor SiretFormatValidator#luhn_checksum 2018-09-19 10:32:43 +02:00
gregoirenovel
9d18f4187c Simplify SiretFormatValidator
We can remove nil checks as we never get nil
values
2018-09-19 10:32:43 +02:00
gregoirenovel
4e4b7c617f [Fix #2618] Do not enforce Luhn for La Poste SIRET numbers 2018-09-19 10:29:43 +02:00
gregoirenovel
940dfe422b Further refactor SiretFormatValidator#validate_each 2018-09-19 10:28:07 +02:00
gregoirenovel
36950b985b Refactor SiretFormatValidator#validate_each 2018-09-19 10:15:44 +02:00
gregoirenovel
49d872452a Improve SiretFormatValidator readability 2018-09-19 10:15:44 +02:00
Pierre de La Morinerie
38f6d11c57 dossier: finish feature-switch for enabled new dossier details 2018-09-18 16:48:27 +02:00
Paul Chavard
36812793d4 Do not clone procedure path 2018-09-18 14:40:02 +02:00
Frederic Merizen
89a1d990e9 [#2584] Minor cleanup of DossierFieldService 2018-09-18 13:49:49 +02:00
Frederic Merizen
63fc0b3bc3 [Fix #2584] Move Field related code to a service 2018-09-18 13:49:34 +02:00
Paul Chavard
18922122b4 Fix SQL ambiguous name error 2018-09-18 13:21:29 +02:00
Paul Chavard
b042efdcba Update procedure path attribute when procedure_path changes 2018-09-18 13:21:29 +02:00
Paul Chavard
b772256a97 Read from path attribute instead of procedure_path when possible 2018-09-18 13:21:18 +02:00
Paul Chavard
2787f040af Add path attribute to Procedure model 2018-09-18 13:21:18 +02:00
Paul Chavard
e2f13a8b73 Use helpers rather then view_context 2018-09-18 12:06:27 +02:00
Paul Chavard
db1a93ab35 fix procédure -> démarche 2018-09-18 11:22:06 +02:00
gregoirenovel
f696560a14 Affichage du service dans la liste des démarches 2018-09-18 10:44:49 +02:00
Pierre de La Morinerie
a820f2118a dossier: improve wording for 'en instruction' 2018-09-18 10:33:11 +02:00
Pierre de La Morinerie
4a5218ffe9 dossier: improve wording for 'en construction' 2018-09-18 10:33:11 +02:00
Pierre de La Morinerie
ea3267c0d7 dossier: don't display 'brouillon' in the timeline if not required
Unless the user is actually editing a brouillon, we don't need to show
this state.
2018-09-18 10:33:11 +02:00
Pierre de La Morinerie
de07171acd dossier: improve styling of finished dossier infos 2018-09-17 16:29:48 +02:00
Pierre de La Morinerie
a7cb4b6514 dossier: add download icon to attestation link 2018-09-17 16:29:48 +02:00
Pierre de La Morinerie
27727eabf3 dossier: add link to attestation when accepted 2018-09-17 16:29:48 +02:00
Pierre de La Morinerie
fd7f07a244 dossier: add link to messagerie when rejected 2018-09-17 16:29:48 +02:00
Pierre de La Morinerie
2de480d6e9 dossier: show latest message only when dossier is pending 2018-09-17 16:29:48 +02:00
gregoirenovel
cac202342a Remove a new useless helper 2018-09-13 16:27:46 +02:00
gregoirenovel
747992025b 'Create a new demarche' links now point to the demarches page 2018-09-13 16:27:46 +02:00
gregoirenovel
734efd0822 Scope the new demarche page to add space before the footer 2018-09-13 16:27:46 +02:00
gregoirenovel
118ba12d2b Add a footer to the new demarches page 2018-09-13 16:27:46 +02:00
gregoirenovel
aba0c1dcd6 Add links to the most popular demarches 2018-09-13 16:27:46 +02:00
gregoirenovel
523fdb5d45 Add a link to the page with all the demarches 2018-09-13 16:27:46 +02:00
gregoirenovel
9fe9f9b616 Add a new demarches page, showing the demarches already done 2018-09-13 16:27:46 +02:00
gregoirenovel
1f6870cd5e Display a footer in the dossiers index page 2018-09-13 10:46:32 +02:00
gregoirenovel
5166b79167 Extract the general footer row in a partial 2018-09-13 10:46:32 +02:00
gregoirenovel
cedf1ba427 footer → dossier_footer 2018-09-13 10:46:32 +02:00
gregoirenovel
6745b67dc4 Add some space before the footer on the dossier pages 2018-09-13 10:46:32 +02:00
gregoirenovel
8ec27d4348 Add a clearfix below the edit-form button
To avoid an overlap with the footer
2018-09-13 10:46:32 +02:00
gregoirenovel
20c7733a48 Display the dossier footer on all the dossier pages 2018-09-13 10:46:32 +02:00
Frederic Merizen
a94397a70c [Fix #2562] Make dossier filters case insensitive 2018-09-13 10:29:22 +02:00
Paul Chavard
bfe7240235 Fix event bubbling on Mobile Safari 2018-09-13 09:19:09 +02:00
gregoirenovel
0b6debf9a6 Fix a typo 2018-09-12 18:33:54 +02:00
Paul Chavard
55a9b31b93 Cleanup SIRET champ 2018-09-12 15:53:02 +02:00
gregoirenovel
2330d4ba71 In the messagerie, reduce the space between the file input and its label 2018-09-12 15:39:21 +02:00
Paul Chavard
3f6cc668a7 Implement check_availability route 2018-09-12 12:37:15 +02:00
Paul Chavard
14bf543976 Add enable and disable element helpers 2018-09-12 11:00:01 +02:00
Pierre de La Morinerie
926dc3e107 dossier: display latest message on summary page 2018-09-12 10:09:16 +02:00
Pierre de La Morinerie
b4eb382e26 Extract a part of #commentaire_is_from_me_class 2018-09-12 10:09:16 +02:00
gregoirenovel
f9230b85b2 Change CommentaireHelper#commentaire_is_from_me_class’s signature 2018-09-12 10:09:16 +02:00
Paul Chavard
2f189826ab Add some usefull polyfills for old browsers 2018-09-11 20:37:08 +02:00
gregoirenovel
c1bec7cf0b Pass the connected_user object instead of its email 2018-09-11 18:17:40 +02:00
gregoirenovel
f8a6765367 [Fix #2540] Allow an instructeur to send a dossier to several instructeurs 2018-09-11 18:00:24 +02:00
gregoirenovel
523edac4c5 Scope the select2 config call 2018-09-11 18:00:23 +02:00
gregoirenovel
fc470e9c71 Fix some spacing issues in the footer 2018-09-11 16:30:54 +02:00
gregoirenovel
04c5667b92 For footer columns, keep the same bottom margin at any width 2018-09-11 16:30:15 +02:00
gregoirenovel
61c41fa9cb Lower the footer inner padding 2018-09-11 16:28:08 +02:00
gregoirenovel
1def444d0f Do not add an empty ul to the DOM 2018-09-11 16:02:09 +02:00
Paul Chavard
631df3197a Add uniqueness validation to procedure path 2018-09-11 10:38:31 +02:00
Paul Chavard
2770f1db82 Archive only when path changes owner 2018-09-11 10:38:31 +02:00
Paul Chavard
be51802983 Add reopen aasm event 2018-09-11 10:38:31 +02:00
Paul Chavard
5a794cbb08 Use Procedure#publish_or_reopen! 2018-09-11 10:38:31 +02:00
Paul Chavard
ec3a0dc4cf Use Procedure#publish_with_path! 2018-09-11 10:38:31 +02:00
Paul Chavard
b3f8b68b99 Add Procedure#publish_with_path! 2018-09-11 10:38:31 +02:00
Paul Chavard
e6485603c4 Add ProcedurePath#valid? 2018-09-11 10:38:31 +02:00
Paul Chavard
f2f3c54147 Procedure: update -> update! 2018-09-11 10:38:31 +02:00
Paul Chavard
7a322266fa Make aasm related methods private 2018-09-11 10:38:31 +02:00
Paul Chavard
de908ef4be Extract ProcedurePath#find_by_path 2018-09-11 10:38:31 +02:00
gregoirenovel
50019e5317 Show user satisfaction in percentages 2018-09-11 10:17:40 +02:00
gregoirenovel
26e0ada3d4 Improve the ratings stats
Make sure that for each data point, we have do not
have any partial data (e.g. a week that hasn’t
finished yet)
2018-09-11 10:17:40 +02:00
gregoirenovel
05d2988f61 Format FeedbackController like the other controllers 2018-09-11 10:10:43 +02:00
gregoirenovel
d504af3216 FeedbacksController should inherit from UserController 2018-09-11 10:10:43 +02:00
gregoirenovel
ce458764f1 from-me is only relevant when the message is in a messages-list 2018-09-08 10:12:28 +02:00
gregoirenovel
6a475981e3 The relative message width is only relevant in messages-list 2018-09-08 10:12:28 +02:00
gregoirenovel
afae82c5ba Remove a useless import in messagerie.scss 2018-09-08 10:12:28 +02:00
gregoirenovel
7482b859d5 Extract the message class into its own file 2018-09-08 10:12:28 +02:00
gregoirenovel
a4367c0809 Extract some more CSS classes from .messagerie to .messagge 2018-09-08 10:12:28 +02:00
gregoirenovel
94e5f856d3 Extract some CSS in a .message class 2018-09-08 10:12:28 +02:00
gregoirenovel
e2091fabdf Unscope .messages-list 2018-09-08 10:12:28 +02:00
Paul Chavard
b63038faca Allow administrateur to try dossier info on aperçu page 2018-09-07 19:41:34 +01:00
Paul Chavard
f3333595a0 Drop text_summary endpoint 2018-09-07 19:41:34 +01:00
Paul Chavard
212dee1565 Drop unused js 2018-09-07 19:41:33 +01:00
Paul Chavard
c49db4b5a4 Add a champs/dossier_link endpoint and use it to fetch dossier info 2018-09-07 19:41:33 +01:00
Paul Chavard
e2a2748e79 Expose authenticated_logged_user! method 2018-09-07 17:11:19 +01:00
Paul Chavard
7e94f7778a Disable csrf forgery protection in test environement 2018-09-07 17:11:19 +01:00
Paul Chavard
5dadaa1a8d Show brouillon tag on procedure names in user and instructeur lists 2018-09-07 11:21:50 +01:00
Paul Chavard
23017f4b17 Show better lien information on procedure page 2018-09-07 11:21:07 +01:00
Paul Chavard
23170f54c0 Instructeur should see published drafts 2018-09-07 11:20:16 +01:00
Pierre de La Morinerie
1da0321c26 messagerie: never display full sender email
See #2307
2018-09-07 12:02:26 +02:00
Pierre de La Morinerie
353ab812fc messagerie: fix 'Invité' label in message sender 2018-09-07 12:02:26 +02:00
Pierre de La Morinerie
211674435e messagerie: better format message dates 2018-09-07 12:02:26 +02:00
Pierre de La Morinerie
fe13871380 messagerie: add explanation for usagers 2018-09-07 12:02:26 +02:00
Pierre de La Morinerie
21dc9f8109 messagerie: improve success message 2018-09-07 12:02:26 +02:00
Pierre de La Morinerie
a6aac28b66 messagerie: move "Send" button to the right 2018-09-07 12:02:26 +02:00
Pierre de La Morinerie
6cd88db853 messagerie: make "Send" button primary 2018-09-07 12:02:26 +02:00
gregoirenovel
9c6a66ae75 Change the route for DossierController#modifier
If we submit the form, and there’s an error, the
URL would be `/dossiers/:id`, therefore
`dossier_path(dossier)`, so the Résumé tab would
be active, not the messagerie tab. This change
prevents this behaviour.
2018-09-07 11:30:00 +02:00
gregoirenovel
038cabfae3 The Demande tab should be active when we’re editing the demande 2018-09-07 11:30:00 +02:00
gregoirenovel
ee4d71a3f4 dynamic_tab_item now handles url arrays 2018-09-07 11:30:00 +02:00
gregoirenovel
59e809f029 active_tab_item → dynamic_tab_item 2018-09-07 11:06:26 +02:00
gregoirenovel
23405efd3a Mutualize some code in #update_dossier_and_compute_errors 2018-09-07 10:19:10 +02:00
gregoirenovel
6fe1f912c8 Refactor DossiersController#update
Nested ifs are heavier but easier to understand
as related conditions are visually grouped
2018-09-07 10:19:10 +02:00
gregoirenovel
230bf22b77 Redactor DossierController#update_brouillon 2018-09-07 10:19:10 +02:00
gregoirenovel
f5debfef46 DossierController#draft? → #save_draft? 2018-09-07 10:19:10 +02:00
gregoirenovel
87e59e2bfb Streamline DossierController#update_brouillon and #update 2018-09-07 10:19:10 +02:00
gregoirenovel
1341074325 Add DossierController#update 2018-09-07 10:19:10 +02:00
gregoirenovel
cd46ee06e1 Add DossierController#modifier 2018-09-07 10:19:10 +02:00
gregoirenovel
338ffb8b50 DossierController#update → #update_brouillon 2018-09-07 10:19:10 +02:00
gregoirenovel
5ac8117c69 DossierController#modifier → #brouillon 2018-09-07 10:19:10 +02:00
Paul Chavard
f1c1eb573c Do not triger validation errors on path field on description page 2018-09-06 15:48:11 +01:00
Paul Chavard
8c8e7f3ef3 Patch remote ujs handler with debounced input support 2018-09-06 15:09:02 +01:00
Paul Chavard
fb883e2ebc Fix contact_link tag rendering on a11y page 2018-09-06 14:15:58 +01:00
Pierre de La Morinerie
19908ede25 gestionnaire: fix dossier printing page
Fix the invalid template, and add tests.
2018-09-05 16:17:26 +02:00
gregoirenovel
088d1c74d3 Commentaires → Messages 2018-09-05 15:59:41 +02:00
gregoirenovel
00ecae5f93 Procédure → Démarche 2018-09-05 15:46:24 +02:00
lucien mollard
b2f2e75f43 mailer: add layout for notifications emails 2018-09-05 15:31:08 +02:00
gregoirenovel
80c35c284f Properly handle a long title in a stats card 2018-09-05 14:32:11 +02:00
gregoirenovel
21776e360b Improve a stats title to better reflect reality 2018-09-05 14:32:11 +02:00
gregoirenovel
18a7d4c794 Fix typo 2018-09-05 14:32:11 +02:00
gregoirenovel
43b406e51c Procédures → démarches 2018-09-05 14:32:11 +02:00
gregoirenovel
be3b9382e5 Rename status partial to status_badge 2018-09-05 14:10:13 +02:00
Pierre de La Morinerie
af5df2d661 dossier: add "Messagerie" tab 2018-09-05 14:02:12 +02:00
Pierre de La Morinerie
5cfb200417 dossier: cache the dossier value 2018-09-05 13:56:12 +02:00
Pierre de La Morinerie
63472f00e6 messagerie: generalize the current user email 2018-09-05 13:56:12 +02:00
Pierre de La Morinerie
4e2a5f0b9b messagerie: move templates to a shared location 2018-09-05 13:56:12 +02:00
Pierre de La Morinerie
d99e606206 dossier: rename status_progress to status_overview 2018-09-05 11:52:04 +02:00
gregoirenovel
37c0552c64 Add titles 2018-09-05 11:35:03 +02:00
gregoirenovel
6b88968889 Formulaire → demande, when not editable 2018-09-05 11:07:11 +02:00
gregoirenovel
b9a32633bb Rename a file with a more explicit filename 2018-09-05 10:09:59 +02:00
gregoirenovel
81e94ca631 Improve _status.html.haml 2018-09-05 10:09:59 +02:00
Pierre de La Morinerie
750e1e0c83 gestionnaire: move commentaire creation into a service 2018-09-04 18:52:43 +02:00
gregoirenovel
b2dc502ed5 Use an env var for Carrierwave's cache_dir 2018-09-04 16:07:59 +02:00
gregoirenovel
d05209d28f Make the stats code more robust to empty databases 2018-09-03 17:35:14 +02:00
gregoirenovel
df742421a8 Remove an env var 2018-09-03 16:13:38 +02:00
gregoirenovel
e927f56e0d Use a proper HAML comment 2018-09-03 11:41:25 +02:00
gregoirenovel
bdb961f280 Rename support-navigator-banner to outdated-browser-banner 2018-09-03 11:41:03 +02:00
gregoirenovel
1b545123fa Improve the outdated browser support banner style
- In the new design, it is now at the top of the
  page
- In the new design, it no longer covers up the UI
- In the new design, the text is now left-aligned
  which makes it easier to read
- In the new design, its height has been reduced
  which makes it less annoying
2018-09-03 11:35:08 +02:00
gregoirenovel
75ee41b7fa [Fix #2494] Improve deletion warning text 2018-08-31 15:41:51 +02:00
Paul Chavard
72dded2a5a Fix safari bug
Fix #2452
2018-08-31 11:58:33 +01:00
gregoirenovel
66af573ca4 Add a warning in the attachements part of the form 2018-08-31 00:10:16 +02:00
Frederic Merizen
559d080ca6 [#1946] Show data retention time in footer 2018-08-30 18:03:01 +02:00
Paul Chavard
5d5a356ade Cleanup contact_link helper 2018-08-30 15:12:50 +01:00
Paul Chavard
0c582197da Do not send messages to brouillon dossier 2018-08-30 15:12:50 +01:00
Paul Chavard
854bc62caa Fix class name 2018-08-30 15:12:50 +01:00
Paul Chavard
ea5248dde1 Flatten tags list, cast to array and remove blank elements 2018-08-30 15:12:50 +01:00
Paul Chavard
b60805a54c Use mailto in error message 2018-08-30 15:12:50 +01:00
Paul Chavard
441e123e8a Do not lose form content on errors 2018-08-30 15:12:50 +01:00
Paul Chavard
7ac4dc355f Add default dossier_id to contact form on dossier pages 2018-08-30 15:12:50 +01:00
gregoirenovel
6a33c30812 Rename the last “Gestionnaire” occurence in the UI to “Instructeur” 2018-08-30 14:42:09 +02:00
gregoirenovel
c015365057 Fix case typos 2018-08-30 14:23:45 +02:00
Frederic Merizen
7326065590 [fix #2486] Include all needed attributes on downloadable_sorted
to avoid N+1 select
2018-08-30 14:13:32 +02:00
Frederic Merizen
9403d4c042 [#2486] followers_gestionnaires should not be a method
To help activerecord caching
2018-08-30 14:13:32 +02:00
Frederic Merizen
37c45f0d29 [#2486] Always order champs
to help activerecord cache the champs collection
2018-08-30 14:13:32 +02:00
gregoirenovel
04c6a653da Unify the CSS filenames’ case 2018-08-30 13:16:14 +02:00
gregoirenovel
89af9c2b36 Remove extra blank lines 2018-08-30 13:16:14 +02:00
gregoirenovel
e60aa0c37b Use scopes when possible 2018-08-30 13:16:14 +02:00
gregoirenovel
47962ef795 Simplify route_authorization 2018-08-30 13:16:14 +02:00
gregoirenovel
bf9f3b40df Remove useless .to_s 2018-08-30 13:16:14 +02:00
gregoirenovel
de48dab031 Alignment 2018-08-30 13:16:14 +02:00
gregoirenovel
15d1b01a90 Code simplification 2018-08-30 13:16:14 +02:00
gregoirenovel
3662b82039 accompagnateur → instructeur 2018-08-29 23:09:08 +02:00
Paul Chavard
5f12ea43a7 Add helpscout webhook 2018-08-29 21:41:14 +01:00
gregoirenovel
4b071ecf06 Use enum to the fullest with Dossier.states 2018-08-29 17:31:08 +02:00
gregoirenovel
2d3b553e4d Use enum to the fullest with TypeDeChamp.type_champs 2018-08-29 17:31:08 +02:00
gregoirenovel
16a719922b Use enum to the fullest with User.loged_in_with_france_connects 2018-08-29 17:31:08 +02:00
gregoirenovel
606b56033a Use enum to the fullest with VirusScan.statuses 2018-08-29 17:31:08 +02:00
Paul Chavard
509613afe6 Use contact_link helper instead of mailto 2018-08-29 16:08:01 +01:00
Paul Chavard
a5bc8a0b09 Add contact_link helper 2018-08-29 16:08:01 +01:00
Paul Chavard
f5579aa14b Add type param to support form 2018-08-29 16:08:01 +01:00
gregoirenovel
0ac160c824 Remove the now useless stats API 2018-08-29 14:54:49 +02:00
gregoirenovel
85105ea156 Add some space below the title in big number cards 2018-08-29 14:54:49 +02:00
gregoirenovel
00610991b7 [Fixes #2480] Add 30-days evolution stats to the stats page 2018-08-29 14:54:49 +02:00
Paul Chavard
bad107ffae Add contact form 2018-08-29 10:44:12 +01:00
Paul Chavard
41815cfb1c Add logged_in? helper 2018-08-29 10:43:47 +01:00
Paul Chavard
6453b53a41 Add helpscout API adapter 2018-08-29 10:43:00 +01:00
gregoirenovel
6b1ab9b552 Remove a now useless facade 2018-08-28 15:38:39 +02:00
gregoirenovel
cccad7dbdf Remove a now useless method 2018-08-28 15:19:54 +02:00
gregoirenovel
19789b6848 Remove the stats part of the procedure info page for admins
- the numbers are wrong (:termine state does not
  exist)
- the chart does not work
2018-08-28 15:19:31 +02:00
Paul Chavard
b8ef5d823f Fix modal close action 2018-08-28 12:18:43 +01:00
Paul Chavard
3d506a8cdc Fix autocomplete 2018-08-28 11:04:44 +01:00
gregoirenovel
9284afc649 Use a constant for the API Entreprise URL 2018-08-28 10:44:16 +02:00
gregoirenovel
66c5f080cc Add AR validation for Feedback rating 2018-08-28 10:36:36 +02:00
gregoirenovel
9f3650b12f Remove 2 months old call for suggestions 2018-08-28 10:11:09 +02:00
gregoirenovel
4c7f9af73d Order the legend in the same order as the enum 2018-08-27 18:18:26 +02:00
gregoirenovel
b535f7ce3b Fix the colors in the satisfaction graph
I forgot to change it after I switched to an enum
in the previous PR and changed the values order
2018-08-27 18:18:07 +02:00
gregoirenovel
577496cb06 Fix a typo 2018-08-27 17:58:53 +02:00
gregoirenovel
18624ff872 Update the stats code to use ratings instead of marks 2018-08-27 17:12:01 +02:00
gregoirenovel
3ba4ce0d37 Create feedbacks with ratings instead of marks 2018-08-27 17:12:01 +02:00
gregoirenovel
4103861f90 Add the rating column to feedbacks 2018-08-27 17:03:11 +02:00
gregoirenovel
c81206f4d1 Scroll to top after having given feedback 2018-08-27 14:16:20 +02:00
gregoirenovel
62878f9c5a Encourage users that give us feedback to write to us 2018-08-27 14:16:20 +02:00
gregoirenovel
3d7b239f2b Improve the feedback form question 2018-08-27 14:16:20 +02:00
gregoirenovel
98f70cc815 Allow a user to rate the service each month 2018-08-27 14:16:20 +02:00
gregoirenovel
a700fc16cf Remove a now useless GA call 2018-08-27 14:09:43 +02:00
gregoirenovel
047d022c8a Add a CTA at the bottom of the admin landing page 2018-08-27 14:09:43 +02:00
gregoirenovel
83e081426c Redirect admins requests to the admin page after the form submission 2018-08-27 14:09:43 +02:00
gregoirenovel
100974ff9a Do not open the admin account form in a new tab 2018-08-27 14:09:43 +02:00
gregoirenovel
40da6ccf40 Use a blue button for the admin CTA 2018-08-27 14:09:43 +02:00
gregoirenovel
d240be8948 Fix the focus state of .cta-panel-button-black 2018-08-27 14:09:43 +02:00
gregoirenovel
df6d9151b8 Factorize code in a mixin
In this file we factorise with a mixing, not
several classes
2018-08-27 14:09:43 +02:00
gregoirenovel
1578c3bca6 Stop having several class that do the exact same things 2018-08-27 14:09:43 +02:00
gregoirenovel
b158a92493 Add a graph showing the user satisfaction 2018-08-27 14:00:34 +02:00
gregoirenovel
f381d45d1a Add a chart showing the dossiers state repartition 2018-08-27 14:00:34 +02:00
lucien mollard
9292e243ef Add a button to download the stats in CSV 2018-08-27 14:00:34 +02:00
gregoirenovel
23aab2d044 Use a period at the end of a sentence 2018-08-27 09:24:26 +02:00
Paul Chavard
9abb3c7a5a [ENV] Pipedrive key config 2018-08-23 15:55:32 +02:00
Paul Chavard
14f4b16fa4 [ENV] Signing key config
# Conflicts:
#	config/secrets.yml
2018-08-23 15:55:32 +02:00
Paul Chavard
c79827d551 [ENV] Configure default_url_options 2018-08-23 15:55:32 +02:00
Paul Chavard
296e3a9b09 [ENV] Add fog config 2018-08-23 15:55:32 +02:00
Mathieu Magnin
db8e750f1a [ENV] Configure Api Entreprise token 2018-08-23 15:55:32 +02:00
Mathieu Magnin
d37958d1ae [ENV] Basic auth config 2018-08-23 15:55:32 +02:00
simon lehericey
d9a9677d1d [fix #2397] Manager: update crm conf 2018-08-23 12:12:39 +02:00
simon lehericey
ee43650c32 Demande: add nb_of_procedure, deadline and nb_of_dossier fields 2018-08-23 12:12:39 +02:00
Frederic Merizen
cef0eafb1a [#2179] Tolerate spurious spaces around search terms 2018-08-23 11:57:06 +02:00
Frederic Merizen
1134877d59 [#2179] Remove newly dead code 2018-08-23 11:57:06 +02:00
Frederic Merizen
d681b1116f [Fix #2179] Use new full text search 2018-08-23 11:57:06 +02:00
Frederic Merizen
8fc359c54d [#2179] Simplify matching_dossiers_for_gestionnaire 2018-08-23 11:57:06 +02:00
Frederic Merizen
8744e9b83d [#2179] Simplify dossier_by_exact_id_for_gestionnaire 2018-08-23 11:57:06 +02:00
Frederic Merizen
20b886fb85 [#2179] Simplify dossiers_by_id 2018-08-23 11:57:06 +02:00
Frederic Merizen
a42c4ade4c [#2179] Simplify id_compatible? 2018-08-23 11:57:06 +02:00
Frederic Merizen
b3cb06b7e5 [#2179] Extract dossier_by_full_text_for_gestionnaire method 2018-08-23 11:57:06 +02:00
Frederic Merizen
d734f978a3 [#2179] Extract dossiers_by_exact_id_for_gestionnaire method 2018-08-23 11:57:06 +02:00
Frederic Merizen
a72388bb37 [#2179] Don't depend on current_gestionnaire in DossierSearchService 2018-08-23 11:57:06 +02:00
Frederic Merizen
57fd59b8d5 [#2179] Move code to DossierSearchService 2018-08-23 11:57:06 +02:00
Frederic Merizen
650a740642 [#2179] Remove dead code 2018-08-23 11:57:06 +02:00
Paul Chavard
1af4b2aa6e Fix transfer modal not opening 2018-08-23 11:22:03 +02:00
gregoirenovel
a86e3a3156 Don’t change a button’s text when disabled after click 2018-08-23 10:59:11 +02:00
Frederic Merizen
3b2919a326 [#2179] Use new updated value for search terms
Rather than old in-database value
2018-08-23 10:34:25 +02:00
Frederic Merizen
333f4e8824 [#2179] update champ and individual association with default
That way, they are safe to read in update_search_terms, and no
reload is needed later
2018-08-23 10:34:25 +02:00
Paul Chavard
e1f1827320 Replace typeahead with simpler autocomplete 2018-08-22 17:17:33 +02:00
Paul Chavard
2500cd516b Use delegation in SIRET champ code 2018-08-22 16:42:55 +02:00
Paul Chavard
e8e62b0e63 Remove unused modules from old design 2018-08-22 16:42:46 +02:00
Paul Chavard
a17fb60aea Include select2 from the file where it is used 2018-08-22 16:42:29 +02:00
Paul Chavard
1109a4500f Add csrf token protection to jQuery initiated requests 2018-08-22 14:13:10 +02:00
gregoirenovel
1fb3f516bf Add a new color variable 2018-08-22 11:23:06 +02:00
gregoirenovel
e6442436ba Remove a space before a final period 2018-08-22 11:23:06 +02:00
gregoirenovel
af56e73572 Open the browser-update.org link in a new tab 2018-08-22 11:21:00 +02:00
gregoirenovel
0b7060d48b Improve the outdated browser message 2018-08-22 11:21:00 +02:00
gregoirenovel
e0bb0ac7b6 Use the proper product name 2018-08-21 18:05:09 +02:00
Paul Chavard
f4f3a302b9 Do not rely on rails env to detect staging 2018-08-21 15:43:06 +02:00
Pierre de La Morinerie
2e762e268e views: add tab_item and active_tab_item helpers 2018-08-16 16:36:37 +02:00
Paul Chavard
7724a48cee Fix js error from calling inexistent function 2018-08-16 11:59:18 +02:00
Paul Chavard
13470e9781 Remove unused JavaScript 2018-08-14 17:03:00 +02:00
Paul Chavard
097b06e314 Fix test dossier page 2018-08-14 16:47:31 +02:00
Paul Chavard
b57c22cafe Refactor publish dialog 2018-08-14 16:39:11 +02:00
Paul Chavard
aec02a9b8a Remove references to test_procedure 2018-08-14 16:30:43 +02:00
lucien mollard
0f790c4b07 separates the homepage into two parts, users/administrations 2018-08-14 16:12:51 +02:00
Pierre de La Morinerie
af95e56b50 dossier: add a page with the form 2018-08-14 15:25:27 +02:00
Pierre de La Morinerie
86539413ee gestionnaire: move dossier partials to a shared location 2018-08-14 15:06:44 +02:00
Pierre de La Morinerie
4714fc64e7 dossier: make "show" a standalone page 2018-08-14 15:06:44 +02:00
Pierre de La Morinerie
efd29ab174 dossier: fix the width of the status explanation 2018-08-14 15:06:44 +02:00
Pierre de La Morinerie
40d0986a82 javascript: transpile activestorage files (instead of copying them) 2018-08-14 11:40:33 +02:00
Paul Chavard
7237ff80cc Drop procedure dossiers when updating brouillon 2018-08-14 11:21:05 +02:00
Paul Chavard
3be678dbe5 Add publish_draft feature flag 2018-08-13 19:27:28 +02:00
Paul Chavard
9de3e6e74b Make info extraction method more safe 2018-08-13 18:32:00 +02:00
Paul Chavard
008d84f107 Explicitly import jQuery 2018-08-13 15:17:13 +02:00
Pierre de La Morinerie
e68c8a7685 feedback: add spacing between the icons 2018-08-13 14:56:36 +02:00
Pierre de La Morinerie
6da2e54d4c feedback: move the icons under the list 2018-08-13 14:56:35 +02:00
Pierre de La Morinerie
8927af7a33 feedback: don't display feedback if user has no dossiers 2018-08-13 14:56:07 +02:00