1
0
mirror of https://github.com/LaCasemate/fab-manager.git synced 2024-12-01 12:24:28 +01:00
Commit Graph

471 Commits

Author SHA1 Message Date
Sylvain
37b24a8d2f refactor slots model 2022-07-18 17:18:01 +02:00
Sylvain
783e86d9cc (bug) fix slots creation 2022-07-18 17:18:00 +02:00
Sylvain
b2fd2e1b48 build all slots at reservation creation time 2022-07-18 17:18:00 +02:00
Sylvain
dbf624c17f rollback migration 2022-07-18 17:18:00 +02:00
Sylvain
8be2425275 (wip) refactoring slots to be unique per availability time-slot 2022-07-18 17:18:00 +02:00
Sylvain
2172c102c9 (bug) use arrays for OIDC scopes in front and DB.
Send the scope as a string separated with spaces to the OIDC provider.
2022-06-01 09:27:49 +02:00
Sylvain
e914567cf1 (bug) fix multi select behavior 2022-05-31 17:06:06 +02:00
Du Peng
41d931aba0 Fix a bug: Missing of description of PlanCategory migration 2022-05-17 16:45:17 +02:00
Du Peng
3e34b3c7a7 add user validation required setting, user proof of identity upload and organization custom field 2022-05-11 16:57:44 +02:00
Sylvain
e45872956c (ui) Option to prevent users from changing their group 2022-05-11 15:45:49 +02:00
Sylvain
ac1d518ddc (ui) option to disable the machines module 2022-05-11 11:54:00 +02:00
Sylvain
6ec6a8c4c9 (api) save which data is really mapped from the sso 2022-05-04 14:05:36 +02:00
vincent
6ee7335a4d Override React-select styles 2022-05-04 13:22:14 +02:00
vincent
4c6942eba4 merge 2022-05-04 13:02:40 +02:00
Sylvain
6c46e5ec81 (api) automatically configure some openID parameters: redirect_uri, display, response_mode 2022-05-04 12:28:48 +02:00
vincent
86403cb1f2 Override React-select styles 2022-05-04 12:25:08 +02:00
Sylvain
7b1403dac9 (db) distringuish between oid client configuration and client_auth_method 2022-05-04 12:16:38 +02:00
Sylvain
9ead3b5e8d (db) add profile_url to OpenIdConnectProvider 2022-05-04 12:16:38 +02:00
Sylvain
b4e53d2039 (db) table to save OpenID connect configuration
Also refactored OAuth2Mapping to allow usage with any types of providers
2022-05-04 12:16:38 +02:00
vincent
4a995b3bd8 merge 2022-05-04 11:30:42 +02:00
Nicolas Florentin
5e5822c89f Fix a bug: edge case of birthday in the future in seeds.rb, we should use Date.current instead of DateTime.current since birthday is a date (see https://github.com/sleede/fab-manager/issues/344) 2022-05-04 08:50:10 +02:00
Sylvain
0c51aff748 (feat) OAuth2 scopes are now configurable from the interface
Previously, scopes were supported through OAUTH2_SCOPE since v5.3.1.
BREAKING CHANGE: update your oauth2 provider configuration if you need scopes support
2022-03-22 16:40:09 +01:00
Sylvain
dc8c36029b (doc) fix comment in migration 2022-03-21 12:50:03 +01:00
Sylvain
36d85c0cf7 (bug) unable to delete an administrator who had closed an accounting period 2022-03-16 17:10:27 +01:00
Sylvain
49dd0d2dab (bug) a sentence was not linked to a translation key 2022-03-08 15:48:06 +01:00
Nicolas Florentin
e37cde2f0d removes dead code about OpenAPI (open_api_calls_count_tracings) 2022-02-25 15:39:56 +01:00
Sylvain
e4a0798b8a (bug) statistics not built
for instances with plans created before v4.3.3, the StatisticType.key does not match Plan.duration because of a behavior change in rails framework. (v4.3.3 introduces a framework upgrade)
2022-01-18 14:01:34 +01:00
Sylvain
a38d3e31b1 use explicit payment method for check in paymentSchedules and do not include the payment method in the footprint 2022-01-11 16:15:43 +01:00
Sylvain
e1256ec551 Ability to disable public account creation 2022-01-04 15:27:58 +01:00
Sylvain
dc242fc7be Default false for extended_prices_in_same_day 2021-12-23 08:34:25 +00:00
Sylvain
ffb0f3e19e ability to limit extended prices to slots in the same day 2021-12-21 16:32:02 +01:00
Sylvain
5ebc1017d2 save prices duration in db 2021-12-20 15:47:57 +01:00
Sylvain
840c536c75 Ability to configure data sources for preventing booking on overlapping slots 2021-10-22 14:50:02 +02:00
Sylvain
1a672b0644 stave start date in subscription schedule 2021-10-18 15:19:58 +02:00
Sylvain
315e899540 [WIP] fix tests 2021-10-14 18:20:10 +02:00
Du Peng
f2dd1bbcd2 add an option Subscription valid for purchase and use of a prepaid pack 2021-09-20 19:43:05 +02:00
Du Peng
4222e87e39 Disable SQL format for the schema 2021-07-01 16:17:37 +02:00
Sylvain
4e030300cb [bug] unable to filter by multiple user IDs in OpenAPI
Also: tests for OpenAPI user trainings
2021-06-28 10:17:26 +02:00
Sylvain
f16cbc44ff WIP: buy pack modal 2021-06-25 17:24:34 +02:00
Sylvain
0345d22582 delete & disable packs 2021-06-24 17:59:05 +02:00
Sylvain
d54f30e048 WIP: interface to configure packs 2021-06-21 17:39:48 +02:00
Sylvain
7ac60f6ef3 data architecture of prepaid-packs 2021-06-21 14:58:49 +02:00
Sylvain
11579fede4 ability to disable the public agenda 2021-06-15 11:57:43 +02:00
Sylvain
7ba2d58f50 update VCR to 6.0.0
Also: - updated cassettes
- Automated stripe secrets filtering in cassettes
- Improved display when no plan-categories exists
2021-06-11 14:29:30 +02:00
Sylvain
dfd2ac52dd updated SQL structure 2021-06-09 07:54:14 +02:00
Sylvain
e1e446ab3f API+ interface to CRUD plan categories 2021-06-08 16:43:43 +02:00
Sylvain
4e18a03de6 fix ADMINSYS script 2021-06-07 15:03:48 +02:00
Sylvain
fda942d386 fix invalid footprints after regeneration in migrations 2021-06-07 14:38:47 +02:00
Sylvain
5d7c024056 fix stripe_ids data migration 2021-06-07 14:15:39 +02:00
Sylvain
39fe153267 fix table name in rollback migration 2021-06-07 09:56:03 +02:00
Sylvain
54fe1fea92 migrate invoices marked as paid with stripe 2021-06-03 15:06:24 +02:00
Sylvain
5f4c322fd5 migrate payment schedule items marked as paid with stripe 2021-06-03 15:02:48 +02:00
Sylvain
4e109f7edb retrieve gateway objects with multiple ids 2021-06-03 09:48:21 +02:00
Sylvain
87cd41794e WIP: payzen subscription
TODO: retreive the payzen subscription from PayZen::Item
2021-06-02 20:07:53 +02:00
Sylvain
0b2310e57a updated changelog 2021-05-31 17:17:00 +02:00
Sylvain
55b0e25ee9 generate footprints in a reproductible way 2021-05-31 12:53:28 +02:00
Sylvain
36e173fb43 test presence of footprint debug data 2021-05-31 12:19:28 +02:00
Sylvain
d942d46632 WIP: migration to object[]
TODO: fix running tests, fix front-end
2021-05-28 17:34:20 +02:00
Sylvain
5f5ec8dbb6 remove references to Invoice.invoiced 2021-05-27 15:58:55 +02:00
Sylvain
13f50c0e33 remove references to WalletService.transactable 2021-05-27 13:43:54 +02:00
Sylvain
16df7f9506 fix data migrations + update test fixtures 2021-05-27 11:31:07 +02:00
Sylvain
6b90e73195 migrate database to object[] to store multiple boughts items 2021-05-25 17:28:35 +02:00
Sylvain
c7a59c8cb7 WIP: refactoring to singularize the booking process
We need to achieve only one process for all booking, not one for subscription, one for reservations, etc.
Moreover we must store one object per invoice_item/payment_schedule_object and stop using Invoice.invoiced or PaymentSchedule.scheduled
2021-05-21 18:25:18 +02:00
Sylvain
358400d69e fix rollback with payzen objects in Db 2021-05-12 16:42:56 +02:00
Sylvain
bc6ef8ef50 WIP: move backend code base to new architecture
- from stripe only to payment gateway abstract
- from reservation params style to unified cart_items

TODO: fix not passing tests,
subscriptions/renew_as_admin_test.rb fails because InvoiceItem(9).amount = nil
2021-04-23 17:54:59 +02:00
Sylvain
26dfbef5e1 WIP: refactor models to use payment_gateway_objects 2021-04-21 17:38:06 +02:00
Sylvain
434ec9c205 refactored Invoices to get rid of stripe references 2021-04-20 17:22:53 +02:00
Sylvain
a897d37b2d improved footprint debug process 2021-04-16 16:03:10 +02:00
Sylvain
4ffd357841 WIP: migrate stripe ids in DB 2021-04-16 12:25:48 +02:00
Sylvain
343b2f7d23 refactor code related to archiving 2021-04-16 10:34:02 +02:00
Sylvain
141f4f31b1 Merge branch 'dev' into payzen 2021-03-10 15:23:56 +01:00
Sylvain
9d747db095 Ability to disable the trainings module 2021-03-10 13:25:53 +01:00
Sylvain
3ea06826ad WIP: select gateway 2021-03-03 15:28:56 +01:00
Sylvain
0e7226c85c handle stripe requires_action 2021-02-08 15:28:47 +01:00
Sylvain
def0778a4d basic inteface to retrieve payment schedules 2021-01-25 17:42:30 +01:00
Sylvain
01a0612a4b fix create invoice for each due date 2021-01-25 14:37:07 +01:00
Sylvain
65277800e2 fix creation subcription on stripe 2020-12-23 16:25:24 +01:00
Sylvain
f661428db2 better error handling in stripe::subscription creation process 2020-12-23 15:29:56 +01:00
Sylvain
32b0222da5 save payment schedules PDF to a persistant volume storage 2020-12-22 16:39:37 +01:00
Sylvain
40c78974b8 refactoring of reservation:pay_and_save
TODO: debug with tests,
refactor subscription:pay_and_save on the same template
2020-12-16 18:33:43 +01:00
Sylvain
908ccf5bab handle reservations+subscription w/ schedule
integration testing for payment schedule
debug reservation process
2020-12-14 17:42:23 +01:00
Sylvain
678af0de1f using stripe api + improved ui + ui to configure schedules reference
TODO: as an admin, I can select if payment_method = (stripe || local)
2020-11-16 16:37:40 +01:00
Sylvain
b5504d2342 create stripe subscription with all data 2020-11-12 16:44:55 +01:00
Sylvain
ed5b90cbdc add stp_product_id to all items that can be scheduled 2020-11-12 12:14:51 +01:00
Sylvain
78847bdb4b WIP: create subscription on stripe 2020-11-10 17:02:21 +01:00
Sylvain
45800034c0 link payment_schedule_item with invoice 2020-11-10 13:43:09 +01:00
Sylvain
21bd1312bc compute payment schedule + basic display 2020-11-03 16:50:11 +01:00
Sylvain
6be51feeb2 save stp_price_id for each plan 2020-10-27 16:03:20 +01:00
Sylvain
840be2c6c0 renamed RepaymentSchedule to PaymentSchedule 2020-10-27 16:02:41 +01:00
Sylvain
52f3bd956f database structure for payment schedule 2020-10-27 11:32:20 +01:00
Sylvain
181ec38192 Removed fab-manager email address from the seeds 2020-10-26 16:40:50 +01:00
Sylvain
13bc5334cc ability to configure until when the events are shown on the home page 2020-09-29 09:39:32 +02:00
Sylvain
730ebb8742 updated db structure 2020-08-31 10:58:39 +02:00
Sylvain
d708f0a3e7 [bug] unable to search for projects on OpenLab 2020-08-24 16:19:03 +02:00
Sylvain
15b9c7b4b9 test export availabilites 2020-07-22 11:16:43 +02:00
Sylvain
19fb816d36 Enhanced rake task to create fixtures for test cases 2020-07-22 09:45:20 +02:00
Sylvain
7bf06ff23e debug footprints 2020-07-21 19:25:21 +02:00
Sylvain
69373d3def [bug] unable to seed the database 2020-07-21 09:08:20 +02:00
Sylvain
4fbd88ffd7 beta preview of the upgrade script 2020-06-30 16:11:12 +02:00
Sylvain
e644e4894a using unaccent to build project search index + updated doc 2020-06-30 15:58:39 +02:00
Sylvain
06470c1366 upgrade pg_trgm from 1.1 to 1.3 2020-06-29 14:40:21 +02:00
Sylvain
9596d74914 include postgresql-client in dockerfile to deal with rails db tasks 2020-06-29 10:54:42 +02:00
Sylvain
e95b270433 multiples fixes
- improved project search
- fix db schema (sql)
- improved doc
- removed es_language_analyzer var (deprecated)
2020-06-24 17:22:38 +02:00
Sylvain
8137418904 improved test for accounting periods 2020-06-24 15:25:17 +02:00
Sylvain
e288f66997 use search index to speed up projects searches 2020-06-23 17:06:59 +02:00
Sylvain
1a6cd356bf WIP: using postgres for full-text search in projects 2020-06-22 16:28:05 +02:00
Sylvain
40dd39304e enable/disable statistics module fomr the UI 2020-06-17 12:20:51 +02:00
Sylvain
42872ab107 configure wallet from UI 2020-06-15 12:44:43 +02:00
Sylvain
f46c78a476 read email_confirmation_required from the UI 2020-06-15 11:57:13 +02:00
Sylvain
48bcf0b838 configure invoices prefix from the DB 2020-06-15 10:58:15 +02:00
Sylvain
78518e17fb read stripe_currency from the UI
We prevent the currency from being changed if any stripe payment was made, because a stripe user cannot made pay with different currencies. If we try to charge a user with a different currency than the currency he used for a previous payment, this will fail; so we must prevent this case
2020-06-10 16:37:11 +02:00
Sylvain
d5939a9de5 set the stripe keys from the UI 2020-06-09 13:09:31 +02:00
Sylvain
06b5da9df8 configure online payment from the UI 2020-06-08 17:42:59 +02:00
Sylvain
45013be950 configure default_host & default_protocol from env
reverts 478a6c40 (partially) & b2434864
2020-06-02 18:29:24 +02:00
Sylvain
075b642cc8 remove useless & broken item_url(...) methods 2020-06-02 11:37:24 +02:00
Sylvain
b243486444 set default values 2020-06-01 17:36:22 +02:00
Sylvain
0617e4cd26 configure default_mail_from from the UI 2020-06-01 12:15:16 +02:00
Sylvain
434c211ccf configure the features tour display mode from the UI 2020-05-27 18:49:53 +02:00
Sylvain
2d628d8826 disable the invoicing module from the UI config panel 2020-05-26 18:07:07 +02:00
Sylvain
6cc6bba7ce refactored app to gather spaces module status from the settings 2020-05-26 13:59:40 +02:00
Sylvain
a63340188b configure default slot duration from settings panel 2020-05-25 12:55:01 +02:00
Sylvain
419605e551 configuration of google analytics tracking ID through the settings interface 2020-05-25 12:55:00 +02:00
Sylvain
2c17cfafed initialize phoneRequired from env 2020-05-25 12:54:20 +02:00
Sylvain
13bcd9a1f8 use phoneRequired from settings instead of env 2020-05-25 12:54:19 +02:00
Sylvain
f80eb230ca refactored code to use Setting.get 2020-05-25 12:54:19 +02:00
Sylvain
0d52b36850 Version 4.4.0 2020-05-12 11:13:47 +02:00
Sylvain
0ea68af329 updated schema 2020-05-11 14:56:25 +02:00
Sylvain
10825e198c prevent recreate periods in the future 2020-05-11 11:28:09 +02:00
Sylvain
1fdea63828 correct some errors due to Price.compute refactoring 2020-05-11 10:56:23 +02:00
Sylvain
06502cde33 [bug] accounting periods totals are wrong for periods closed after 2019-08-01 2020-05-11 10:10:52 +02:00
Sylvain
3319e68526 Auto-adjusts text colors based on the selected theme colors 2020-05-04 13:20:57 +02:00
Sylvain
29e7ac2f08 [bug] background image of the profile is not shown and wrong menu hover color 2020-05-04 12:10:13 +02:00
Sylvain
fc0f153e8a fixed strings 2020-04-20 10:20:42 +02:00
Sylvain
ff75a96ecc Ability to define, per availability, a custom duration for the reservation slots 2020-04-15 18:08:02 +02:00
Sylvain
5f6c293046 fixes in-context translation + fixes migration 20160704095606 2020-04-08 15:55:08 +02:00
Sylvain
422e3c6236 [bug] migration 20160704095606 cannot run due to GDPR refactoring 2020-04-08 15:00:22 +02:00
Sylvain
a13c3af88c [bug] migration 20160704095606 cannot run due to GDPR refactoring 2020-04-08 14:14:50 +02:00
Sylvain
f2a76732e5 Compatible database with Fab-manager v1, to allow upgrades 2020-04-08 12:58:59 +02:00
Sylvain
e3ea83fce2 [bug] default twitter feed is invalid 2020-04-06 16:59:28 +02:00
Sylvain
df8ff77597 fix migrations for rails 5 + use maildev instead of mailcatcher + fix tests script 2020-03-25 12:35:08 +01:00
Sylvain
279012e595 [bug] default invoice logo is broken and prevent invoice generation + updated seeds 2020-03-03 14:38:09 +01:00
Sylvain
f5955b74d2 reposition tour modals to prevent screen overflow
also: fix issue on tour completed
+ fix issue on statistics when no plans created
+ info area on statistics when no plans created
2020-03-03 11:20:17 +01:00
Sylvain
a44bf85014 Merge branch 'slot_is_only_subscriptions' into dev 2020-03-02 16:27:26 +01:00
Sylvain
147a78de96 Merge branch 'tour' into dev 2020-03-02 15:39:45 +01:00
Sylvain
d833f6d812 harmonize Fab-manager trademark syntax 2020-02-26 10:19:43 +01:00
Sylvain
4db219b204 [ongoing] FEATURE_TOUR_DISPLAY 2020-02-25 18:02:41 +01:00
Sylvain
5b46edd748 welcome tour + save completed tours in database 2020-02-18 17:36:45 +01:00
Sylvain
df6879da77 fix seeds file due to i18n refactoring 2020-02-17 12:37:25 +01:00
Sylvain
372d7f936b typos & syntax 2020-02-11 11:46:40 +01:00
Du Peng
74cc69d1bd Ability to configure reservation slot restrict for plans 2020-02-07 17:37:00 +01:00
Du Peng
767a8cd332 fix _t function in seed 2020-02-03 11:31:33 +01:00
Sylvain
656a603d6c customize home page css 2020-01-27 17:10:29 +01:00
Sylvain
34a3286870 fix homepage layout 2020-01-22 14:16:35 +01:00
Sylvain
75c49c06f2 move homepage components to standalone directives
- events
2020-01-22 12:52:51 +01:00
Sylvain
1968ba601d [ongoing] move homepage components to standalone directives 2020-01-22 12:23:51 +01:00
Sylvain
b85c7ac00b admin set its customized html template for the home page & can reset it to factory value 2020-01-22 11:53:40 +01:00
Sylvain
15ab3c1305 Ability to customize the title of the link to the about page 2020-01-21 16:16:12 +01:00
Sylvain
059096c2dd privacy option for fab-analytics 2020-01-15 10:46:04 +01:00
Sylvain
64764e5498 check version on hub & [ongoing] health endpoint 2020-01-13 17:05:53 +01:00
Sylvain
510c802ab1 messages variations depending on slot duration 2019-12-09 10:27:50 +01:00
Sylvain
60755a2c2a Merge remote-tracking branch 'origin/fix-time-now' into dev 2019-12-03 15:51:22 +01:00
Sylvain
cca6b14f58 import events asyncronously from icalendar 2019-12-02 15:53:24 +01:00
Nicolas Florentin
77cf8c8218 replaces almost all Time.now by DateTime.current 2019-12-02 11:57:25 +01:00
Sylvain
97d93cd622 added a name to imported calendar 2019-11-27 17:39:19 +01:00
Sylvain
baf8cfb487 iCalendar server api & db model 2019-11-27 17:05:19 +01:00
Sylvain
a60a39ff9e [ongoing] create multiple availabilities according to UI 2019-11-13 12:13:22 +01:00
Sylvain
1cc1bd23b7 Ability to fully rebuild the projets index in ElasticSearch with rake fablab🇪🇸build_projects_index 2019-10-16 14:37:43 +02:00
Sylvain
2897eec723 various bugfixes
- in profile_complete form, the user's group is not selected by default
- missing asterisks on some required fields in profile_complete form
- renamed default DatabaseProvider from Fablab to FabManager
2019-10-09 14:41:32 +02:00
Sylvain
a7a929ddbc integration unit test for imports + fixed import result colors in UI + fixed test fixtures 2019-10-01 14:32:30 +02:00
Sylvain
4deaf1f75a [ongoing] import members from csv 2019-09-25 16:37:42 +02:00
Sylvain
a532efd198 upload csv file to the server through the API and save it on the disk 2019-09-24 17:42:50 +02:00
Sylvain
1fa36d4029 renamed avoir_mode to payment_method 2019-09-17 14:48:06 +02:00
Sylvain
224b0d6dee Merge branch 'sca' into dev 2019-09-12 12:53:56 +02:00
Sylvain
d977838d52 fix tests according to changes for stripe SCA 2019-09-11 16:20:47 +02:00
Sylvain
4d0ac9b3ca using stp_payment_intent_id instead of stp_invoice_id on new invoices 2019-09-10 16:45:45 +02:00
Sylvain
26c98394ac fixed export service 2019-08-01 09:49:09 +02:00
Sylvain
f772bc3509 api endpoint and worker to export accounting data 2019-07-30 11:43:51 +02:00
Sylvain
ca61e4e08e [bug] SubscriptionExpireWorker cannot run due to wrong expiration column in SQL query 2019-07-10 10:52:29 +02:00
Sylvain
718d163d13 Version 4.0.1 2019-06-17 15:32:46 +02:00
Sylvain
f37b4ffca2 [bug] migration 20190523140823 may not run if an admin was deleted 2019-06-17 15:28:54 +02:00
Sylvain
ff784aef1a Version 4.0.0 2019-06-17 12:34:12 +02:00
Sylvain
92381ce4bc update default policy 2019-06-17 10:49:27 +02:00
Sylvain
dd4ad1e935 updated default policy 2019-06-13 17:16:39 +02:00
Sylvain
708c966d61 default policy udpate 2019-06-13 13:47:21 +02:00
Sylvain
12cf9cfd7d privacy policy draft 2019-06-12 14:37:05 +02:00
Sylvain
a53c6e80e7 move invoice->operator to invoicing_profile + minor fixes to handle user deletion 2019-06-12 12:22:38 +02:00
Sylvain
37b9e3da60 link statistic profile to invoices 2019-06-11 10:02:48 +02:00
Sylvain
818d1357a9 save user cration date in statistic_profile 2019-06-06 16:54:09 +02:00
Sylvain
cfd33c3a52 migrate projects to statistic_profile 2019-06-06 16:34:53 +02:00
Sylvain
35da65b686 change statistic_service to use statistic_profile + use raw sql in migrations 2019-06-06 13:58:49 +02:00
Sylvain
fe2a6f7120 migrate trainings to statistic_profile and adjust code 2019-06-06 12:00:21 +02:00
Sylvain
f0c5b0eb09 init StatisticProfileTraining 2019-06-05 16:17:56 +02:00
Sylvain
4c033614ae [ongoing] migrate subscriptions & reservations to statistic_profile 2019-06-04 16:50:23 +02:00
Sylvain
52992ac9d5 move gender & birthday to statistic_profile 2019-06-04 13:33:00 +02:00
Sylvain
42e73e4315 [ongoing] statistic profile 2019-06-03 17:25:04 +02:00
Sylvain
9ef2f142bd link HistoryValue to InvoicingProfile + improved invoices tests 2019-06-03 16:51:43 +02:00
Sylvain
7ed97ef35a link wallet & its transactions to invoicingprofile 2019-06-03 16:00:09 +02:00
Sylvain
6011f27268 finish moving organization & address to invoiving profile: fix create & edit user 2019-06-03 12:06:01 +02:00
Sylvain
a211ad39ff moving organization & address to invoicingProfile + refactored doc about postgre 2019-05-29 14:28:14 +02:00
Sylvain
142e07f3c9 update code to use invoicingprofile 2019-05-29 12:01:24 +02:00