Paul Chavard
973973ab6a
Do not enqueue web hooks for empty urls
2020-09-22 17:03:19 +02:00
Christophe Robillard
6fd0134b6d
convert to es6 classes
2020-09-22 16:09:15 +02:00
Christophe Robillard
8baaee8810
load expanded buttons only for contact form
2020-09-22 16:09:15 +02:00
Christophe Robillard
5bd4644c2c
fix js lint errors
2020-09-22 16:09:15 +02:00
Christophe Robillard
9be015752a
set input value for question type of contact page
2020-09-22 16:09:15 +02:00
Christophe Robillard
df9a15a224
expand buttons for contact page
2020-09-22 16:09:15 +02:00
Christophe Robillard
61ea73580f
use buttons instead of select for contact page
2020-09-22 16:09:15 +02:00
Paul Chavard
c9f2224991
Remove ignored_columns from type_de_champ
2020-09-22 11:28:48 +02:00
Paul Chavard
3d3d0259a0
Remove TypeDeChamp.to_stable_id
2020-09-22 11:28:48 +02:00
Paul Chavard
a3f3b8a8e0
procedure.dossiers through revisions
2020-09-22 10:55:17 +02:00
Paul Chavard
061a743759
[GraphQL] Add archiver mutation
2020-09-22 08:34:38 +00:00
Paul Chavard
a911a71db9
Log dossier archiver/desarchiver operations
2020-09-22 08:34:38 +00:00
clemkeirua
7ba8ab9e6a
maj du schema json
2020-09-22 10:14:55 +02:00
clemkeirua
412a87e532
add fix for nil values on numeroVoie and typeVoie
2020-09-22 09:43:44 +02:00
clemkeirua
1173f1e459
add default values when nil
2020-09-22 09:43:44 +02:00
Paul Chavard
512cdeb6ff
normalize features on import
2020-09-22 09:12:55 +02:00
Paul Chavard
50c0955465
Avoid an error if area can’t be computed
2020-09-22 09:12:55 +02:00
clemkeirua
111f309c7f
changement de l'adresse de création de compte administrateur
2020-09-21 17:02:37 +02:00
simon lehericey
95cd176bf2
bump administrate
2020-09-21 11:15:25 +02:00
clemkeirua
f9c4e967d6
remove :autosave_dossier_draft
2020-09-21 08:46:01 +00:00
clemkeirua
f96377d878
refactor Dossier#with_notifications
2020-09-21 08:28:42 +00:00
clemkeirua
d01a53eb72
remove :cached_notifications gate
2020-09-21 08:28:42 +00:00
kara Diaby
5c68d75107
add titre_identite champ
2020-09-18 14:57:08 +02:00
clemkeirua
1e32a3c11f
add complexity check to admin account creation
2020-09-18 11:16:34 +02:00
clemkeirua
5a8fbde0e7
remove dead code in admin model
2020-09-18 11:16:34 +02:00
clemkeirua
14e1f8d06c
more accurate naming in AdministrationMailer#invite_admin
2020-09-18 11:16:34 +02:00
clemkeirua
de3118bc7b
force password reset on admin promotion or creation
2020-09-17 16:39:13 +02:00
clemkeirua
0307beecd6
Revert "Merge pull request #5576 from tchak/soft-delete-users"
...
This reverts commit bf0d3914ce
, reversing
changes made to 503527459e
.
2020-09-17 15:39:16 +02:00
clemkeirua
08d0fa80fa
remove old route
2020-09-17 14:03:31 +02:00
Paul Chavard
a0dd3604a4
User discard_and_anonymize!
2020-09-17 11:16:56 +02:00
Paul Chavard
337b20661a
Add discared_at to users
2020-09-17 11:16:56 +02:00
clemkeirua
6643b598c3
remove :administrateur_graphql
2020-09-17 09:24:50 +02:00
clemkeirua
4a760287d4
make xray available in development only
2020-09-17 09:24:50 +02:00
clemkeirua
2c418f63a8
remove :team_on_strike
2020-09-17 09:24:50 +02:00
clemkeirua
01ac4d7e19
remove operation_log_serialize_subject
2020-09-17 09:24:50 +02:00
kara Diaby
13e4589905
Publications page to the new UI (admin)
2020-09-16 09:15:44 +02:00
Christophe Robillard
4b86586ca0
add aria-disclosure for all dropdown buttons
2020-09-15 18:12:26 +02:00
Christophe Robillard
5158b73e86
add alt info for 'Mon compte' image
2020-09-15 18:12:26 +02:00
Christophe Robillard
51c4001a1a
add aria-disclosure for Mon compte button
2020-09-15 18:12:26 +02:00
Paul Chavard
bbcdff0ccf
Use IGN plan v2 and add MNHN data sources
2020-09-15 14:39:02 +02:00
kara Diaby
f1445c3e51
Remove contactez nous from administration page and put Faq instead
2020-09-11 11:58:31 +02:00
simon lehericey
9bd4c11d52
Use render collection to speed up render
2020-09-11 09:43:04 +00:00
simon lehericey
b124579681
cache procedure_ids_with_notifications to avoid seeking the AR cache by going through the stack
2020-09-11 09:43:04 +00:00
simon lehericey
e4de522b48
only retrieve id of procedures with notifications
2020-09-11 09:43:04 +00:00
simon lehericey
d9c7051a00
Avoid superfluous count
2020-09-11 09:43:04 +00:00
simon lehericey
63ea2045a7
Improve admin query on landing
2020-09-11 09:46:54 +02:00
clemkeirua
47fd8f48cb
replace tabs with 2 spaces in attestation PDF, instead of one
2020-09-09 07:18:58 +00:00
clemkeirua
19c1043b94
replace tabs with spaces in attestation
2020-09-09 07:18:58 +00:00
clemkeirua
3697c610b6
make polynesia mobile phone number valid
2020-09-09 09:00:07 +02:00
simon lehericey
5459c2fa7f
Fix uninitialized excon constant
2020-09-08 18:36:24 +02:00
clemkeirua
c7b96d3d43
add feature-flip for instructeurs on cached notifications
2020-09-08 15:40:42 +00:00
clemkeirua
52ea5ef89a
make Dossier#with_notifications great again
...
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2020-09-08 15:40:42 +00:00
simon lehericey
19d73f13f0
variabilize banner message
2020-09-08 14:52:42 +02:00
Paul Chavard
91bc2db594
Expose revisions on GraphQL API
2020-09-08 10:54:13 +02:00
clemkeirua
61cf33e3ca
remove duplicate private champ
2020-09-04 15:40:23 +02:00
Paul Chavard
6d4425885d
Fix champ order joins sql error
2020-09-03 18:32:43 +02:00
Paul Chavard
11a1e44fbe
Remove procedure_id from type_de_champ
2020-09-03 15:23:58 +02:00
Paul Chavard
d1de1587d3
Always serialize type_de_champ stable_id as id
2020-09-03 15:23:58 +02:00
Pierre de La Morinerie
e033ec3404
js: ignore missing DOM element on ProgressBar
...
Currently ProgressBar is used to monitor upload progress of attachments.
But there's two cases where the associated DOM element may be removed:
- In the champs editor, when the list scrolls, DOM elements are removed
and added dynamically by React;
- In the user form, the user might start an upload on a repetition, and
then remove the associated row during the download.
In both those cases, we don't want the missing DOM element to trigger
an error.
2020-09-03 15:03:13 +02:00
kara Diaby
ae61c279af
migrate emails text editor to new interface
2020-09-03 14:42:22 +02:00
Pierre de La Morinerie
292dc84eb4
jobs: ignore deleted file in Virus Scan
...
We have errors in production where the job starts correctly (i.e. the
blob exists), but `blob.open` fails with a `ActiveStorage::FileNotFound`
error.
When checking later in production, the blob has been deleted.
This points to the blob (and the file) being deleted during the virus
scan job.
In that case, ignore the error (rather than retrying the job).
2020-09-03 11:00:59 +02:00
simon lehericey
49aa426d1b
application job swallow BadRequest error and retry
2020-09-02 16:59:54 +02:00
Paul Chavard
5ceae8235b
Ignore type_de_champ procedure_id
2020-09-02 11:26:26 +02:00
Paul Chavard
ec72fdd164
Remove migration service
2020-09-02 11:26:26 +02:00
Pierre de La Morinerie
d5a2fc0788
views: fix Safari stretching logos in admin procedures list
2020-09-01 18:09:32 +02:00
Pierre de La Morinerie
ae1f14a3f9
views: reduce nested flex containers in admin procedures list
...
We can achieve the same layout with fewer nested flex containers.
2020-09-01 18:09:32 +02:00
kara Diaby
1788471664
carto hack : traduce edition buttons in french
2020-09-01 17:41:20 +02:00
Judith
25a24ba7c8
removal of translation keys already present in the gem rails-i18n
2020-09-01 16:33:58 +02:00
Fabrice Gangler
1a43f888fb
Feat: allow to disable France-Connect
...
Refs: #5440
2020-09-01 15:51:10 +02:00
Fabrice Gangler
f2c4378596
fix: use APPLICATION_NAME in view/users/sessions/new
...
Refs: #5462
2020-09-01 15:18:29 +02:00
Judith
7bc5a0a278
internationalization of /contact-admin
2020-09-01 12:58:19 +00:00
Fabrice Gangler
bfb28e5a2b
Fix(mailers/_signature): use APPLICATION_NAME
...
Refs: #5456
2020-08-28 03:44:46 +02:00
Judith
af25fdd77c
gem http_accept_language installed and (de)activable with feature flag
2020-08-27 16:15:01 +02:00
Pierre de La Morinerie
0800bf68d0
views: allow unselecting all values from a multiple dropdown
...
Currently, deselecting all values from a multiple dropdown rendered as
checkboxes doesn't have any effect when submitting the form (the
previous values are still there, instead of being deselected).
This is because unchecked checkboxes are not sent by the browser – so
the "empty selection" never gets sent.
Rails `form.check_box` usually works around this by inserting an empty
hidden checkbox element, that will be sent even if all others are
de-selected. But the documentation warns that this is not possible when
iterating over an array (rather than a model). Which is our case here.
To fix this, this commit uses `collection_check_boxes` instead. It will
insert the proper hidden checkboxes in all cases, and fix our use case.
See https://api.rubyonrails.org/classes/ActionView/Helpers/FormOptionsHelper.html#method-i-collection_check_boxes
2020-08-27 11:13:40 +02:00
Judith
2f0953692c
Internationalization of the Contact page in FR and EN
2020-08-27 11:03:34 +02:00
Pierre de La Morinerie
3fdecf0924
helpers: remove element immediately when no timeout is specified
...
This fixes an issue where clicking quickly on several "Remove row"
buttons on a repetition field results in autosave errors.
This is because the N+1 autosave request is correctly sent after the
Nth response from the server, but _before_ the row element is actually
removed from the DOM. So the N+1 request actually sends the fields for
the deleted row, which makes the server raise an error.
With this fix, the row gets properly removed when the server responds,
and before the next request is started.
2020-08-25 15:45:49 +02:00
Pierre de La Morinerie
ecc4f01c20
autosave: trigger an autosave after removing a row
2020-08-25 15:45:49 +02:00
Pierre de La Morinerie
96037069ff
autosave: remove the repetition row after deletion
...
Before, when autosaving a draft, removing a repetition row would
send `_destroy` inputs to the controller – but not remove the row
from the DOM. This led to the `_destroy` inputs being sent again
on the next autosave request, which made the controller raise
(because the row fields were already deleted before).
To fix this, we let the controller response remove the deleted
row(s) from the DOM.
Doing it using a controller response avoids the need to keep track
of operations on the Javascript side: the controller can easily
know which row was just deleted, and emit the relevant changes for
the DOM. This keeps the autosave requests robust: even if a request
is skipped (e.g. because of a network interruption), the next request
will still contain the relevant informations to succeed, and not let the
form in an unstable state.
Fix #5470
2020-08-25 14:39:34 +02:00
Pierre de La Morinerie
e157a289e1
autosave: factorize some javascript code
2020-08-25 14:39:34 +02:00
Pierre de La Morinerie
3c91cfc83c
jobs: add health-related keywords to dubious procedures scanner
...
We are not certified for hosting health-related data yet.
2020-08-25 12:04:10 +00:00
Pierre de La Morinerie
4bba1f0660
views: add a "None" option to optional radio lists
...
After clicking on a radio button option, it is impossible to revert to
the "None of the values selected" state.
However on non-mandatory fields, reverting to the no-selection value
should be possible.
To fix this, add an explicit "N/A" option.
2020-08-25 11:42:30 +02:00
Pierre de La Morinerie
50f61ee37b
views: remove "Select a value" text on radio lists
...
This text:
- Isn't present on other form controls
- Should only be displayed if the field is mandatory anyway
2020-08-25 11:42:30 +02:00
Christophe Robillard
abe62398b6
very light client-side validation for phone
2020-08-20 15:33:03 +02:00
Christophe Robillard
090a247ba9
validates phone champ server side
2020-08-20 15:33:03 +02:00
Christophe Robillard
f77cc06a91
prend en compte le nom de l'enseigne pour l'établissement
2020-08-20 14:23:02 +02:00
Judith
74cff31876
autofocus on 'input: password' removed according to accessibility audit requirements. No change noticed
2020-08-19 14:35:34 +00:00
Judith
206646f765
date champs: adding a placeholder for IE and Safari (which do not support the input type date)
2020-08-19 14:10:58 +00:00
Pierre de La Morinerie
a7361fdbd3
models: require belong_to associations on mail templates
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
29e8c43e5e
models: require belong_to associations on groupe_instructeur
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
5a7bd24fba
models: require belong_to associations on type_de_champ
...
- Make `type_de_champ.procedure` a requirement;
- Move the procedure_id assignation to `before_validation` (otherwise
the record is invalid, and never gets saved);
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
6328011f60
models: require belong_to associations on champ
...
- Make `champ.dossier` a requirement;
- Move the dossier_id assignation to `before_validation` (otherwise
the record is invalid, and never gets saved);
- Allow specs to only build the champ (instead of saving it to the
database), which bypasses the requirement to have a dossier.
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
eb22dc9d8f
models: require belong_to associations on module_api_carto
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
71d9774d58
models: require belong_to associations on trusted_device_token
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
d807700c7b
models: require belong_to associations on traitement
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
059c147ffc
models: require belong_to associations on service
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
ce53e219e0
models: require belong_to associations on procedure_presentation
...
Some tests are still failing
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
802d3804f5
models: require belong_to associations on invite
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
fe8804f208
models: require belong_to associations on individual
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
afb1c33154
models: require belong_to associations on geo_area
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
aff2713032
models: require belong_to associations on follow
2020-08-18 15:57:37 +02:00
Pierre de La Morinerie
91619b16e8
models: require belong_to associations on feedback
2020-08-18 15:57:36 +02:00
Pierre de La Morinerie
79fcf5e814
models: require belong_to associations on exercice
2020-08-18 15:57:36 +02:00
Pierre de La Morinerie
51d392a1dc
models: require belong_to associations on dossier
2020-08-18 15:57:36 +02:00
Pierre de La Morinerie
01248022bf
models: require belong_to associations on deleted_dossier
2020-08-18 15:57:36 +02:00
Pierre de La Morinerie
dd1bed9340
models: require belong_to associations on commentaire
2020-08-18 15:57:36 +02:00
Pierre de La Morinerie
32e55a6d37
models: require belong_to associations on avis
2020-08-18 15:57:36 +02:00
Pierre de La Morinerie
aefdd5d2a1
models: require belong_to associations on attestation_template
2020-08-18 15:57:36 +02:00
Pierre de La Morinerie
1ea4c2aa36
models: require belong_to associations on attestation
2020-08-18 15:57:36 +02:00
Pierre de La Morinerie
c1e2928ce7
models: require belong_to associations on assign_to
2020-08-18 15:57:36 +02:00
Pierre de La Morinerie
11456109c0
models: explicitly mark optional belongs_to
relationship as so
...
This prepares making the `belongs_to` relationship required by default.
2020-08-18 15:57:36 +02:00
Pierre de La Morinerie
7d4c748432
services: make etablissement save raise on error
...
Before, if saving the etablissement failed, the error would be ignored silently.
2020-08-18 14:56:40 +02:00
Pierre de La Morinerie
c01d640997
models: return procedure revisions in deterministic order
...
Fixes a randomly-failing spec in spec/models/procedure_revision_spec.rb.
2020-08-13 17:27:37 +02:00
Judith
c27b2da90b
datetime type de champ: changed the years range from [1950;2100] to [to current year - 1;
...
current year + 50] (or [entered_date; current_year + 50] if old date already entered) because:
The type_de_champ Datetime is used for close future dates and very close past dates (for accident declaration for ex.)
The select currently has a range from 1950 to 2100, so 70+ years not supposed to be used, leading to:
- many bad data entered (0000 or 1950 to not scroll)
- making it difficult for users to give the proper date (current date is lost in the middle of 149 others) so risk to be lazy and select a random one or genuinely make a mistake
2020-08-13 13:41:45 +00:00
Christophe Robillard
f2dcb61521
transform job in task for set dossiers_last_updated_at
2020-08-12 16:10:15 +02:00
Pierre de La Morinerie
2892fdbeef
models: remove columns that have been deleted from db schema
...
These columns are gone, so we can't stop ignoring them.
2020-08-12 12:06:58 +02:00
Pierre de La Morinerie
6d28069539
models: generate annotations
2020-08-12 11:45:53 +02:00
Christophe Robillard
eea5fd66ad
corrige mise en forme commentaire
2020-08-10 17:36:23 +02:00
Christophe Robillard
0b35619322
skip verify authenticity token for helpscout
...
Co-authored-by: LeSim <mail@simon.lehericey.net>
2020-08-10 17:19:22 +02:00
kara Diaby
9b66c894b2
Adapt configuration email view to the new UI
2020-08-06 16:56:24 +02:00
Fabrice Gangler
cf7a4437e5
Fix syntax for using APPLICATION_NAME in mailers/layout
...
Refs: #5453
2020-08-06 12:45:19 +02:00
Pierre de La Morinerie
54a4db1c47
config: flip config.active_storage.queues
...
ActiveStorage jobs are now moved to their own queue.
For consistency, we also move our own analysis jobs (VirusScannerJob)
on the same `:active_storage_analysis` queue.
2020-08-05 16:48:36 +02:00
Pierre de La Morinerie
7708dbbc71
views: explicitely marks form_with
as non-remote forms
...
Starting from Rails 5.1, `form_with` behavior is to generate remote
forms by default.
However with Turbolinks disabled, the form gets sent, but nothing is set
up to handle the server response (like replacing the content of the
page).
So we have two choices: either enable a global config option that makes
`form_with` generate non-remote forms, or do it explicitely on each
form. I chose the explicit way, so that developers expecting the usual
remote behavior of `form_with` are not surprised.
2020-08-05 13:02:56 +02:00
Pierre de La Morinerie
8962db38cc
models: render attestations in a simpler way
...
The older method of instanciating an entire new rendering stack can be
made simpler using Rails >= 5.0 methods.
See https://api.rubyonrails.org/classes/ActionController/Renderer.html#method-i-render
2020-08-04 16:53:46 +02:00
clemkeirua
21221a7c49
fix missing alt
2020-08-04 13:41:10 +00:00
clemkeirua
101acafb65
fix hidden label
2020-08-04 13:41:10 +00:00
clemkeirua
cc9341a83c
fix missing header for account creation
2020-08-04 13:41:10 +00:00
kara Diaby
c983622805
fix attestation template boolean on procedure detail page (new admin interface)
2020-08-04 10:56:48 +02:00
Kara Diaby
4afc07c677
Merge pull request #5403 from tchak/add-carte-ign
...
Add carte ign
2020-08-03 11:04:32 +02:00
jpoulvel
bf94cc021b
Merge pull request #5424 from betagouv/new_design_edit_attestation
...
New design page admin/attestation_templates/edit
2020-07-31 11:18:22 +02:00
Paul Chavard
4c87e547b3
Put IGN map behind a feature flag
2020-07-30 17:22:28 +02:00
Paul Chavard
f1cbc9846e
Add carte ign
2020-07-30 16:58:20 +02:00
kara Diaby
db3e40ebf8
Fixe la non possibilité de cloner une démarche pour une procédure archivée (nouvelle interface administrateur)
2020-07-30 12:00:43 +02:00
clemkeirua
952a43058f
last_commentaire_updated_at does not take system email into account
2020-07-30 11:52:41 +02:00
Keirua
808e2fb53f
Merge pull request #5426 from betagouv/5288-optim-instructeur-dashboard
...
5288 optim instructeur dashboard
2020-07-30 10:42:48 +02:00
Keirua
b3e98048f9
Merge pull request #5418 from betagouv/mise-en-avant-france-connect
...
#5428 - France connect avant les boutons de login/signup
2020-07-30 10:32:12 +02:00
clemkeirua
153c6aebd7
add temp job to set last_updated_at_* values for dossier
...
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2020-07-30 10:31:14 +02:00
Christophe Robillard
03e3e8fb1c
rename Dossier#modifier_annotations!
...
give a more accurate name to the method
Co-authored-by: clemkeirua <clement@keiruaprod.fr>
2020-07-30 10:18:44 +02:00
clemkeirua
c772c3454c
update dossier after saving champ
...
update last_champ_updated_at without hook
update last_champ_private_updated_at without hook
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2020-07-30 10:18:44 +02:00
Christophe Robillard
b940d2e1b0
update dossier after saving avis
...
update last_avis_updated_at without hook
Co-authored-by: clemkeirua <clement@keiruaprod.fr>
2020-07-30 10:18:44 +02:00
clemkeirua
f3a675c3bc
update dossier after saving commentaire
...
update last_commentaire_updated_at without hook
Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2020-07-30 10:18:44 +02:00
jpoulvel
62e04a6ca9
Merge branch 'dev' into new_design_edit_attestation
2020-07-30 09:53:09 +02:00
krichtof
19e6cfc5ff
Merge pull request #5432 from betagouv/fix_mail_footer
...
fix footer for mail notifications
2020-07-29 17:49:46 +02:00
Kara Diaby
5894a86bd8
Merge pull request #5423 from betagouv/feat/5402
...
Feat/5402 - [Admin] new UI for procedures listing
2020-07-29 17:38:49 +02:00
Kara Diaby
db1df32976
Merge pull request #5431 from betagouv/add-procedure-copy-to-admin-interface
...
fix - Ajoute un bouton envoyer une copie à la nouvelle interface admin
2020-07-29 17:37:54 +02:00
Christophe Robillard
e3fe16462c
fix footer for mail notifications
2020-07-29 17:37:33 +02:00
kara Diaby
d73cff2ccb
Ajoute un bouton envoyer une copie à la nouvelle interface administrateurs
2020-07-29 17:07:17 +02:00
clemkeirua
c404f92107
graphql: possibility to filter dossiers by archived
2020-07-29 16:59:34 +02:00
kara Diaby
d4c6e501c6
Ajoute la liste des démarches de l'interface administrateur sur la nouvelle UI
2020-07-29 15:35:52 +02:00
Judith
69fbd7903b
use of scroll-margins-for-sticky-footer where we have sticky-footers
2020-07-29 15:28:03 +02:00
Judith
84171f4328
.scroll-margins-for-sticky-footer class created for html
2020-07-29 15:19:23 +02:00
Judith
0a5170f8cc
new-administateur/attestation_templates views
2020-07-29 13:15:07 +02:00
Judith
b8a49e9012
creation of attachment_upload_helpers and integration in the code
2020-07-29 12:26:27 +02:00
Judith
5df3838173
- tranferred controllers from admin to mew_administrateur
...
- removed admin/attestation_templates views
- changed routes accordingly
2020-07-29 12:26:27 +02:00
kara Diaby
dddecc6872
fixup! Merge pull request #5400 from betagouv/add-test-for-zip-download
2020-07-29 11:41:36 +02:00
Keirua
347dbe4c87
Merge pull request #5417 from betagouv/cleanup-incident-janvier
...
Suppression du message d'alerte suite aux problèmes d'upload
2020-07-29 11:00:12 +02:00
Keirua
42c6900139
Merge pull request #5411 from betagouv/toggle-switch-creation
...
Création d'un toggle-switch
2020-07-29 10:34:19 +02:00
clemkeirua
b8eea05163
ajout de traductions
2020-07-29 09:27:16 +02:00
clemkeirua
c07ce374a8
france connect avant les boutons de login/signup
2020-07-29 09:18:51 +02:00
Paul Chavard
a6eef6fb19
Expose draft_revision types_de_champ to editor
2020-07-28 17:04:06 +02:00
Paul Chavard
1fca481c6e
Cleanup after clone
2020-07-28 17:04:06 +02:00
Keirua
29aae2da08
Merge pull request #5404 from betagouv/fix-menu-active-link
...
instructeurs: fix demarches active link
2020-07-27 15:04:52 +02:00
clemkeirua
de1df85462
suppression du message d'alerte suite aux problèmes d'upload
2020-07-27 10:32:03 +02:00
Judith
9ae6e979d6
after Sim rediew: box-shadow homogenized with the rest of the app, rem changed into px and tabindex removed
2020-07-24 12:33:36 +02:00
LeSim
7f22cc86a9
Merge pull request #5405 from betagouv/set-app-name-as-parameter
...
Rendre le nom d'application paramètrable
2020-07-24 10:33:54 +02:00
clemkeirua
7e085c657d
specific deactivation of rubocop DS/ApplicationName rule
2020-07-23 16:20:16 +02:00
clemkeirua
52548d7646
ajout du nom d'application dans les mailers
2020-07-23 16:17:52 +02:00
clemkeirua
c1208add62
remplacement de demarches-simplifiees.fr par un paramètre dans les vues
2020-07-23 16:16:36 +02:00
Paul Chavard
bb5a90da76
fix active_revision_id -> active_revision.id
2020-07-23 15:07:25 +02:00
Judith
19fa9e3f2e
toggle-switch created and added in the patron
2020-07-23 11:22:57 +02:00
Paul Chavard
7d421d471c
Fix revision migration job
2020-07-23 09:56:34 +02:00
Paul Chavard
a08e318617
Add implicit_order_column on revisions
2020-07-22 12:25:06 +02:00
Paul Chavard
733b8bd904
Add published revision to all non brouillon procedures
2020-07-22 11:27:49 +02:00
Paul Chavard
87a1661cdc
fix prop type error
2020-07-22 11:10:14 +02:00
Paul Chavard
69ab2e44fb
Insert type_de_champ with correct initial position
2020-07-22 11:09:51 +02:00
Paul Chavard
3193784c24
Remove unused revision_id from payload
2020-07-22 11:09:06 +02:00
Paul Chavard
ad4dff819e
fix type_de_champ controller move param
2020-07-22 11:08:06 +02:00
Christophe Robillard
5950f6c93c
fix demarches active link when action of procedures_controller
2020-07-22 10:04:32 +02:00
Paul Chavard
0338080430
Remove unused procedure move type_de_champ code
2020-07-21 19:35:30 +02:00
Paul Chavard
d18a9c8162
Migrate procedures “on demand”
2020-07-21 19:35:30 +02:00
Paul Chavard
0a0912503b
Add type_de_champ mutation methods to revision
2020-07-21 19:35:30 +02:00
Paul Chavard
bc09b61684
Add migration service and task
2020-07-21 19:35:30 +02:00
Paul Chavard
9de917592b
Add revisions models and relationships
2020-07-21 19:35:30 +02:00
Pierre de La Morinerie
213e325a8a
Merge pull request #5401 from betagouv/fix/5287-champs
...
Administrateur : indique plus clairement si des champs de formulaire ont été ajouté à la démarche
2020-07-21 18:23:41 +02:00
Keirua
f583b16f92
Merge pull request #5400 from betagouv/add-test-for-zip-download
...
Ajout d'un test pour le telechargement de zips de dossier
2020-07-21 17:39:39 +02:00
Keirua
b2aa90b729
Merge pull request #5392 from betagouv/fix-CI-accessibility-errors
...
Fix CI accessibility errors
2020-07-21 17:15:45 +02:00
kara Diaby
3ed7d6605d
add counter to admin new interface for procedure detail, on the champ card
2020-07-21 17:01:03 +02:00
clemkeirua
d31b4b6848
ajout d'un test sur le telechargement de zips
2020-07-21 15:45:57 +02:00
krichtof
8c5308b9dc
Merge pull request #5396 from betagouv/5395-relancer-expert
...
5395 instructeur : relance un expert pour une demande d'avis
2020-07-21 15:02:53 +02:00
Christophe Robillard
7f90bdeec4
only instructeurs of the avis dossier or claimant can revive expert
2020-07-21 13:14:07 +02:00
Christophe Robillard
689a51588f
translations for avis list view
2020-07-21 10:46:55 +02:00
Paul Chavard
86f562e7ea
Expose repetitions and options on champ_descriptors
2020-07-21 10:37:33 +02:00
Christophe Robillard
d9cb5c067f
relance un expert
2020-07-20 16:26:16 +02:00
Christophe Robillard
bde8fe2c5d
update wording for revoke
2020-07-20 16:08:35 +02:00
kara Diaby
06b90077d3
some fixes to new admin interface
2020-07-20 15:45:18 +02:00
Keirua
fd8507b531
Merge pull request #5393 from betagouv/zip-with-identical-files
...
Zip with identical files
2020-07-20 15:35:35 +02:00
clemkeirua
48b96046f1
pad file name with creation date
...
During zip creation, when 2 files have an identical name it creates a corrupted zip file
Duplicate files can now be downloaded with all the versions, the file names contain a timestamp
2020-07-20 15:33:22 +02:00
clemkeirua
c0cf8b1341
fix display of labels for datetime on screenreaders
2020-07-20 11:37:01 +02:00
clemkeirua
bc34905742
fix heading order by removing useless h4
2020-07-20 11:36:55 +02:00
Christophe Robillard
4476f00be2
fix active link menu for demarches
2020-07-20 11:26:19 +02:00
clemkeirua
def81f9de8
fix zip download for everybody
2020-07-20 11:14:34 +02:00
krichtof
0c95e41c6f
Merge pull request #5386 from betagouv/5138-revoque-avis-expert
...
[Revoque une demande d'avis à un expert](https://github.com/betagouv/demarches-simplifiees.fr/pull/5386 )
2020-07-17 20:42:13 +02:00
Paul Chavard
6dbe2fe165
fix patron drop down list
2020-07-17 12:11:46 +02:00
kara Diaby
5e43559329
fix new admin interface regarding test links and previsualisation
2020-07-17 11:10:54 +02:00
Christophe Robillard
52e8f32e19
expert can only revoke avis claimed by him/her
2020-07-16 21:07:20 +02:00
Christophe Robillard
3ea34834a7
revoke expert avis
2020-07-16 21:05:11 +02:00
clemkeirua
889cdd6874
ajout des annotations privées
2020-07-16 18:13:51 +02:00
Paul Chavard
b628169053
Remove unsused drop_down_list model
2020-07-16 15:29:01 +02:00
kara Diaby
b69bc11ae4
new design for procedure detail (admin)
2020-07-16 10:40:58 +02:00
kara Diaby
9dc542af09
Revert "Revert "Feat/5287 - New design for admin procedure detail""
...
This reverts commit cf5eb3f251
.
2020-07-15 17:00:03 +02:00
krichtof
0c924be222
Merge pull request #5374 from betagouv/3451-revoquer-invite
...
usager: revoque un invité sur un dossier
2020-07-15 15:46:16 +02:00
clemkeirua
7b9a954473
include procedure in usual_traitement_time
2020-07-15 09:27:23 +00:00
clemkeirua
96e82c75d6
use more idiomatic update
2020-07-15 09:00:12 +00:00
clemkeirua
299c86141c
added before_save to PieceJustificativeChamp in order to set skip_pj_validation
2020-07-15 09:00:12 +00:00
clemkeirua
bdbe57debd
add skip_pj_validation accessor to TypeDeChamp
2020-07-15 09:00:12 +00:00
Christophe Robillard
8111babdd6
user: revoque un invité sur un dossier
2020-07-14 18:25:31 +02:00
Pierre de La Morinerie
e34f82a6fb
mailers: ignore more SMTP errors
...
Although we already ignore "invalid recipient" errors, a new type
of error recently popped: the mail service responds with
> Net::SMTPServerBusy '400 unexpected recipients: want atleast 1, got 0'
We want to also ignore this kind of errors.
2020-07-13 16:17:55 +02:00
Pierre de La Morinerie
7a67f1a802
jobs: ignore missing blob during virus scan
...
We currently have many failed VirusScannerJob enqueued, because the
underlying blob is missing.
This PR fixes the issue by discarding the job in those cases (because if
the blob is gone, the job is never going to succeed).
The implementation is based on a similar issue encoutered by the
ActiveStorage::AnalyzeJob. See 06f8baf73c
2020-07-13 14:35:41 +02:00
Kara Diaby
cf5eb3f251
Revert "Feat/5287 - New design for admin procedure detail"
2020-07-13 11:36:42 +02:00
Paul Chavard
cc7e6853e7
Disable usual_traitement_time
2020-07-12 12:32:28 +02:00
kara Diaby
7f3b38cfee
Merge admin dashboard to new design for procedure details
2020-07-09 12:18:22 +02:00
Paul Chavard
ef259c361d
Fix exception when purge_later is called before save
2020-07-08 19:25:05 +02:00
Paul Chavard
a74e52c828
Call remove_drop_down_list on before_save
2020-07-08 19:25:05 +02:00
Paul Chavard
3c9cc6c070
Remove repetition types_de_champ on type_champ change
2020-07-08 19:25:05 +02:00
Christophe Robillard
2c56511204
validate api_entreprise_token
2020-07-08 18:59:22 +02:00
Christophe Robillard
f38e16e371
avoid n+1 queries
2020-07-08 18:15:15 +02:00
Christophe Robillard
dfc97d8d87
allège l'affichage des décisions rendues
2020-07-08 18:15:15 +02:00
Christophe Robillard
f0e0554da9
display instructeur_email who took decision only if email is present
2020-07-08 18:15:15 +02:00
Christophe Robillard
1253bb5994
store instructeur_email in traitement
2020-07-08 18:15:15 +02:00
Christophe Robillard
9b6c5fd7fd
update termine_close_to_expiration with traitement
2020-07-08 18:15:15 +02:00
Christophe Robillard
8f9d6d2871
show which instructeur took decision and when
...
and also replace "sans suite" by "classé sans suite"
2020-07-08 18:15:15 +02:00
Christophe Robillard
cea170e4a6
update stats with traitement model
2020-07-08 18:15:15 +02:00
Christophe Robillard
0be4b50ade
update usual_traitement_time with traitement model
2020-07-08 18:15:15 +02:00
Christophe Robillard
a072d35211
use traitement model
...
when a dossier is terminated (accepte, refuse or classe_sans_suite),
we store now `processed_at` and `motivation` in a traitement instance
2020-07-08 18:15:15 +02:00
Christophe Robillard
f631acd118
update state date in aasm after callbacks
...
call aasm event methods, not state methods directly
2020-07-08 18:15:15 +02:00
Christophe Robillard
d20d91bc07
no sentry reporting for api-entreprise
2020-07-08 17:58:33 +02:00
clemkeirua
b440f41cd8
change link from to contact to FAQ on home
2020-07-08 16:22:55 +02:00
Pierre de La Morinerie
cd65dc14dd
models: fix ProcedurePresentation#sorted_ids
...
The `Dossier#with_notifications` scope needs to be composed with an
`instructeurs` scope. But it seems Rails 6 will only generate proper
SQL if the `instructeurs` scope is merged before filtering on
`with_notifications`.
2020-07-07 18:03:56 +02:00
Pierre de La Morinerie
4aeb8c392f
bill_signature: fix reading unsaved attachments
...
Since Rails 6, an unsaved attachment_changes can contain either
a Tempfile, or an hash with an :io key.
squash! bill_signature: fix reading unsaved attachments
2020-07-07 18:03:56 +02:00
Pierre de La Morinerie
a4ed845e43
models: fix attestation template rendering on Rails 6
2020-07-07 18:03:56 +02:00
Pierre de La Morinerie
b8706757e3
controllers: disable explicit purge of invalid file
2020-07-07 18:03:56 +02:00
Pierre de La Morinerie
35240e2219
lint: fix Rubocop warnings
...
The Rails/UniqueValidationWithoutIndex rule is disabled for now, but
we'll need to re-enable it (and fix the underlying issues) after the
migration to Rails 6.
2020-07-07 18:03:56 +02:00
Paul Chavard
04feada77e
Use respond_to
2020-07-07 18:03:56 +02:00
Paul Chavard
c9ab80c880
WIP
2020-07-07 18:03:56 +02:00
Paul Chavard
6a24c3f812
Rails app:update
2020-07-07 18:03:56 +02:00
Judith
927a3b3efd
fix all instructeur procedure_path into instructeur_procedure_path
2020-07-07 17:11:46 +02:00
Judith
060022df78
fix instructeur_mail_notifications
2020-07-07 17:11:46 +02:00
Judith
2adb854bf8
new_from_existing : added new route for 'Consulter'
2020-07-07 14:51:08 +00:00
Judith
9793128f61
'Services' routes moved under 'new_administrateur' scope and '/admn' added in their url
2020-07-07 14:08:01 +00:00
Judith
782706537d
Changed the routes to pass all new design admin pages under
...
'new_administrateur' scope, except 'services'.
As a result, the url of these pages will all include '/admin'.
2020-07-07 14:08:01 +00:00
Pierre de La Morinerie
f5f7a47de3
stylesheet: make the selected tab more visible
...
Tabs are notoriously hard to notice. Make them stand out more.
2020-07-07 11:02:15 +02:00
Pierre de La Morinerie
c3b648f975
stylesheets: hide summary details marker on procedure summary
...
Chrome needs a specific syntax, but other browsers use the standard way.
See developer.mozilla.org/fr/docs/Web/HTML/Element/details#Personnaliser_le_marqueur_de_r%C3%A9v%C3%A9lation
2020-07-07 10:20:01 +02:00
Pierre de La Morinerie
b6fbf9bd4b
gems: update scss_lint
...
Fix false-positive on pseudo-elements.
2020-07-07 10:20:01 +02:00
clemkeirua
90efbe66a9
define SHOW_PAGE_ATTRIBUTES for bill dashboard
2020-07-07 08:06:37 +00:00
clemkeirua
d5c955080b
fix demandes adapter when no demandes
2020-07-07 09:24:23 +02:00
Pierre de La Morinerie
5f1d38a555
stylesheets: improve procedure synthese badges
...
- Align with baseline
- More padding
- More margin
- Use constants for colors and margins
2020-07-06 15:11:45 +02:00
Pierre de La Morinerie
975d1648d5
dossier: fix PDF rendering of effectif_mensuel
...
The effectif_mensuel was a number, it needs to be converted explicitely
into a string.
As a bonus, `nil.to_s` is `""`, so we can remove the special case for
nil.
2020-07-06 11:41:25 +02:00
Pierre de La Morinerie
a810daeb0c
stylesheets: fix with of large select elements
...
Select elements with very long options would overflow the form
width, and create a disgraceful scroller bar on the bottom of the
screen.
2020-07-06 10:55:34 +02:00
clemkeirua
ca74ae5a5e
ajout d'une bannière de dépréciation pour IE11
2020-07-06 10:01:02 +02:00
maatinito
1c29e903da
pdf dossier: better layout for etablissement fields
2020-07-02 13:53:36 +02:00
Myriam
0f542527fb
Instructeur : add overview table with counts for files
...
- changement du design
- tableau visible seulement si plus d'une procédure
2020-07-02 09:02:49 +00:00
Myriam
a486fe9a2e
Instructeur : add overview table with counts for files
...
nombre total de dossier :
- 'à suivre'
- 'suivi'
- 'traité'
- 'dossier'
- 'archivé'
2020-07-02 09:02:49 +00:00
Pierre de La Morinerie
b8f6545963
Revert "pdf dossier: better layout for etablissement fields"
2020-07-01 15:59:05 +02:00
bors[bot]
b135b5cfb0
Merge #5316
...
5316: fix missing aria-labels in footer r=Keirua a=Keirua
début du cleanup des exclusions d'accessibilité
(et bon candidat pour tester si bors fonctionne comme prévu)
Co-authored-by: clemkeirua <clement@keiruaprod.fr>
2020-07-01 09:28:02 +00:00
bors[bot]
dbba5644e3
Merge #5319
...
5319: pdf dossier: better layout for etablissement fields r=Keirua a=maatinito
Dans l'export du dossier PDF, comme je le mettais au couleurs de Polynésie, je me suis rendu compte que c'était moche, principalement parce que la fonction format_in_2_column ne savait pas calculer la hauteur qu'elle prend.
Donc voilà une petite PR pour améliorer l'affichage de la personne morale, qui s'adapte en fonction de la longueur des textes à afficher, à tester sur une démarche 'Personne Morale'.
J'aurais bien voulu vous montrer une image du résultat pour accélérer la revue mais je n'ai pas accès à l'API entreprise pour faire une démo sur la branche dev.
Co-authored-by: maatinito <15379878+maatinito@users.noreply.github.com>
2020-07-01 08:48:44 +00:00
Christophe Robillard
cce1435faf
remove precision for currency
2020-07-01 09:28:18 +02:00
maatinito
bc8d88af73
pdf dossier: better layout for etablissement fields
2020-06-30 15:09:38 -10:00
Christophe Robillard
1d86f863d3
rename avis#all to avis#index
2020-06-30 09:17:27 +02:00
Christophe Robillard
bbec76d33b
rename avis#index to avis#procedure
2020-06-30 09:17:27 +02:00
Christophe Robillard
8f2b09ae06
fix active_links in header
2020-06-30 09:17:27 +02:00
Christophe Robillard
63dd71aed4
display all avis for an expert
2020-06-30 09:17:27 +02:00
Christophe Robillard
29e2d3d7eb
display all avis for a procedure for an expert
2020-06-30 09:17:27 +02:00
Christophe Robillard
c565c9c87b
refactor sign_up_instructeur_avis_url
2020-06-30 09:17:27 +02:00
Christophe Robillard
4839506374
refactor instructeur_avis_url
2020-06-30 09:17:27 +02:00
Christophe Robillard
b0cfb2c02a
refactor messagerie_instructeur_avis_url
2020-06-30 09:17:27 +02:00
Christophe Robillard
83fba55b29
refactor instruction_instructeur_avis_url
2020-06-30 09:17:27 +02:00
Christophe Robillard
72d27ffdb2
replace instructeur_avis_index url by instructeur_all_avis url
2020-06-30 09:17:27 +02:00
clemkeirua
1072bacb12
fix missing aria-labels in footer
2020-06-29 15:31:14 +02:00
kara Diaby
6b07cc0659
Move admin/assigns to the new UI like groupe_instructeurs
2020-06-29 14:44:28 +02:00
Pierre de La Morinerie
d25e173f11
attachment: disable Delete button during request
...
Prevent users from clicking the Delete button more than once.
2020-06-29 12:28:53 +00:00
Judith
bbcd432eaa
class 'sr-only' transfered to accessibilite.scss
2020-06-29 11:57:48 +00:00
Judith
73ee4d69ca
usager/dossiers: the link to the dossier is present:
...
- in the 'N° de dossier' column for mouse users and screen reader users.
- in the 'Démarche' column for mouse users, screen reader users and keyboard users.
Also added a sr-only class for text which should be read by screen-readers but not visible or accessible to other users
2020-06-29 11:57:48 +00:00
clemkeirua
3a9204af56
rename 'Menu déroulant' in graphql
2020-06-29 08:59:12 +00:00
Pierre de La Morinerie
5949266e89
javascript: silence Crisp warning in Javascript console
2020-06-26 15:57:14 +02:00
Paul Chavard
210389d0f8
Remove admin creation notification email
2020-06-25 16:29:06 +02:00
Paul Chavard
97f91513c8
Store drop_down_list values as jsonb
2020-06-25 13:14:17 +02:00
Pierre de La Morinerie
acc1cb1abd
dossier: export PJs from private champs
...
Fix #5297
2020-06-24 15:42:30 +02:00
Pierre de La Morinerie
6f14e7783f
dossier: refactor piece_justificative service
2020-06-24 15:42:30 +02:00
Pierre de La Morinerie
84149218db
dossier: refactor piece_justificative export helpers
2020-06-24 15:42:30 +02:00
Pierre de La Morinerie
df13bce0e0
policies: clarify the role of ChampPolicy
2020-06-24 15:42:30 +02:00
Pierre de La Morinerie
812aef978d
controllers: rename pundit_user
to current_account
...
It makes epxlicity what is the name of the structure returned by
`pundit_user`: not an actual User, but an `account` structure.
2020-06-24 15:42:30 +02:00
Judith
235a406295
Spectral removed and replaced by Marianne-thin
2020-06-24 13:11:04 +00:00
Judith
b7fe9418fd
adapting font size to fit previous size with LiberationSerif
2020-06-24 13:11:04 +00:00
Judith
c3a6f671c8
replaced LiberationSerif regular and bold by Marianne, italic by Spectral-Italic
2020-06-24 13:11:04 +00:00
clemkeirua
6b3631dbfe
extract rendering condition
2020-06-24 14:11:58 +02:00
clemkeirua
5c39f22417
seuil d'affichages des checbox/radio à 5 elements
2020-06-24 12:18:56 +02:00
clemkeirua
342129c893
display small multiple selects as checkboxes
2020-06-24 12:18:56 +02:00
clemkeirua
22fc4c4195
display small selects as radio buttons
2020-06-24 12:18:56 +02:00
Christophe Robillard
954d41ce4e
fetch effectifs mensuels for may month
2020-06-24 10:23:00 +02:00
clemkeirua
53ecd48be2
set email autocomplete during registration
...
username is an invalid autocomplete attribute for input type=email, but email is not
2020-06-23 14:58:56 +00:00
clemkeirua
cca84a62ca
meilleurs descriptions aria au signup
2020-06-23 14:58:56 +00:00
clemkeirua
58b110b88a
invalid image width '-_-
2020-06-23 14:58:56 +00:00
Paul Chavard
34df07bc96
Fix oui/non filter on type_de_champ_private
2020-06-23 11:33:46 +02:00
Pierre de La Morinerie
af5b36ea6a
helpers: prevent some texts to be incorrectly detected as links
...
Users were having issues with texts like:
> Pour info: penser à faire cette action.
where `info:` was detected as being an URI.
2020-06-22 14:42:41 +02:00
simon lehericey
fecad19b91
add maintenance mode
2020-06-22 11:17:22 +02:00
jpoulvel
841758fdcf
Merge branch 'dev' into 5162-fix-help-button
2020-06-18 17:12:58 +02:00
kara Diaby
3dacff19d5
[CARTO] fix the GPX and KML imports in order to manage multiples draw types in the same file
2020-06-18 16:28:46 +02:00
Judith
af60b1dddc
help_dropdown_procedure contains now a <button> and not a <div>, which makes it accessible for keyboard navigation
2020-06-18 11:17:39 +02:00
Judith
65d6f12958
added new green for higher contrasts. Previous green remains accessible as old-green
2020-06-16 14:58:28 +00:00
Judith
75b1642c0d
changed grey by dark-grey for texts
2020-06-16 14:58:28 +00:00
Judith
76160b48bd
_colors.scss: added dark-grey for more contrasted texts
2020-06-16 14:58:28 +00:00
Judith
19e54a73b0
replacing ' with ’ in text
2020-06-16 14:39:27 +00:00
Judith
1b7a4574e8
headers : aria-label in print button
2020-06-16 14:39:27 +00:00
Judith
b02f1e4c34
fixed empty links in contact footer
2020-06-16 14:39:27 +00:00
Judith
ef242649c6
homogenization of the mandatory-explanation
2020-06-16 14:39:27 +00:00
Judith
b88dc6ec72
mandatory_explanation added in the description and changed PJ label_tag to :piece_jointe
2020-06-16 14:39:27 +00:00
Paul Chavard
e89f0846bb
Fix job max attempts
2020-06-16 15:57:18 +02:00
jpoulvel
adaf0753b0
Merge branch 'dev' into instruct-filter-yes-no
2020-06-16 14:53:22 +02:00
Christophe Robillard
f8b170836c
report to sentry for BadFormatRequest and ResourceNotFound exceptions
2020-06-11 23:09:50 +02:00
Christophe Robillard
b90513f456
no sentry report when error 400 for exercices
2020-06-11 18:16:19 +02:00
Christophe Robillard
f9b1b8217a
more verbose exception when RequestFailed for apientreprise occurs
2020-06-11 17:24:45 +02:00
Paul Chavard
c4896b45ad
Prepare to remove dossier procedure_id
2020-06-11 16:13:44 +02:00
Christophe Robillard
8b802ae2c8
add destroy dependent option for exports
2020-06-11 12:33:29 +02:00
Christophe Robillard
56ed8dd36a
remove useless dependent option
2020-06-11 10:24:04 +02:00
Christophe Robillard
8df9ae3a8d
ask only effectifs for april
2020-06-10 17:41:13 +02:00
Paul Chavard
0c16a9b1a6
Remove quartiers_prioritaires and parcelles_agricoles from the geo areas list
2020-06-10 17:26:09 +02:00
Paul Chavard
711a80746d
Display geo areas descriptions
2020-06-10 17:26:09 +02:00
Judith
0e75910d58
ajout de human_to_filter
2020-06-10 15:53:09 +02:00
Judith
ad53dfa84d
Instructeurs: Changed the filters from 'true/false' to 'oui/non' for yes_no type_de_champ
2020-06-10 15:50:41 +02:00
Paul Chavard
d9f7d10425
Refactor Map Reader|Editor to handle events from geo areas list
2020-06-09 18:45:45 +02:00
Paul Chavard
95d61c85e1
Dispatch events from geo areas list view
2020-06-09 18:45:45 +02:00
Paul Chavard
83baa58aa6
Add editing flag to geo areas list
2020-06-09 18:45:45 +02:00
Paul Chavard
d099314e56
Add decription to geo_area
2020-06-09 18:45:45 +02:00
Christophe Robillard
95cca8e0d5
affiche les chiffres clés des 3 derniers bilans
2020-06-09 17:51:54 +02:00
Christophe Robillard
2fd88e3a17
affiche uniquement l'année pour les bilans
2020-06-09 17:06:08 +02:00
Christophe Robillard
75b24fbad5
suffixe les libellés par ':'
2020-06-09 17:01:03 +02:00
Christophe Robillard
81fa1d0e89
utilise un ordre plus logique pour identite entreprise
...
homogenise l'affichage des valeurs monétaires
elargit la colonne libellé
2020-06-09 16:59:57 +02:00
Paul Chavard
901b6e23a8
Remove legacy carto
2020-06-04 16:03:23 +02:00
Christophe Robillard
23cc618dda
export bilans for avis
2020-06-04 15:31:16 +02:00
Christophe Robillard
cf9d6ccf34
export bilans in ods and xlsx
2020-06-04 15:31:16 +02:00
clemkeirua
f101658d1a
add a h1 title to the page
2020-06-04 13:16:44 +00:00
clemkeirua
571875e0f3
replace invalid h3
2020-06-04 13:16:44 +00:00
clemkeirua
e6efddd886
remove redundant links
2020-06-04 13:02:35 +00:00
clemkeirua
abe0e321ac
include the libelle with the redirection link
2020-06-04 13:02:35 +00:00
clemkeirua
32dd76dd77
clarification des éléments de création de compte
2020-06-04 12:34:19 +00:00
Christophe Robillard
75a268aed6
show some info from bilans
2020-06-04 12:33:33 +02:00
Christophe Robillard
6535324ae9
ask effectifs only for 2020/02
2020-06-04 09:18:01 +02:00
Christophe Robillard
d06867822b
reorder bilans bdf csv
2020-06-03 15:45:11 +02:00
Christophe Robillard
705487dab6
define max_attempts for jobs
2020-06-02 20:21:11 +02:00
kara Diaby
f104567619
Add 2 cards style for MapEditor + optim import gpx kml
2020-06-02 13:24:29 +02:00
Pierre de La Morinerie
ab54b8a45e
views: modernisation.gouv.fr -> numerique.gouv.fr
...
Fix #4161
2020-06-02 11:40:59 +02:00
kara Diaby
1e3a042a69
Add styles without cadastres in mapReader + tutorials pages in MapEditor
2020-05-28 17:50:14 +02:00
Judith
d930124839
change procedure_auto_archive helper name and added a helper for 23 h 59
2020-05-28 13:22:02 +00:00
Judith
6b65ee8d15
mailers: display auto-archive date in notifications
2020-05-28 13:22:02 +00:00
Judith
38eb60f2ac
views: display auto-archive date on procedure description
2020-05-28 13:22:02 +00:00
Judith
59346ee868
mailers: mention the auto_archive in notify_new_draft
2020-05-28 13:22:02 +00:00
Judith
e73086ee4c
views: added the precision of the time zone for auto_archive
...
fix #5181
2020-05-28 13:22:02 +00:00
Paul Chavard
20705d6e30
Do not send draft norifications to users on inactive démarches
2020-05-27 16:36:46 +02:00
Christophe Robillard
fb87a09c02
doesn't update dossier etablissement for siret controller
2020-05-26 18:13:20 +02:00
clemkeirua
87f1e63e1b
ajout de precisions pour les emails non reçus
2020-05-26 15:46:51 +02:00
Keirua
0727f99ac8
reformulation d'un libelle de l'editeur de services
...
Co-authored-by: Pierre de La Morinerie <pierre.de_la_morinerie@beta.gouv.fr>
2020-05-26 15:28:27 +02:00
clemkeirua
21ad7055a2
precisions sur le caractère obligatoire des infos de service
2020-05-25 15:47:02 +02:00
Christophe Robillard
1b509c15f8
raise exception with url
2020-05-20 15:53:08 +02:00
kara Diaby
d8ae089e93
[Carto] Improve files import UX + import KML files
2020-05-20 14:17:27 +02:00
Christophe Robillard
8c66b2cab1
rescue ResourceNotFound and BadFormatRequest errors
...
we don't have to retry this kind of errors, but just to send it to
sentry
2020-05-20 11:09:54 +02:00
Christophe Robillard
d92a0ba8f3
raise BadFormatRequest error
...
L'intention est de distinguer ce type d'erreur avec les erreurs serveur
5xx.
Lorsque l'api est appelé par un Job, les erreurs serveur seront retry, car éphémères.
Alors que les erreurs de type BadFormatRequest ou ResourceNotFound n'ont
pas être retried.
2020-05-20 11:09:54 +02:00
Christophe Robillard
f40123fee1
display only etablissement infos
...
all the other infos are not yet available because the jobs which
retrieve it are performed later
2020-05-20 11:09:54 +02:00
Christophe Robillard
3b46594e60
precise http error code for api calls
2020-05-20 11:09:54 +02:00
Christophe Robillard
637bde7326
update siret_controller when finding etablissement
...
now, `ApiEntrepriseService` does'nt return a hash anymore but an
etablissement which is already persisted.
2020-05-20 11:09:54 +02:00
Christophe Robillard
eebfb5ee5b
update dossiers_controller when updating siret
...
now, `ApiEntrepriseService` does'nt return a hash anymore but an
etablissement which is already persisted.
2020-05-20 11:09:54 +02:00
Christophe Robillard
ba5fa9aa4b
update ApiEntrepriseService
...
There is now the `create_etablissement` method which
create etablissement with EtablissementAdapter
and enqueue api_entreprise jobs to retrieve
all informations we can get based on SIRET
2020-05-20 11:09:54 +02:00
Christophe Robillard
f4ebb5d107
create api_entreprise jobs
2020-05-20 11:09:54 +02:00
Christophe Robillard
e3ee423197
call api_entreprise adapters with siret
2020-05-20 11:09:54 +02:00
kara Diaby
c37b32ac94
fix the search input addresses return box bug [Carto]
2020-05-19 15:34:48 +02:00
Pierre de La Morinerie
c9820adbc4
urls: fix link to autosave FAQ article
2020-05-18 16:53:19 +02:00
Pierre de La Morinerie
9f1407b6d7
expiration: fix the mailer arguments
...
The mailers expect serializable arguments, but were given
ActiveRecord::Relation objects instead. This made the mailers throw an
exception.
But how was that possible ? This code is tested, and the tests were
green.
Well, the specs spy on the mailer implementation, in order to check that
the mailers methods were properly called. Fair enough.
But if the specs mock the mailer code (instead of calling the original
implementation), we may not notice that the original implementation
rejects our method parameters.
Here this is the case: once we actually call the original implementation
the tests start to fail, because some arguments are not converted from
an ActiveRecord::Relation to a serializable array.
This is fixed by ensuring that the mailer code is executed (and doesn't
throw an exception).
2020-05-18 16:24:08 +02:00
Christophe Robillard
d4bb5d1f56
indique à l'usager les pièces ajoutées au dossier
...
- attestation sociale
- attestation fiscale
- bilans bdf
2020-05-18 16:01:13 +02:00
Pierre de La Morinerie
b63fa0e6b8
dossier: remove "Birthdate" column from export
2020-05-18 13:14:28 +00:00
clemkeirua
77101208a4
Anonymisation de l'instructeur dans la messagerie
2020-05-18 12:56:30 +00:00
clemkeirua
8542fd9f47
unique emails + remove n+1
2020-05-18 12:46:42 +00:00
clemkeirua
22a518c921
ajout d'un bouton d'export des mails des demandeurs
2020-05-18 12:46:42 +00:00
clemkeirua
9454017dd9
afficher le nom du service en alt si possible
2020-05-18 14:17:21 +02:00
Pierre de La Morinerie
833d7a3b59
javascript: ignore most common upload errors also in standard uploads
...
In #5149 , we ignored most common upload errors, but only for
auto-uploads.
This PR ignores those errors also for standard uploads.
2020-05-18 11:50:29 +02:00
kara Diaby
db5fd9bd0f
fix bug on mandatory carto champ for the new map editor
2020-05-15 13:44:50 +02:00
Pierre de La Morinerie
93bb5283ff
app: remove the feature flag for pieces justificatives auto-upload
...
The feature works as intended: we can remove the feature flag.
2020-05-14 17:39:07 +02:00
clemkeirua
a49581cbe9
replaced marianne logo for homepage
2020-05-14 14:08:05 +00:00
clemkeirua
46940ec2a7
compression du nouveau logo via svgo
2020-05-14 14:08:05 +00:00
clemkeirua
1702903ffd
ajout d'une alternative sur la marianne en header
2020-05-14 14:08:05 +00:00
clemkeirua
c5d2b4abd8
new logo in footer on home
2020-05-14 14:08:05 +00:00
clemkeirua
3c751ac696
small logo for procedures
2020-05-14 14:08:05 +00:00
clemkeirua
f6ef7944c1
add new logo
2020-05-14 14:08:05 +00:00
Paul Chavard
d44df9cc2a
Fix map apercu
2020-05-14 14:28:54 +02:00
Pierre de La Morinerie
bbc0aa5465
javascript: remove debug code for FileReader errors
2020-05-14 13:29:54 +02:00
Pierre de La Morinerie
86357b65f0
javascript: ignore most common upload errors
2020-05-14 13:29:54 +02:00
Pierre de La Morinerie
4b288038d3
javascript: human-readable message for reading errors during upload
2020-05-14 13:29:54 +02:00
Paul Chavard
03075afa5b
Update javascript dependencies
2020-05-14 13:21:42 +02:00
clemkeirua
236fd0291b
bump zip sizes from 50 to 100 mb
2020-05-14 10:37:01 +00:00
Pierre de La Morinerie
190548844a
dossiers: add piece justificative filename to spreadsheet export
2020-05-14 10:18:10 +00:00
clemkeirua
84888be255
clarification de l'archivage/suppression
2020-05-13 16:45:27 +02:00
Paul Chavard
f0148184ca
Remove legacy carto code
2020-05-13 12:17:04 +02:00
Pierre de La Morinerie
51cb3a04a3
app: fix JS redirection with Turbolinks disabled
...
When Turbolinks is enabled, a `redirect_to` in a `format: :js` request
will emit code that instructs Turbolinks to navigate to the page.
Turbolinks will then load the redirection target as HTML, and display
it.
But with Turbolinks disabled, the same `redirect_to` will instead
respond with a standard `302: redirect`. `Rails.ajax` will interpret
this redirect as "Please perform the same call again to the redirected
URL, in the same format" – and request our redirection target, but
using `format: :js`.
This breaks the "Publish procedure" button. In that case, we really want
the page to be navigated to. Add an explicit JS redirect, so that the
redirection occurs in HTML.
2020-05-13 11:04:16 +02:00
Pierre de La Morinerie
b5f1d97629
app: disable Turbolinks
...
Fix #5039
2020-05-13 11:04:16 +02:00
Paul Chavard
dfc004d7bb
Unarchive dossier when repasser_en_instruction
2020-05-12 19:05:18 +02:00
Paul Chavard
43a1ead1cb
fix new prettier defaults
2020-05-12 18:18:37 +02:00
kara Diaby
474521c841
Adapt style for Map reader (point, line)
2020-05-12 17:47:28 +02:00
Pierre de La Morinerie
82cf9e26e1
app: remove tooltips on the old design
...
- Tooltips are no longer used anywhere
- They cause an error on app initialisation
Fixes "TypeError: dataAttributes.hasOwnProperty is not a function" error
that we've been seeing recently on Sentry.
2020-05-11 17:26:29 +02:00
Christophe Robillard
aab4bb81ee
return bilan bdf csv for expert
2020-05-11 13:05:50 +02:00
Christophe Robillard
cad8245540
fix bilans bdf link
2020-05-11 13:05:50 +02:00
kara Diaby
1cc04092f4
import GPX file in browser [Carto]
2020-05-11 11:36:36 +02:00
Paul Chavard
4f2e504cc2
Add carto import api
...
takes a FeatureCollection to import and returns an augmented champ FeatureCollection
2020-05-07 12:06:42 +02:00
Christophe Robillard
5a27629ee9
add effectifs in instructeur dossier pdf export
2020-05-06 18:01:01 +02:00
Christophe Robillard
10a21f9010
expose attestationSocialeAttachment and attestationFiscaleAttachment
2020-05-06 17:25:04 +02:00
Paul Chavard
05e408225b
Implement atomic operations on MapEditor
2020-05-06 16:46:14 +02:00
Christophe Robillard
dbf04dd0d8
make api entreprise call only if token not expired
2020-05-06 10:57:45 +02:00
Christophe Robillard
f587e6600a
extract class ApiEntrepriseToken
...
and check if token is expired
2020-05-06 10:57:45 +02:00
clemkeirua
088e08ff55
descriptions sur tous les types de champs
2020-05-05 20:50:39 +02:00
clemkeirua
f8519a6920
ajout des descriptions - cas general
2020-05-05 20:50:39 +02:00
clemkeirua
7065accf64
ajout du descriptif de procedure dans le pdf
2020-05-05 20:50:39 +02:00
Paul Chavard
6556df2a85
Fix a crash in case of invalid geometry
2020-05-05 15:56:05 +02:00
Christophe Robillard
733e282e76
fix identite entreprise view
2020-04-30 16:53:33 +02:00
Christophe Robillard
9de2c7c85a
improve csv generation for bilans bdf
2020-04-30 16:15:16 +02:00
Christophe Robillard
9873826dd4
remove date computed column
...
we will add it when more info of business
2020-04-30 16:15:16 +02:00
Christophe Robillard
22e2c2e133
render csv bidf bilans
2020-04-30 16:15:16 +02:00
Christophe Robillard
b12226c667
fetch and store bilans bdf
2020-04-30 16:15:16 +02:00
Christophe Robillard
85b2e9ef44
create bilans_bdf_adapter
2020-04-30 16:15:16 +02:00
Paul Chavard
843e033c38
Allow instructeurs to download a GeoJSON document for a given dossier
2020-04-30 15:49:43 +02:00
Paul Chavard
ef2d9e1138
Expose stable_id on champ
2020-04-30 15:49:31 +02:00
Christophe Robillard
59357f2100
show attestations sociales and fiscales only for instructeurs
2020-04-30 11:53:17 +02:00
Christophe Robillard
3ddb5a4cb4
store attestation fiscale and display
2020-04-30 11:39:54 +02:00
Christophe Robillard
38c68b16e3
create attestation_fiscale_adapter
2020-04-30 11:39:54 +02:00
Paul Chavard
b516cbc179
Enable republish on démarches dépubliée
2020-04-29 18:04:35 +02:00
Christophe Robillard
ddd3e6bb02
don't copy api_entreprise_token when cloning
...
except for an admin who owns the parent procedure
2020-04-29 17:17:20 +02:00
Christophe Robillard
158b4802ab
store attestation sociale and display
2020-04-29 16:25:47 +02:00
Christophe Robillard
d74b14c205
fetch attestation sociale url
2020-04-29 14:25:55 +02:00
Christophe Robillard
b147956a92
create attestation_sociale_adapter
2020-04-29 14:01:48 +02:00
Christophe Robillard
e29af48420
call api_entreprise with specific token if exist
2020-04-28 15:17:11 +02:00
Christophe Robillard
14ff18ca80
store specific api-entreprise token for a procedure
2020-04-28 15:17:11 +02:00
clemkeirua
1ac7ec2dca
precision dans mail suppression dossier en construction
2020-04-28 12:42:00 +00:00
kara Diaby
9aea1fffee
Migrate the map editor to mapbox-gl with react component
2020-04-27 11:30:32 +02:00
Paul Chavard
2a3530738d
Do not crash on boot if geos is not installed
2020-04-23 20:12:31 +02:00
Pierre de La Morinerie
04cf174039
Revert "app: add a warning about the file upload"
...
This reverts commit 7f45c7d97b
.
2020-04-23 18:31:59 +02:00
Pierre de La Morinerie
0845777fa0
Merge branch 'file-banner' into dev
2020-04-23 17:00:49 +02:00
Pierre de La Morinerie
7f45c7d97b
app: add a warning about the file upload
2020-04-23 16:54:27 +02:00
Christophe Robillard
339066778d
send notif only to the right instructeurs
...
after a dossier creation, only the instructeurs that belong to the group
instructeur of the dossier, and who want notif will be notified by mail
2020-04-23 13:01:57 +02:00
Pierre de La Morinerie
6f4075f38e
javascript: fix FileUploadError stacktraces
...
When subclassing a JS error, most browsers include the constructor
stacktrace :/
This is an issue, because:
- The stacktrace is deeper than it should be
- The stacktrace reaches into a polyfill for which there is not source
map, which causes Sentry to infer the issue grouping from the JS file
name. And the fingerprinted name changes on each release. So for each
release, the stacktrace is different ; and Sentry can't group issues
properly.
2020-04-23 12:27:26 +02:00
Paul Chavard
9cb612bb3d
Show area and length on champ carto selections utilisateur
2020-04-23 10:21:18 +02:00
Christophe Robillard
792e755af9
expose effectif_annuel dans api graphql
2020-04-23 09:53:27 +02:00
Christophe Robillard
453adf3c74
instructeurs: affiche l'effectif moyen annuel n-1
2020-04-23 09:53:27 +02:00
Christophe Robillard
85d119fa4d
n'affiche plus le code effectif
2020-04-23 09:53:27 +02:00
Christophe Robillard
a507359f5c
précise source pour effectifs mensuels
2020-04-23 09:53:27 +02:00
Paul Chavard
b849fc6fc3
Mark as sent or destroy right after each notification is sent to enable a better recovery in case of mid loop failures
2020-04-23 09:36:09 +02:00
Paul Chavard
31943f7d9c
Add handeling of expired processed dossiers to deletion service
2020-04-22 15:39:10 +02:00
Paul Chavard
f1b531911b
Handle processed dossiers in deletion mailers
2020-04-22 15:39:10 +02:00
Paul Chavard
bdbee38ff1
Add expired termine scopes to dossier
2020-04-22 15:39:10 +02:00
Pierre de La Morinerie
f29ec5c775
instucteurs: don't show discarded procedures in the list
2020-04-22 15:16:21 +02:00
Pierre de La Morinerie
1cb18e51ac
champ: return the parent dossier even when discarded
...
Dossier has a `default_scope { kept }`.
Because of that, when the parent dossier is discarded, `champ.dossier`
will return nil.
We should kill the default scope. But meanwhile, ensure that
`champ.dossier` returns even a discarded dossier.
2020-04-22 11:46:42 +02:00
Pierre de La Morinerie
ef009f73e2
javascript: report upload FileReader errors to Sentry
...
We have quite a lot of `Error reading file` errors when uploading files.
These errors are generated by ActiveStorage `file_checksum.js` component
but it eats the actual reason of errors.
(See https://github.com/rails/rails/blob/5-2-stable/activestorage/app/javascript/activestorage/file_checksum.js#L38 )
We can't really override the class to generate better errors, as they
are deeply nested in ActiveStorage class hierarchy, and not exported to
external code.
Instead, we hook into the FileReader event handler, to insert a logger
when this error occur. The original event handler will also still be
called as usual.
This is intended to be temporary. The debug code will be removed once
we get a better idea of what is going on.
2020-04-22 11:26:16 +02:00
Christophe Robillard
149b98007f
add effectif mensuel to graphql api
2020-04-21 21:13:07 +02:00
Christophe Robillard
1165f8483d
rename effectif columns
2020-04-21 21:13:07 +02:00
Christophe Robillard
db3ef195ad
fetch and show effectif mensuel
...
- fetch and store effectif mensuel (at the creation of the dossier or
when updating a siret field
- show effectif mensuel only for instructeurs
2020-04-21 14:22:11 +02:00
Christophe Robillard
599d8e33e8
create ApiEntreprise::EffectifsAdapter
2020-04-21 14:22:11 +02:00
Paul Chavard
fcd136c566
Enable deletion of expired dossiers en_construction
...
fix #4977
2020-04-21 10:41:54 +02:00
clemkeirua
2d68d7dc59
fix to_tsquery disallowed chars
2020-04-20 15:15:22 +02:00
Pierre de La Morinerie
52a491bde3
instructeur: improve description of unfiltered tab
...
The previous text was misleading: filters can be applied to this tab.
What it really does is present all dossiers regardless of their status.
Fix #5056
2020-04-20 11:34:57 +02:00
Paul Chavard
8f01eebf1f
fix legacy api carte serializer
2020-04-17 12:48:42 +02:00
Paul Chavard
e512870fd2
Cleanup procedure duree_conservation_dossiers_dans_ds validations
2020-04-16 19:40:19 +02:00
Paul Chavard
bc8217e030
Carte Editor sends FeatureCollection to the server
2020-04-16 18:29:19 +02:00
Pierre de La Morinerie
769e98f63e
javascript: fix the progress bar removal on success
...
When using auto-attach, the response HTML fragment replaces the progress
bar – so it doesn't need to be removed twice.
2020-04-16 17:02:23 +02:00
Pierre de La Morinerie
647ad3ba10
javascript: consider unknown upload errors as client errors
2020-04-16 12:59:14 +02:00
Pierre de La Morinerie
b006c33ebe
javascript: parse the upload status code correctly
...
Previously the status was "Status: 422" instead of just 422.
2020-04-16 12:54:18 +02:00
Pierre de La Morinerie
b2231e98d5
javascript: don't report connectivity issues to Sentry
2020-04-16 11:20:45 +02:00
Pierre de La Morinerie
55788990da
javascript: add a helpful message on connectivity error
2020-04-16 11:20:45 +02:00
Pierre de La Morinerie
432967bd76
javascript: make Uploader always throw the same kind of errors
...
A DirectUpload may fail for several reasons, and return many types of
errors (string, xhr response, Error objects, etc).
For convenience, wrap all these errors in a FileUploadError object.
- It makes easier for clients of the Uploader class to handle errors;
- It allows to propagate the error code and failure responsability.
2020-04-16 11:20:45 +02:00
Pierre de La Morinerie
d8f3b86b0e
javascript: move auto-upload attachment to the Uploader class
...
Rationale:
- It makes more sense to handle the progress bar updates in a single class;
- This will allow us to unify the error handling.
2020-04-16 11:20:45 +02:00
Paul Chavard
ee3ff78b12
Create constants for default map location
2020-04-16 10:22:07 +02:00
Paul Chavard
442a6a3cdd
Remove deprecated map reader
2020-04-15 18:07:09 +02:00
Paul Chavard
22604013d0
Expose multiple user selections on champ carte
2020-04-15 18:07:09 +02:00
Paul Chavard
7c34795a1a
Bring back font-awesome-rails
...
we need it untill we remove all the old admin pages
2020-04-15 17:41:05 +02:00
Pierre de La Morinerie
9e76135b27
views: add identifiers to fooker links
...
In Sentry, when an `ActionController::InvalidAuthenticityToken` error
occurs, the breadcrumbs mention that before hitting the error, the user
clicked on one of those links.
Unfortunately we don't know which one. For debugging purposes, adding
classes to the links should allow us to see which links users are
navigating to.
2020-04-14 18:02:52 +02:00
Paul Chavard
52d2ace823
Remove quartiers prioritaires
2020-04-14 10:29:59 +02:00
clemkeirua
8c2f589cbf
fix admin deletion of empty service with archived procedures
2020-04-10 20:01:40 +02:00
clemkeirua
6df927a46f
nom du demandeur dans user::dossiers#index si >=2 dossiers
2020-04-10 13:14:39 +02:00
Pierre de La Morinerie
61660b1b3b
javascript: remove unused jQuery.active bookkeeping
2020-04-09 17:52:47 +02:00
Pierre de La Morinerie
c633cd0888
javascript: improve Sentry grouping of direct upload errors
...
DirectUpload returns errors as strings, including an HTTP status and a
file name (and without a stack trace).
But Sentry groups issues according to the stack trace, and maybe the
error message in last resort.
So we have an issue: as all DirectUpload errors logged by Sentry are
generated on the same line, with random-looking messages, Sentry groups
them either too or too little aggressively.
Instead of creating all the errors on the same line:
- add some `if`s statements to create them on different lines (and so
with different stack traces),
- strip the file name from the error message.
This allows Sentry to group the errors properly, with meaningful error
messages.
2020-04-09 17:38:44 +02:00
Christophe Robillard
f683b850c3
Notifie instructeurs le souhaitant lors depot dossier
...
Notifie par mail uniquement les instructeurs qui le souhaitent à chaque dépôt de dossier
2020-04-09 15:02:05 +02:00
Christophe Robillard
ae18ff6627
Notifie tous les instructeurs lors dépôt dossier
...
- envoie un mail à tous les instructeurs d'une procédure après le dépôt
d'un nouveau dossier
2020-04-09 14:33:56 +02:00
Christophe Robillard
3ece41a614
homogénéise les majuscules en début de phrase
2020-04-09 14:17:07 +02:00
Christophe Robillard
969478b706
Envoie une notif aux followers_instructeurs le souhaitant
...
après chaque message déposé par l'usager
2020-04-09 14:17:07 +02:00
Christophe Robillard
415d5c765e
envoie une notification à chaque follower_instructeur après un commentaire déposé
2020-04-09 14:17:07 +02:00
Paul Chavard
c83aaf69a6
Fix procedure.can_be_deleted_by_administrateur? check
2020-04-09 13:46:57 +02:00
Pierre de La Morinerie
bc1c15b81d
javascript: make DirectUpload errors return true error objects
...
DirectUpload errors are string (instead of error objects). But Sentry
works better if we have true errors, which include the stacktrace.
2020-04-09 12:50:47 +02:00
Paul Chavard
61eaca928f
remove WarnExpiringDossiersJob
2020-04-09 11:11:51 +02:00
kara Diaby
d18bc1c421
Improve the mapbox-gl support detection for older browsers
2020-04-09 11:01:20 +02:00
kara Diaby
56e9834389
Revert "Revert "Revert "Revert "feat/4893 - migrate the mapReader to mapbox-gl with react""""
...
This reverts commit 473ed00b6c
.
2020-04-09 11:01:20 +02:00
Pierre de La Morinerie
7ff381b6f0
attachments: remove the buggy fallback
...
The fallback would fail on non-champ attachments.
2020-04-09 10:40:08 +02:00
Pierre de La Morinerie
7e19dd2cda
Revert "Revert "Fix middle-click on "Delete attachment" button""
...
This reverts commit 6e8bd6957f
.
2020-04-09 10:40:08 +02:00
clemkeirua
fbcf3de74c
ajout du motif recherché dans l'écran de résultats
2020-04-09 09:42:31 +02:00
clemkeirua
76139dbc71
recherche usager full-text avec plusieurs resultats
2020-04-09 09:42:31 +02:00
clemkeirua
98337f2334
recherche usager full-text avec 1 resultat
2020-04-09 09:42:31 +02:00
clemkeirua
9eafeac622
extract layouts/search_dossiers_form partial
2020-04-09 09:42:31 +02:00
clemkeirua
34188c432c
refactor _new_header so that user and instructeur search share similar signature
2020-04-09 09:42:31 +02:00
Paul Chavard
32f783142c
[GraphQL] allow to query dossiers by groupe instructeur
2020-04-09 09:29:28 +02:00
Paul Chavard
e28c05bb92
[GraphQL] fix groupe instructeur type definition
2020-04-08 18:36:09 +02:00
Pierre de La Morinerie
6e8bd6957f
Revert "Fix middle-click on "Delete attachment" button"
2020-04-08 17:40:58 +02:00
Pierre de La Morinerie
72d003b62c
javascript: fix missign argument to catch
...
Some browers complain about this.
2020-04-08 16:54:31 +02:00
Pierre de La Morinerie
444732b117
javascript: don't allow to retry on direct upload 422
...
When the authenticity token is invalid, the creation of the blob before
the direct upload returns a 422.
In that case, the token will never become valid again, and it is useless
to try again. Don’t show the "Retry" button in this case.
NB: of course the real fix is to understand why the authenticity token
is so often invalid – but this will be for later.
2020-04-08 15:48:23 +02:00
Pierre de La Morinerie
38b0bd645c
javascript: fix clicking on the icon of the auto-upload Retry button
...
When clicking on the icon, `event target` would be the icon, not
the button.
However delegates configures `this` to be the requested event target.
2020-04-08 15:48:23 +02:00
Pierre de La Morinerie
b748e9773f
attachments: fix opening the delete link directly
...
When cliking on the "Delete attachment" link, and opening the URL
in a new tab, the `DELETE /attachements/:id` will become
`GET /attachments/:id` – which will cause the `show` action to be
routed with an html format (instead of JS).
In that case, we don't want to throw an error at the user face.
Instead simply re-render the dossier page (if any).
Fix a long-standing error in Sentry.
2020-04-08 13:40:32 +02:00
kara Diaby
473ed00b6c
Revert "Revert "Revert "feat/4893 - migrate the mapReader to mapbox-gl with react"""
...
This reverts commit fe0b3c2215
.
2020-04-07 18:14:07 +02:00
kara Diaby
fe0b3c2215
Revert "Revert "feat/4893 - migrate the mapReader to mapbox-gl with react""
...
This reverts commit 3e21b78142
.
2020-04-07 18:11:11 +02:00
Pierre de La Morinerie
3e21b78142
Revert "feat/4893 - migrate the mapReader to mapbox-gl with react"
2020-04-07 15:32:14 +02:00
Paul Chavard
6dc1f3e2c4
Use human readable expressions instead of cron gibberish
...
https://github.com/floraison/fugit#fugitnat
2020-04-07 12:44:58 +02:00
Pierre de La Morinerie
38c0cdc360
javascript: ignore errors of attachments pooler
...
Pooling for attachment status is a background operation. Errors should
not be reported to the user, who didn't even ask for this operation to
take place.
This is why we ignore all errors, whether Javascript exceptions or
network errors.
2020-04-07 12:35:54 +02:00
Pierre de La Morinerie
dc6ff3b4ea
mailers: in avis requests, replace the small CTA link by a large button
...
Fix #3402
2020-04-07 12:05:36 +02:00
clemkeirua
ed45c88bdf
do not clone groups instructeurs for admin outside the procedure
2020-04-07 09:25:40 +02:00
pedong
7806a26e2c
copy groupe_instructeurs when clone
2020-04-07 09:22:33 +02:00
Pierre de La Morinerie
52afb41bab
js: fix errors on browsers not supporting window.scroll options
...
IE and Safari only know about `window.scroll(x, y)`, and not the form
with options.
2020-04-06 18:30:15 +02:00
Christophe Robillard
5b6044803b
forbid to create champ with same type_de_champ and same row
2020-04-06 17:39:51 +02:00
Pierre de La Morinerie
ded65cfdb9
dossier: fix rendering of piece_justificative in repetition
...
In repetitions we can't render the piece_justificative champ in the way
we do for normal champs (which was already a bit hackish).
Instead we render the whole form partial – and then extract the champ
from the form. In this way, we're sure to render the champ as it
appears in the form, without any hacks to reproduce the form structure.
2020-04-06 11:50:31 +02:00
Pierre de La Morinerie
c506402dcb
dossier: remove the now unused champId
in auto-upload
2020-04-06 11:50:31 +02:00
Pierre de La Morinerie
91260e2867
dossier: fix upload route of piece_justificative in repetitions
...
In repetitions, `form.index` doesn't make much sense. Turns out we
don't really need the index of the champ: we can just use the champ id.
2020-04-06 11:50:31 +02:00
Christophe Robillard
4fcbfffec1
laisse afficher le message flash avec le fichier à télécharger
2020-04-06 10:12:00 +02:00
Christophe Robillard
290edd9e69
ameliore la découvrabilité du fichier téléchargé
2020-04-06 10:12:00 +02:00
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