Yohann D'ANELLO
|
2eb601bd66
|
💥 Improve performances
|
2020-07-25 17:25:57 +02:00 |
ynerant
|
1735ba25a8
|
Merge branch 'beta-soon' into 'master'
Beta soon
See merge request bde/nk20!85
|
2020-07-21 22:47:50 +02:00 |
Yohann D'ANELLO
|
ac5041f3ec
|
Better club search bar
|
2020-06-21 22:27:32 +02:00 |
Pierre-antoine Comby
|
f2ac0cd8cf
|
order table of club for Pollion
|
2020-06-02 09:37:25 +02:00 |
Yohann D'ANELLO
|
8c0ccdfdd0
|
Don't change the password of another member (+ minor fixes on WEI app)
|
2020-04-27 20:25:02 +02:00 |
Yohann D'ANELLO
|
eb39aff1ab
|
Fix email validation, turbolinks link
|
2020-04-27 17:59:34 +02:00 |
Yohann D'ANELLO
|
b81f186866
|
Add PDF member lists
|
2020-04-23 18:28:16 +02:00 |
Yohann D'ANELLO
|
46464f535c
|
Update translations
|
2020-04-22 17:30:17 +02:00 |
Yohann D'ANELLO
|
c31fb0c13d
|
Add department and promotion in Profile model
|
2020-04-22 16:25:09 +02:00 |
Yohann D'ANELLO
|
b23814aef0
|
Handle credits from the Société générale
|
2020-04-22 03:26:45 +02:00 |
Yohann D'ANELLO
|
080510bcf2
|
Add WEI form on signup form
|
2020-04-16 23:31:36 +02:00 |
Yohann D'ANELLO
|
db67598b25
|
Validate WEI memberships
|
2020-04-14 04:46:52 +02:00 |
Yohann D'ANELLO
|
36b26e0baa
|
Validation form (only front)
|
2020-04-14 03:41:26 +02:00 |
Yohann D'ANELLO
|
a186ccbb26
|
Update WEI models
|
2020-04-11 17:42:08 +02:00 |
Yohann D'ANELLO
|
fc511689b0
|
Update mail translation
|
2020-04-09 22:03:26 +02:00 |
Yohann D'ANELLO
|
e067b19d41
|
Paginate memberships and transactions
|
2020-04-06 19:51:39 +02:00 |
Yohann D'ANELLO
|
bd41560f45
|
Update permission fixtures
|
2020-04-06 10:45:32 +02:00 |
Yohann D'ANELLO
|
f833f1c46c
|
Comment code
|
2020-04-06 08:58:39 +02:00 |
Yohann D'ANELLO
|
2c3127c746
|
Société générale can pay BDE membership renewal (only once)
|
2020-04-05 22:35:56 +02:00 |
Yohann D'ANELLO
|
c513759515
|
Credit note for membership renewals
|
2020-04-05 21:56:56 +02:00 |
Yohann D'ANELLO
|
515edc4459
|
Credit note for new memberships
|
2020-04-05 18:37:04 +02:00 |
Yohann D'ANELLO
|
5b61db8821
|
We adhere other users, not ourself...
|
2020-04-05 16:18:56 +02:00 |
Yohann D'ANELLO
|
f286f99ced
|
Handle payments from the Société Générale, closes #15
|
2020-04-05 15:31:39 +02:00 |
Yohann D'ANELLO
|
3516b1fa04
|
Add links to resend mail confirmations
|
2020-04-05 09:48:23 +02:00 |
Yohann D'ANELLO
|
fbc25240e6
|
Validate registrations, closes #14, #18, #19
|
2020-04-05 09:09:21 +02:00 |
Yohann D'ANELLO
|
b1cd46bf7d
|
Invalidate registrations, fix profile creation
|
2020-04-05 08:01:51 +02:00 |
Yohann D'ANELLO
|
f10497bac3
|
List pending users
|
2020-04-05 06:40:03 +02:00 |
Yohann D'ANELLO
|
49807d33d9
|
Use a separate app for registration
|
2020-04-05 05:17:28 +02:00 |
Yohann D'ANELLO
|
0f77b9df9a
|
Unvalidate e-mail when the user changes it, but the user still active
|
2020-04-05 04:37:29 +02:00 |
Yohann D'ANELLO
|
26281af673
|
Send an e-mail verification to a new registered user
|
2020-04-05 04:26:42 +02:00 |
Yohann D'ANELLO
|
be42801709
|
The memoization doesn't work when objects don't have a primary key.
|
2020-04-02 14:50:28 +02:00 |
Yohann D'ANELLO
|
3f5faa0b05
|
Add tab for user list
|
2020-04-01 20:56:24 +02:00 |
Yohann D'ANELLO
|
5eb08fd822
|
Dynamic user research
|
2020-04-01 20:14:16 +02:00 |
Yohann D'ANELLO
|
2853fe252b
|
Renew memberships
|
2020-04-01 18:47:56 +02:00 |
Yohann D'ANELLO
|
356c8588e7
|
Users that are not member of the club Kfet can't have a negative balance
|
2020-04-01 17:00:06 +02:00 |
Yohann D'ANELLO
|
92ab5ee3af
|
Fix memberships with clubs without memberships (we always need treasurers...)
|
2020-04-01 04:34:42 +02:00 |
Yohann D'ANELLO
|
535c493bc7
|
Fix some issues
|
2020-04-01 04:20:47 +02:00 |
Yohann D'ANELLO
|
0df0f3f66b
|
Membership fees for paid and unpaid students, closes #43
|
2020-04-01 04:07:55 +02:00 |
Yohann D'ANELLO
|
d5b010980b
|
Full membership support
|
2020-04-01 03:42:19 +02:00 |
Yohann D'ANELLO
|
bf9789bd9e
|
Restructurate memberships, closes #16
|
2020-03-31 23:54:14 +02:00 |
Yohann D'ANELLO
|
e98693b214
|
Memberships are optional for clubs
|
2020-03-31 16:22:11 +02:00 |
Yohann D'ANELLO
|
dd3b7bd7e5
|
Remove note activities
|
2020-03-31 14:57:44 +02:00 |
Yohann D'ANELLO
|
1aae18e6a6
|
Improved permissions, 404 and 403 errors will be more frequent (when we type an invalid URL)
|
2020-03-31 04:16:30 +02:00 |
Yohann D'ANELLO
|
c384ee02eb
|
Implement a new type of note (see #45)
|
2020-03-31 01:03:30 +02:00 |
Yohann D'ANELLO
|
fb5796d35e
|
Guests can't be invited more than 5 times a year and a member can't invite more than 3 people per activity.
|
2020-03-30 00:42:32 +02:00 |
Yohann D'ANELLO
|
ceb5690838
|
Invite people
|
2020-03-27 18:02:22 +01:00 |
Yohann D'ANELLO
|
f09364d3d8
|
Custom auto-complete fields, remove DAL requirement
|
2020-03-27 16:19:33 +01:00 |
Yohann D'ANELLO
|
823bcfe781
|
Fix CI
|
2020-03-27 14:19:55 +01:00 |
Yohann D'ANELLO
|
dadd840645
|
Merge remote-tracking branch 'origin/master' into activity
|
2020-03-27 14:16:10 +01:00 |
Pierre-antoine Comby
|
09fb0e1470
|
Merge branch 'master' into front_club
|
2020-03-27 14:07:22 +01:00 |
Pierre-antoine Comby
|
e27b456aea
|
Merge branch 'parent-club' into 'master'
Resolve "Club Parent"
Closes #42
See merge request bde/nk20!65
|
2020-03-27 13:29:43 +01:00 |
Yohann D'ANELLO
|
213e5a8369
|
Fix CI
|
2020-03-27 00:40:35 +01:00 |
Pierre-antoine Comby
|
d9cdb01350
|
remove alias handling backend, gonna use DRF
|
2020-03-26 17:44:01 +01:00 |
Benjamin Graillot
|
59cd166b79
|
[member] tabs --> spaces
|
2020-03-25 18:05:46 +01:00 |
Pierre-antoine Comby
|
33e3657120
|
add aliases view to clubs
|
2020-03-25 18:00:40 +01:00 |
Benjamin Graillot
|
c86ddf17ad
|
[member] Check membership of parent club
|
2020-03-25 17:54:28 +01:00 |
Pierre-antoine Comby
|
a41e51e23a
|
add member get side information
|
2020-03-25 17:42:54 +01:00 |
Pierre-antoine Comby
|
26d70c4ef9
|
page title and edit buttons
|
2020-03-25 17:25:44 +01:00 |
Pierre-antoine Comby
|
826573f553
|
whitespaces compliance
|
2020-03-25 16:58:15 +01:00 |
Pierre-antoine Comby
|
2d18cb983f
|
fee in cents for fixture and initial picture
|
2020-03-25 16:12:57 +01:00 |
Pierre-antoine Comby
|
ff17f1e877
|
Club view should as good as profile ones
|
2020-03-25 16:11:44 +01:00 |
Benjamin Graillot
|
a4cb19e5b1
|
[member] Added parent_club field to Club
|
2020-03-23 09:07:39 +01:00 |
Yohann D'ANELLO
|
d494a3e7fa
|
Quality assurance
|
2020-03-20 18:13:34 +01:00 |
Yohann D'ANELLO
|
091c427707
|
Restructurate code
|
2020-03-20 14:43:35 +01:00 |
Yohann D'ANELLO
|
3f2b21f7f4
|
Fix CI
|
2020-03-20 02:14:43 +01:00 |
Yohann D'ANELLO
|
6fc43e651e
|
More optimisation
|
2020-03-20 01:46:59 +01:00 |
Yohann D'ANELLO
|
f80cb635d3
|
Optimize permissions, full support add perms, more fixtures
|
2020-03-20 00:06:28 +01:00 |
Yohann D'ANELLO
|
7794210cc8
|
Being superuser is not enough (must have the correct mask), add some initial fixtures
|
2020-03-19 18:53:06 +01:00 |
Yohann D'ANELLO
|
95315cdbe2
|
Implements permission masks
|
2020-03-19 16:12:52 +01:00 |
Yohann D'ANELLO
|
730d37c620
|
Protect views from viewing if the user has no right to view an object
|
2020-03-19 02:26:06 +01:00 |
Yohann D'ANELLO
|
057f42fdb6
|
Handle permissions (and it seems working!)
|
2020-03-18 14:42:35 +01:00 |
Yohann D'ANELLO
|
112d4b6c5a
|
Merge branch 'consos' into rights
# Conflicts:
# apps/logs/signals.py
# note_kfet/settings/base.py
|
2020-03-17 21:11:14 +01:00 |
Yohann D'ANELLO
|
a1f37f0eea
|
Validation/devalidation of a transaction on profile page
|
2020-03-17 17:48:55 +01:00 |
Yohann D'ANELLO
|
2bd59544ec
|
Remove two whitespaces for tox
|
2020-03-11 17:10:16 +01:00 |
ynerant
|
46e472ed6d
|
Merge branch 'master' into 'fix-what-i-broke'
# Conflicts:
# templates/base.html
|
2020-03-11 17:03:44 +01:00 |
Benjamin Graillot
|
b17ff59984
|
Added indexes for Membership
|
2020-03-11 13:51:26 +01:00 |
Benjamin Graillot
|
c8f5451ea4
|
Added indexes for Transaction, Alias and Profile
|
2020-03-11 13:46:47 +01:00 |
Yohann D'ANELLO
|
417cd5da04
|
Improve REST API with filters
|
2020-03-11 11:15:03 +01:00 |
Yohann D'ANELLO
|
aa731d1ae4
|
Regexp must begin with `^`
|
2020-03-10 17:16:03 +01:00 |
Pierre-antoine Comby
|
0de2c18bec
|
profile is first created via signal.
|
2020-03-09 18:08:37 +01:00 |
Yohann D'ANELLO
|
d0206fb790
|
Make erdnaxe be happy
|
2020-03-07 22:28:59 +01:00 |
Pierre-antoine Comby
|
663ee072d4
|
always save to png
|
2020-03-07 17:58:41 +01:00 |
Yohann D'ANELLO
|
30ce17b644
|
Update a lot of things
|
2020-03-07 13:12:17 +01:00 |
Yohann D'ANELLO
|
a014a97e14
|
Merge remote-tracking branch 'origin/rights' into rights
|
2020-03-07 11:21:08 +01:00 |
Benjamin Graillot
|
9d61e217e9
|
[permission] Only split permission up to 3
|
2020-03-07 11:21:19 +01:00 |
Yohann D'ANELLO
|
0884270474
|
Merge branch 'master' into rights
# Conflicts:
# note_kfet/settings/base.py
|
2020-03-07 10:42:51 +01:00 |
ynerant
|
6f7374710b
|
Merge branch 'master' into 'logging'
# Conflicts:
# locale/de/LC_MESSAGES/django.po
# locale/fr/LC_MESSAGES/django.po
|
2020-03-07 10:32:17 +01:00 |
Pierre-antoine Comby
|
38feb693f3
|
crop,resized, and save picture at the right place
|
2020-03-06 20:07:15 +01:00 |
Pierre-antoine Comby
|
08b97e722b
|
add support for cropping image. WIP.
|
2020-03-05 23:32:01 +01:00 |
Pierre-antoine Comby
|
2e8505e9b4
|
ménage dans les imports
|
2020-03-04 16:34:52 +01:00 |
Pierre-antoine Comby
|
fd74080ce3
|
profile picture update view is working
|
2020-03-04 16:34:12 +01:00 |
Pierre-antoine Comby
|
c4198a64af
|
add button for profile pic view
|
2020-03-03 14:45:50 +01:00 |
Pierre-antoine Comby
|
f992c117f4
|
rename second_form to profile_form
|
2020-03-03 14:25:16 +01:00 |
Pierre-antoine Comby
|
901454f338
|
rename template for consistency
|
2020-03-03 11:05:02 +01:00 |
Pierre-antoine Comby
|
b7e68722aa
|
front improvement on alias page
|
2020-03-01 16:20:13 +01:00 |
Pierre-antoine Comby
|
35d5bcdf0f
|
Deletion of alias now possible!
|
2020-03-01 00:25:53 +01:00 |
Pierre-antoine Comby
|
27391049f2
|
remove duplicated form
|
2020-02-28 16:12:35 +01:00 |
Pierre-antoine Comby
|
db95944574
|
add delete boutons, work with only one alias
|
2020-02-28 15:25:45 +01:00 |
Pierre-antoine Comby
|
c77bc0c032
|
add deleteView for aliases
|
2020-02-28 13:52:15 +01:00 |
Pierre-antoine Comby
|
f77351b444
|
Add view for aliases
|
2020-02-28 13:37:31 +01:00 |
Pierre-antoine Comby
|
0ea0d77707
|
fix #27
|
2020-02-27 20:56:06 +01:00 |
Yohann D'ANELLO
|
b23237f669
|
Uncomment required line
|
2020-02-27 16:26:07 +01:00 |
Yohann D'ANELLO
|
9cd050e2f0
|
Logging is finally processed at post saved, but old instance is querried
|
2020-02-27 16:25:18 +01:00 |
Yohann D'ANELLO
|
125f437345
|
Profiles are saved after the user
|
2020-02-27 15:41:15 +01:00 |
Yohann D'ANELLO
|
3c52c1d002
|
Users have now automatically an attached profile to a user (fix an old bug)
|
2020-02-27 15:36:12 +01:00 |
Pierre-antoine Comby
|
707770a5b4
|
fix #28
|
2020-02-25 22:55:27 +01:00 |
Pierre-antoine Comby
|
eb6f142bf8
|
autofocus of signup form on first field
|
2020-02-25 22:26:43 +01:00 |
Pierre-antoine Comby
|
6ad7974612
|
import script is move to new repository
|
2020-02-24 14:17:48 +01:00 |
Pierre-antoine Comby
|
9207c5cdec
|
add aliases import
|
2020-02-23 21:11:42 +01:00 |
Pierre-antoine Comby
|
e850c5755b
|
clean code, dont activate user
|
2020-02-23 21:10:48 +01:00 |
Pierre-antoine Comby
|
b18e5b03a4
|
add boutons import
|
2020-02-23 18:45:21 +01:00 |
Pierre-antoine Comby
|
ea5737ac8f
|
refactoring in atomic function
|
2020-02-23 16:43:13 +01:00 |
Pierre-antoine Comby
|
889ddc15f8
|
handle password the correct way
|
2020-02-23 14:23:02 +01:00 |
Pierre-antoine Comby
|
efe32e45bf
|
Merge branch 'import_nk15' of gitlab.crans.org:bde/nk20 into import_nk15
|
2020-02-23 13:54:19 +01:00 |
Pierre-antoine Comby
|
8feb2ec52a
|
Merge branch 'patch_passwords' into 'import_nk15'
Import NK15 passwords
See merge request bde/nk20!12
|
2020-02-23 13:54:02 +01:00 |
Pierre-antoine Comby
|
f47d803a2c
|
import comptes table
|
2020-02-23 13:47:12 +01:00 |
Pierre-antoine Comby
|
5af0058858
|
Merge branch 'master' into import_nk15
|
2020-02-22 22:15:51 +01:00 |
Pierre-antoine Comby
|
c8dd41c1d7
|
Merge branch 'initial_fixtures' into 'master'
Initial fixtures
See merge request bde/nk20!13
|
2020-02-22 22:00:36 +01:00 |
Pierre-antoine Comby
|
f1b442932f
|
Use membership parameters according to BDE status
|
2020-02-22 21:56:02 +01:00 |
Pierre-antoine Comby
|
0db2881468
|
Merge branch 'master' into import_nk15
|
2020-02-22 16:34:17 +01:00 |
Yohann D'ANELLO
|
3fd99ebac7
|
Ability to disable cache storage
|
2020-02-21 18:28:21 +01:00 |
Alexandre Iooss
|
b395d3a633
|
Overflow on collapsing tables and Bootstrap4 style
|
2020-02-21 12:29:11 +01:00 |
Alexandre Iooss
|
45ce2eab9e
|
Two colomn profile page
|
2020-02-21 11:53:37 +01:00 |
Alexandre Iooss
|
43fd765a34
|
Title on profile update page
|
2020-02-21 11:17:14 +01:00 |
Alexandre Iooss
|
a304f6a97d
|
Some initial data
|
2020-02-20 22:10:10 +01:00 |
Yohann D'ANELLO
|
e28b19b353
|
Import NK15 passwords
|
2020-02-20 10:26:00 +01:00 |
Pierre-antoine Comby
|
4fe61fdc5f
|
fix json file format
test struct of json
json file finish
|
2020-02-19 19:23:10 +01:00 |
Alexandre Iooss
|
204fe53047
|
Remove broken code
|
2020-02-18 21:47:03 +01:00 |
Alexandre Iooss
|
4bbd464f9c
|
Unify file headers
|
2020-02-18 21:30:26 +01:00 |
Alexandre Iooss
|
e679a4b629
|
Fix formatting issues
|
2020-02-18 21:14:29 +01:00 |
Alexandre Iooss
|
f89d91e524
|
Format code
|
2020-02-18 12:31:15 +01:00 |
Alexandre Iooss
|
55722b801a
|
Split API in each app
|
2020-02-18 11:58:42 +01:00 |
Yohann D'ANELLO
|
987b898a33
|
Auth token is hidden
|
2020-02-17 23:30:55 +01:00 |
Yohann D'ANELLO
|
b7383b35f7
|
Manage auth token
|
2020-02-17 21:32:08 +01:00 |
Yohann D'ANELLO
|
559445c8b4
|
Add some decoration
|
2020-02-17 19:44:56 +01:00 |
Yohann D'ANELLO
|
55977bcbe7
|
Token authentication
|
2020-02-17 19:25:33 +01:00 |
Yohann D'ANELLO
|
c884cbb0ad
|
Add some comments
|
2020-02-17 11:36:46 +01:00 |
Yohann D'ANELLO
|
3ce5f31411
|
Cannot set username that is similar to an alias we don't own
|
2020-02-17 11:21:05 +01:00 |
Yohann D'ANELLO
|
00d560c20e
|
Merge branch 'master' into api
# Conflicts:
# apps/note/forms.py
# apps/note/urls.py
# apps/note/views.py
|
2020-02-16 22:25:00 +01:00 |
Pierre-antoine Comby
|
9cc0731ded
|
Merge branch 'consos' into 'master'
Consos
See merge request bde/nk20!7
|
2020-02-09 15:47:19 +01:00 |
Yohann D'ANELLO
|
732f8bc3d8
|
Préparation du code pour le système de droits & filtrage par type de note pour l'auto-complétion
|
2020-02-08 23:24:49 +01:00 |
Yohann D'ANELLO
|
142b3359e3
|
Comment some code
|
2020-02-08 21:40:32 +01:00 |
Yohann D'ANELLO
|
ce012400e1
|
Club members autocomplete
|
2020-02-08 20:39:37 +01:00 |
Pierre-antoine Comby
|
71a88e84f7
|
initiate import command
|
2020-02-07 22:23:37 +01:00 |
Yohann D'ANELLO
|
5633f0123d
|
Clean code
|
2020-02-07 17:02:07 +01:00 |
Yohann D'ANELLO
|
c28884114c
|
Add some doc
|
2020-02-07 00:29:04 +01:00 |
Yohann D'ANELLO
|
8e2b0688b5
|
Add member models in API
|
2020-02-06 23:44:59 +01:00 |
Yohann D'ANELLO
|
edc428a05e
|
Add member models in API
|
2020-02-06 23:43:56 +01:00 |
Yohann D'ANELLO
|
c4a60633f8
|
Consos
|
2020-02-04 01:18:03 +01:00 |
Pierre-antoine Comby
|
b9c3ab5ea8
|
add a profile_update view
|
2020-02-03 19:28:51 +01:00 |
Pierre-antoine Comby
|
e80163ce4d
|
fix signup
|
2020-02-03 19:24:23 +01:00 |
Pierre-antoine Comby
|
37a5b578a4
|
Create user and profile with all field needed
|
2020-02-02 15:42:39 +01:00 |
Pierre-antoine Comby
|
5a7d779a90
|
Add/ Complete docstring for every models.
|
2020-01-21 22:06:06 +01:00 |
Pierre-antoine Comby
|
e2d32b11e2
|
remove trailing whitespace and add docstrings
|
2019-09-23 12:54:08 +02:00 |
Pierre-antoine Comby
|
07d1cd225b
|
[member] add user list and filter
|
2019-09-23 12:50:14 +02:00 |
Benjamin Graillot
|
1ac63cbed1
|
[member] Handle unlimited memberships
|
2019-09-18 16:41:01 +02:00 |
Benjamin Graillot
|
5a831136ae
|
Merge branch 'master' into rights
|
2019-09-18 14:50:36 +02:00 |
Benjamin Graillot
|
67d1d9f7b7
|
Added permission app
|
2019-09-18 14:26:42 +02:00 |
Pierre-antoine Comby
|
7a7cc2bfef
|
minor fixes
|
2019-08-15 23:12:27 +02:00 |
Pierre-antoine Comby
|
3bda5576dd
|
use history table for club detail view
|
2019-08-15 23:11:52 +02:00 |
Pierre-antoine Comby
|
be8f2dc35b
|
use accordion + history table for profil view
|
2019-08-15 23:11:16 +02:00 |
Pierre-antoine Comby
|
cc41409f5e
|
Merge branch 'master' into 'app_member'
# Conflicts:
# apps/member/views.py
|
2019-08-15 19:53:40 +00:00 |
Pierre-antoine Comby
|
10f7ef4045
|
Club list is now clickable
|
2019-08-15 21:52:10 +02:00 |
Pierre-antoine Comby
|
9fe47229fd
|
Detail view of club: member list and history
|
2019-08-15 21:49:59 +02:00 |
Pierre-antoine Comby
|
e1431870d4
|
Club list is now clickable
|
2019-08-15 21:49:32 +02:00 |
Pierre-antoine Comby
|
40c697e57f
|
interface pour ajouter des membres à un club
|
2019-08-14 18:47:46 +02:00 |
PA
|
66b70e69f3
|
Add transaction history list on the user
|
2019-08-14 16:42:05 +02:00 |
Alexandre Iooss
|
8f592ea239
|
Move locales to project root
|
2019-08-14 15:15:02 +02:00 |
Pierre-antoine Comby
|
a0c32890a9
|
add basic profile page
|
2019-08-12 00:30:29 +02:00 |
Pierre-antoine Comby
|
3cce57695d
|
add basic club management
|
2019-08-11 23:25:27 +02:00 |
Pierre-antoine Comby
|
13d67c26bf
|
add simple docstrings
|
2019-08-11 17:52:41 +02:00 |
Pierre-antoine Comby
|
4a52272558
|
fix sign up forms
|
2019-08-11 17:39:05 +02:00 |
Pierre-antoine Comby
|
633663f95d
|
add signup view
|
2019-08-11 16:22:52 +02:00 |
Pierre-antoine Comby
|
fd9b9c34c7
|
move apps to own dir
|
2019-08-11 14:47:44 +02:00 |