Commit graph

906 commits

Author SHA1 Message Date
Paul Chavard
c343893d00 Expose all utils function as @utils 2018-10-10 14:39:36 +02:00
Frederic Merizen
9086f99e2e [#2750] SQL injection false positives 2018-10-10 09:07:57 +02:00
Frederic Merizen
d5398a12a9 [#2750] Remove obsolete brakeman ignore 2018-10-10 09:07:57 +02:00
gregoirenovel
f3caa8ef7f Remove apipie (and maruku) 2018-10-09 17:23:07 +02:00
gregoirenovel
a1bab24681 Change the link to the API documentation 2018-10-09 17:23:07 +02:00
gregoirenovel
98d348aab1 Remove the delete demarche feature for admins 2018-10-09 16:42:32 +02:00
Paul Chavard
bcbfc370b2 Add button in manager to transition démarche in brouillon state
fix #2565
2018-10-09 16:14:18 +02:00
Paul Chavard
d93f696935 Try to run after_party as rake task 2018-10-04 20:42:17 +02:00
Paul Chavard
22c132febe Fixing mina after_party:run 2018-10-04 20:08:59 +02:00
Paul Chavard
0927905d2e Fix deploy task 2018-10-04 19:41:11 +02:00
Paul Chavard
ff9e87b88e Use letter opener 2018-10-04 18:21:43 +02:00
Pierre de La Morinerie
39f1b7547e session: improve message after reseting a password 2018-10-03 15:10:02 +02:00
Pierre de La Morinerie
bfe2938819 session: improve error message for unconfirmed accounts 2018-10-03 15:10:02 +02:00
Pierre de La Morinerie
bfd106ba30 session: migrate the "token confirmation" page to the new design 2018-10-03 15:09:30 +02:00
gregoirenovel
a171186dd8 Enable Style/TrailingCommaInHashLiteral 2018-10-03 12:03:21 +02:00
gregoirenovel
6eeba14885 Enable Style/WordArray 2018-10-03 12:03:21 +02:00
Mathieu Magnin
a029aa62b1 [Fix #2674] Add Services to manager 2018-10-02 16:17:17 +02:00
Pierre de La Morinerie
36c1aa118d dossier: remove RecapitulatifController
And add a redirection to the new URLs.
2018-10-02 15:42:29 +02:00
Pierre de La Morinerie
bf9f427299 dossier: remove DescriptionController 2018-10-02 14:40:47 +02:00
Pierre de La Morinerie
3392df0029 dossier: remove CommentairesController 2018-10-02 14:40:38 +02:00
Pierre de La Morinerie
758ccff984 dossier: remove feature flag 2018-10-02 12:25:44 +02:00
Pierre de La Morinerie
f007eaa2ee dossier: enable new UI by default 2018-10-02 12:23:53 +02:00
Paul Chavard
3c66fceba5 Replace password strength js with ujs 2018-09-27 16:00:14 +02:00
simon lehericey
2c8188f4ae Profil: fix refresh on update_token 2018-09-27 10:14:32 +02:00
simon lehericey
bd04972f65 Profile: move to new design 2018-09-27 10:14:32 +02:00
Paul Chavard
f94a24d7ce Add path field to procedure information form 2018-09-26 10:53:45 +02:00
Mathieu Magnin
2507f963b1 [Fix #1285] Create an endpoint to check password strength 2018-09-26 09:03:04 +02:00
Mathieu Magnin
499021588d [Fix #1285] Password strength is ensured when saving an administrateur 2018-09-26 09:03:03 +02:00
Mathieu Magnin
5d6f8de5a0 [Fix #1285] Add a custom dictionary for zxcvbn 2018-09-26 09:02:59 +02:00
Paul Chavard
c66bb056f5 Remove uglifier 2018-09-25 18:26:19 +02:00
Paul Chavard
198547778d Use uglifier with no mungle option in order to fix leaflet in production 2018-09-25 17:47:32 +02:00
gregoirenovel
5b011fef59 [Fix #2652] Add the /tour-de-france page 2018-09-24 18:07:29 +02:00
gregoirenovel
7b3a7d2336 [Fix #187] Allow an admin to delete their demarche logo 2018-09-24 13:29:35 +02:00
gregoirenovel
94378e3663 [Fix #2332] Allow the notice deletion 2018-09-24 12:25:10 +02:00
gregoirenovel
5db408efdb [Fix #1511] Remove the now obsolete DS logo 2018-09-24 12:16:58 +02:00
gregoirenovel
535f9004bf Admins can delete the attestation template's logo 2018-09-24 10:15:22 +02:00
gregoirenovel
d649e29bb0 [Fix #1979] Admins can delete the attestation template's signature 2018-09-24 10:15:02 +02:00
gregoirenovel
227006d87b [Fix #329] Properly translate the “password is too short” error 2018-09-23 22:39:01 +02:00
gregoirenovel
e4eb55a37f Revert "[Fix #2623] Ensure numbers are integers"
This reverts commit 68789ff43b.
2018-09-21 15:15:11 +02:00
gregoirenovel
c41fa25235 Explicit to admins the fact that the champ number only supports integers 2018-09-21 08:12:52 +02:00
gregoirenovel
68789ff43b [Fix #2623] Ensure numbers are integers 2018-09-21 08:12:52 +02:00
Frederic Merizen
ac82a72dcc [#1946] Monthly expiring dossiers summary mail 2018-09-20 17:44:31 +02:00
gregoirenovel
5f1d68762b Improve a message 2018-09-20 16:51:26 +02:00
gregoirenovel
be5859af60 Improve the documentation in deploy.rb 2018-09-20 16:51:26 +02:00
gregoirenovel
0c9628c180 Fix some files according the the .editorconfig rules 2018-09-20 16:23:09 +02:00
gregoirenovel
90e7a5d276 Improve error messages 2018-09-20 13:03:42 +02:00
gregoirenovel
c445de9f83 Regroup definitions at the top of deploy.rb 2018-09-20 11:37:04 +02:00
gregoirenovel
6dbb916c6a Remove useless comments from deploy.rb 2018-09-20 11:37:04 +02:00
gregoirenovel
fd13f9dbb2 Remove default fallback on staging for the deploy destination
Explicit > implicit
2018-09-20 11:28:58 +02:00
gregoirenovel
ec545758c3 Improve deploy.rb readability 2018-09-20 11:26:25 +02:00
gregoirenovel
276cb55d9a Remove a useless instruction from deploy.rb 2018-09-20 11:25:40 +02:00
gregoirenovel
2f940eed6d Remove a useless comment from deploy.rb 2018-09-20 11:25:25 +02:00
gregoirenovel
b317b49b3d Confirmation → activation 2018-09-20 10:43:07 +02:00
gregoirenovel
f86cc835f8 courriel → email / adresse email 2018-09-20 10:43:07 +02:00
gregoirenovel
acaf7ff5a7 Adresse électronique → adresse email 2018-09-20 10:43:07 +02:00
gregoirenovel
d55c9dff4d Show the mean instruction time in the Résumé tab 2018-09-19 12:31:59 +02:00
Pierre de La Morinerie
082ef92a99 invite: move invites link to the after_confirmation callback
Refactored from 6a69d958da

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

Moving the invitations linking to a proper documented callback allows
the linking to work in a testing environment, when invoking `user.confirm`.
2018-09-19 12:08:28 +02:00
Pierre de La Morinerie
38f6d11c57 dossier: finish feature-switch for enabled new dossier details 2018-09-18 16:48:27 +02:00
gregoirenovel
9fe9f9b616 Add a new demarches page, showing the demarches already done 2018-09-13 16:27:46 +02:00
Paul Chavard
55a9b31b93 Cleanup SIRET champ 2018-09-12 15:53:02 +02:00
Paul Chavard
3f6cc668a7 Implement check_availability route 2018-09-12 12:37:15 +02:00
Paul Chavard
7c92149066 Lint webpack config 2018-09-12 10:40:34 +02:00
gregoirenovel
f8a6765367 [Fix #2540] Allow an instructeur to send a dossier to several instructeurs 2018-09-11 18:00:24 +02:00
Paul Chavard
f3333595a0 Drop text_summary endpoint 2018-09-07 19:41:34 +01:00
Paul Chavard
c49db4b5a4 Add a champs/dossier_link endpoint and use it to fetch dossier info 2018-09-07 19:41:33 +01:00
Pierre de La Morinerie
211674435e messagerie: better format message dates 2018-09-07 12:02:26 +02:00
gregoirenovel
9c6a66ae75 Change the route for DossierController#modifier
If we submit the form, and there’s an error, the
URL would be `/dossiers/:id`, therefore
`dossier_path(dossier)`, so the Résumé tab would
be active, not the messagerie tab. This change
prevents this behaviour.
2018-09-07 11:30:00 +02:00
gregoirenovel
1341074325 Add DossierController#update 2018-09-07 10:19:10 +02:00
gregoirenovel
cd46ee06e1 Add DossierController#modifier 2018-09-07 10:19:10 +02:00
gregoirenovel
338ffb8b50 DossierController#update → #update_brouillon 2018-09-07 10:19:10 +02:00
gregoirenovel
5ac8117c69 DossierController#modifier → #brouillon 2018-09-07 10:19:10 +02:00
gregoirenovel
00ecae5f93 Procédure → Démarche 2018-09-05 15:46:24 +02:00
Pierre de La Morinerie
af5df2d661 dossier: add "Messagerie" tab 2018-09-05 14:02:12 +02:00
gregoirenovel
6b88968889 Formulaire → demande, when not editable 2018-09-05 11:07:11 +02:00
gregoirenovel
a7095b28b4 Stop using Rails.env.xxx? methods when not relevant 2018-09-04 16:07:59 +02:00
gregoirenovel
b2dc502ed5 Use an env var for Carrierwave's cache_dir 2018-09-04 16:07:59 +02:00
Pierre de La Morinerie
b4aadf43cd initializers: check that env vars declared in env.example are present
If an environment variable is declared in `config/env.example`, but not
present in the actual environment, the server initialization will raise
an exception.

Empty strings are allowed (because some values are relevant only in
development or production).
2018-09-04 10:20:20 +02:00
gregoirenovel
589127fd4c Remove now useless secrets 2018-09-03 17:08:32 +02:00
gregoirenovel
409d4f4b1b Remove useless anchor in secrets.yml 2018-09-03 17:08:32 +02:00
gregoirenovel
6d153dce46 Populate some env vars 2018-09-03 17:08:32 +02:00
gregoirenovel
a23418f12b Move the local db conf to env.example 2018-09-03 17:08:32 +02:00
gregoirenovel
e4f4f5be8c Move some conf to env.example 2018-09-03 17:08:32 +02:00
gregoirenovel
08df16c6f8 Add missing env vars 2018-09-03 17:08:32 +02:00
gregoirenovel
abc3a4f817 Remove a now unused env var 2018-09-03 16:20:54 +02:00
gregoirenovel
df742421a8 Remove an env var 2018-09-03 16:13:38 +02:00
Paul Chavard
0e2b7ec6e1 try to fix after_party on deploy 2018-08-30 12:51:28 +01:00
Paul Chavard
c67f8dcaaa Add after_party 2018-08-30 11:54:54 +01:00
gregoirenovel
3662b82039 accompagnateur → instructeur 2018-08-29 23:09:08 +02:00
Paul Chavard
5f12ea43a7 Add helpscout webhook 2018-08-29 21:41:14 +01:00
Paul Chavard
74ddce8705 Add support_form feature flag 2018-08-29 16:08:01 +01:00
gregoirenovel
0ac160c824 Remove the now useless stats API 2018-08-29 14:54:49 +02:00
Paul Chavard
bad107ffae Add contact form 2018-08-29 10:44:12 +01:00
Paul Chavard
c1bdb8a4be Add support tags translations 2018-08-29 10:42:26 +01:00
Paul Chavard
c3e2d61d0a Add helpscout config 2018-08-29 10:41:42 +01:00
Paul Chavard
5dcc74fcbe Stop using staging environement 2018-08-29 11:22:56 +02:00
Paul Chavard
70d5f1deac Fix France Connect 2018-08-29 10:15:29 +01:00
gregoirenovel
19789b6848 Remove the stats part of the procedure info page for admins
- the numbers are wrong (:termine state does not
  exist)
- the chart does not work
2018-08-28 15:19:31 +02:00
gregoirenovel
437da7a4ae Remove a now useless env var 2018-08-28 10:44:17 +02:00
gregoirenovel
a005ec6199 Rename an env var 2018-08-28 10:44:17 +02:00
gregoirenovel
5085357db9 Improve the formatting of the urls.rb file 2018-08-28 10:44:17 +02:00
gregoirenovel
9284afc649 Use a constant for the API Entreprise URL 2018-08-28 10:44:16 +02:00
lucien mollard
9292e243ef Add a button to download the stats in CSV 2018-08-27 14:00:34 +02:00
gregoirenovel
5f60e204d1 Use parentheses 2018-08-27 09:21:20 +02:00
Paul Chavard
f311715301 Fix fog base_url 2018-08-24 13:01:46 +01:00
Paul Chavard
68398afc76 Remove old config files 2018-08-23 18:07:55 +02:00
Paul Chavard
76cdb6c6f3 Add staging env to config files for now 2018-08-23 17:52:56 +02:00
Paul Chavard
986b1c49f2 [ENV] Add more vars to example .env 2018-08-23 15:55:33 +02:00
Paul Chavard
1daaf96438 [ENV] Stop using shared config 2018-08-23 15:55:33 +02:00
Paul Chavard
f0b12d0911 [ENV] Add staging environement file 2018-08-23 15:55:32 +02:00
Paul Chavard
3e23ba5a4f [ENV] Add lograge config 2018-08-23 15:55:32 +02:00
Paul Chavard
d2094fbbd1 [ENV] Disable inmemory cache in production 2018-08-23 15:55:32 +02:00
Paul Chavard
9abb3c7a5a [ENV] Pipedrive key config 2018-08-23 15:55:32 +02:00
Paul Chavard
14f4b16fa4 [ENV] Signing key config
# Conflicts:
#	config/secrets.yml
2018-08-23 15:55:32 +02:00
Paul Chavard
c79827d551 [ENV] Configure default_url_options 2018-08-23 15:55:32 +02:00
Paul Chavard
bd574b21f6 [ENV] Mailjet delivery method 2018-08-23 15:55:32 +02:00
Mathieu Magnin
907f48e148 [ENV] Configure Raven (Sentry) 2018-08-23 15:55:32 +02:00
Paul Chavard
296e3a9b09 [ENV] Add fog config 2018-08-23 15:55:32 +02:00
Mathieu Magnin
db8e750f1a [ENV] Configure Api Entreprise token 2018-08-23 15:55:32 +02:00
Mathieu Magnin
5ff869e1bc [ENV] Add Mailjet conf 2018-08-23 15:55:32 +02:00
Mathieu Magnin
d37958d1ae [ENV] Basic auth config 2018-08-23 15:55:32 +02:00
Mathieu Magnin
aa0a4cf87f [ENV] Devise config 2018-08-23 15:55:32 +02:00
Mathieu Magnin
02888c9d50 [ENV] Add skylight conf 2018-08-23 15:55:31 +02:00
Mathieu Magnin
9eb48413b5 [ENV] Active storage config in storage.yml 2018-08-23 15:55:31 +02:00
Mathieu Magnin
8934d495e9 [ENV] GH config in secrets.yml 2018-08-23 15:55:31 +02:00
Mathieu Magnin
238d94cdc3 [ENV] France connect particulier config in secrets.yml 2018-08-23 15:55:31 +02:00
Mathieu Magnin
46bb8df5cd [ENV] Database config 2018-08-23 15:13:09 +02:00
gregoirenovel
9c94308209 Enforce a minimum Edge version 2018-08-22 11:20:52 +02:00
gregoirenovel
3d14ae418f Unify the syntax in browser.rb 2018-08-22 11:20:39 +02:00
gregoirenovel
fad18d6173 Update the minimum browsers versions 2018-08-21 18:21:14 +02:00
Paul Chavard
ebc7044743 Get app url from ENV 2018-08-21 15:42:06 +02:00
Paul Chavard
ebe3be40fa Add .env example file and instructions 2018-08-21 15:41:16 +02:00
Mathieu Magnin
20a3f86729 Dotenv-rails should be defined a the very top of the gemfile 2018-08-21 15:41:06 +02:00
Paul Chavard
8ed80f6310 Do not deploy features.yml file 2018-08-21 10:24:57 +02:00
Paul Chavard
40a1e22cc9 Remove logstasher and add custom job structured logger 2018-08-16 12:26:13 +02:00
Paul Chavard
c95bd2d180 Enable env file on deploy 2018-08-16 12:16:51 +02:00
Paul Chavard
b57c22cafe Refactor publish dialog 2018-08-14 16:39:11 +02:00
lucien mollard
0f790c4b07 separates the homepage into two parts, users/administrations 2018-08-14 16:12:51 +02:00
Pierre de La Morinerie
af95e56b50 dossier: add a page with the form 2018-08-14 15:25:27 +02:00
Pierre de La Morinerie
40d0986a82 javascript: transpile activestorage files (instead of copying them) 2018-08-14 11:40:33 +02:00
Paul Chavard
3be678dbe5 Add publish_draft feature flag 2018-08-13 19:27:28 +02:00
Paul Chavard
c7b97073ee Log backtrace on exceptions 2018-08-13 18:32:00 +02:00
Paul Chavard
9de3e6e74b Make info extraction method more safe 2018-08-13 18:32:00 +02:00
simon lehericey
839b7627ac [fix #2387] Rack: increase max multipart number 2018-08-13 17:45:47 +02:00
Paul Chavard
008d84f107 Explicitly import jQuery 2018-08-13 15:17:13 +02:00
Paul Chavard
0ba4d3dc4c Fix IE/Safari 10 uglify ecma option 2018-08-13 14:30:20 +02:00
Paul Chavard
a6a4790a35 Replace logstasher with lograge 2018-08-13 12:44:00 +02:00
simon lehericey
9196a3ef4c Logstasher: remove bugging initializer 2018-08-10 13:07:41 +02:00
lucien mollard
9ecc5f7928 add a user satisfaction form' 2018-08-09 11:41:26 +02:00
Pierre de La Morinerie
8dade00cfe champs: "Checkbox" -> "Case à cocher" 2018-08-08 16:06:08 +02:00
Pierre de La Morinerie
77eb89cb0f dossier: add a stub page for the new dossier details 2018-08-08 11:49:15 +02:00
Pierre de La Morinerie
0ac28da207 dossier: make Dossiers#show a stub redirecting to the correct location 2018-08-08 11:49:15 +02:00
Paul Chavard
b5be1d74b7 Disable logstasher log_controller_parameters option 2018-08-07 16:26:44 +02:00
Paul Chavard
a0979b1d57 Fix logstasher custom fields 2018-08-07 16:26:44 +02:00
Pierre de La Morinerie
b14bba70a0 routes: add sections 2018-08-07 14:41:29 +02:00
Paul Chavard
c91abe73c5 Remove old user dossier form 2018-08-07 14:13:27 +02:00
Pierre de La Morinerie
c8409ecb89 dossier: remove route hack for show 2018-08-07 12:15:38 +02:00
Pierre de La Morinerie
fdbda30877 javascript: transpile compatible JS for all browsers we support 2018-08-06 17:50:10 +02:00
Pierre de La Morinerie
22b83dd67c browsers: enforce IE 11 as the minimum required IE version
This is already documented in the README, but not enforced.
2018-08-06 16:33:10 +02:00
Paul Chavard
3645c56416 Use Chartkick with defer option 2018-08-01 17:02:30 +02:00
Paul Chavard
78a9365fe1 Package mailjet widget with webpack 2018-08-01 16:54:39 +02:00
Pierre de La Morinerie
01cdd910df invite: don't display email of following accompagnateurs
We don't want the individual contact of Accompagnateurs to be displayed, for privacy reasons.
2018-08-01 13:48:58 +02:00
Paul Chavard
d93ed328b7 Do not share binstubs 2018-07-26 11:12:00 +02:00
Paul Chavard
a482855d5e Run yarn install on deploy 2018-07-26 10:51:37 +02:00
Paul Chavard
19503c8c75 Revert "Run yarn install during deploy"
This reverts commit 264338a495.
2018-07-25 17:57:28 +02:00
Paul Chavard
7579ae9903 Revert "Add yarn install task to mina"
This reverts commit d6000ca56c.
2018-07-25 17:57:18 +02:00
Paul Chavard
d6000ca56c Add yarn install task to mina 2018-07-25 17:17:58 +02:00
Paul Chavard
264338a495 Run yarn install during deploy 2018-07-25 17:06:28 +02:00
Paul Chavard
bf7c023380 Add webpacker and use it for new_design 2018-07-25 15:14:06 +02:00
Pierre de La Morinerie
1348f81f31 manager: fix pluralization of "Dossier" 2018-07-24 11:01:01 +02:00
gregoirenovel
ed436bfe77 [Fix #2260] Add a search field in the usager UI 2018-07-17 17:26:42 +02:00
gregoirenovel
cd22a9742e Move a route inside a collection block 2018-07-17 17:26:42 +02:00
gregoirenovel
4d41381155 Move the attestation route inside the member block 2018-07-17 17:26:42 +02:00
Pierre de La Morinerie
7ca476fc61 manager: add confirmation email actions for the User
- Allow to re-send the confirmation email
- Allow to confirm the email address manually
2018-07-17 12:10:56 +02:00
Pierre de La Morinerie
0aa2c1d9f6 routes: redirect /users/dossiers to /dossiers 2018-07-04 12:23:49 +02:00
simon lehericey
49836564ce Manager: can change dossier state to instruction 2018-07-02 15:57:39 +02:00
Paul Chavard
d0a6957862 Remove old cerfa code 2018-06-28 15:16:20 +02:00
Pierre de La Morinerie
956c3fe36c Replace hardcoded phone numbers by a CONTACT_PHONE constant 2018-06-25 11:51:15 +02:00
Frederic Merizen
226e3ca562 [#1421] Subject linked dropdown field to feature toggle 2018-06-21 16:19:20 +02:00
Frederic Merizen
15e8d8af05 [#1421] Add linked dropown fields 2018-06-21 16:19:20 +02:00
Frederic Merizen
859d8896f8 [#1421] use same order as in TypeDeChamp enum 2018-06-21 16:19:20 +02:00
Pierre de La Morinerie
fa46f7f0d7 config: make assets compilation faster in development 2018-06-19 16:49:14 +02:00
Frederic Merizen
521aec6af9 [#1568] Remove old previsualisation code 2018-06-19 12:42:46 +02:00
Pierre de La Morinerie
2cfa1b441d config: add default config files to the source 2018-06-18 13:13:59 +02:00
Frederic Merizen
78fa6945cb [#2068] Use official French word for mail 2018-06-18 10:42:04 +02:00
Frederic Merizen
354c76e26f [#2068] Remove duplicate devise translations 2018-06-18 10:42:04 +02:00
Frederic Merizen
dd4e6eaa11 [#2068] Add missing devise translations 2018-06-18 10:42:04 +02:00
Pierre de La Morinerie
15511d0863 deploy: don't seed the database
The database should be seeded only when deploying on a fresh new
environment – like a local setup or a review app.

Persistent testing and production environment shouldn't be seeded.
2018-06-15 12:28:18 +02:00
simon lehericey
eee41cbf39 Manager: can reinvite a gestionnaire 2018-06-14 16:41:10 +02:00
Frederic Merizen
07b6089950 [Fix #2089] Add missing validation message 2018-06-12 16:36:26 +02:00
Mathieu Magnin
cd4615b10d When a new PJ is uploaded enqueue a anti virus scan job 2018-06-12 15:12:39 +02:00
Frederic Merizen
42765efb91 [#1946] Add validation to durees conservation 2018-06-01 16:46:39 +02:00
Frederic Merizen
c39a58749f Remove duplicate translations
There is a default translation for `blank` already
2018-06-01 15:21:25 +02:00
gregoirenovel
23931a7591 Remove the contact_email locale 2018-06-01 00:00:11 +02:00
gregoirenovel
185f08f63e Add constants for email addresses 2018-06-01 00:00:11 +02:00
simon lehericey
18ad227df5 [fix #1897] Procedure: can delete a deliberation 2018-05-31 16:56:28 +02:00
simon lehericey
a96889310b Procedure: add legal reference 2018-05-31 16:55:31 +02:00
Paul Chavard
e2a126e37a Add users and gestionnaires to manager 2018-05-31 15:18:24 +02:00
gregoirenovel
661010100d [Fix #1536] Remove stringupcasepatch 2018-05-31 11:49:25 +02:00
simon lehericey
aaebcd3494 [fix #1701] Use DS form to enroll admin 2018-05-24 17:15:44 +02:00
Mathieu Magnin
aaf1bc0b99 [Fix #1931] User can ask support to delete dossier 2018-05-24 16:42:16 +02:00