Commit graph

823 commits

Author SHA1 Message Date
Thomas Steen Rasmussen b94e737e09 add new bornfiber sponsor logo 2018-06-19 19:24:46 +02:00
Thomas Steen Rasmussen f5be4d68d1 info and shop should use the |trustedcommonmark filter 2018-06-04 08:28:09 +02:00
Thomas Steen Rasmussen 4ad58188b2 change the default for link icons, move import for speakerproposalmodel earlier in dode, and add mark_as_rejected() method on eventproposal model 2018-06-03 23:36:07 +02:00
Thomas Steen Rasmussen 23c42985ae hide url action buttons when not inside the program app, and change urltype icons to include the 'fas' bit of the fontawesome class 2018-06-03 23:34:40 +02:00
Thomas Steen Rasmussen 2305416461 only show tables when at least one proposal is found 2018-06-03 23:24:50 +02:00
Thomas Steen Rasmussen a7a9a24c6c move debug logging so channel messages are not logged, the bot doesn't handle any channel messages anyway and we dont want the data 2018-06-03 22:39:05 +02:00
Thomas Steen Rasmussen 02a7af6303 Make content submission form stuff much nicer. More DRY and more nice. Use one class with a form __init__ kwargs which sets eventtype 2018-06-03 19:41:49 +02:00
Thomas Steen Rasmussen 3180ec457d switch backoffice to use the regular CampViewMixin 2018-06-03 18:33:51 +02:00
Thomas Steen Rasmussen 9c9edff4f7 check for empty duration when cleaning duration field 2018-06-03 17:20:45 +02:00
Thomas Steen Rasmussen 3fb2f44e94 add eventtype icons to event list and event detail views in program 2018-06-03 17:16:35 +02:00
Thomas Steen Rasmussen 64f4eebac3 handle cached_property as well as regular properties in our camp filtering on @property in CampViewMixin 2018-06-03 17:16:00 +02:00
Thomas Steen Rasmussen bff5bb292e add debate as eventtype in bootstrap-devsite, and fix commonmark templatefilter a few places I missed 2018-06-03 16:29:28 +02:00
Thomas Steen Rasmussen 811b8171af working on #232, this commit changes backoffice to be camp specific (although many of the actual functions are camp independent). Add backoffice/mixins.py with BackofficeViewMixin to keep it DRY. Add backoffice views to manage proposals. Move SpeakerProposal and EventProposal detail template to includes to they can be used from backoffice. Rename our commonmark templatetags so the names are more intuitive. 2018-06-03 15:34:04 +02:00
Thomas Steen Rasmussen b34fe62118 small visual fixes, add a button to remove speakerproposal from eventproposal 2018-05-27 17:19:19 +02:00
Thomas Steen Rasmussen 2ba8d153fe fix CFP url on bornhack 2020 frontpage 2018-05-27 16:31:57 +02:00
Thomas Steen Rasmussen 3d100c2f8a hide buttons that modify stuff when CFP is not open or camp is readonly 2018-05-27 16:27:41 +02:00
Víðir Valberg Guðmundsson 183da3d161 Add tagline to small logo for 2018. 2018-05-26 20:22:10 +02:00
Víðir Valberg Guðmundsson 6226417ad7 Fix lookups that were forgotten. 2018-05-26 20:14:48 +02:00
Thomas Steen Rasmussen 8e7dc4f80a move call for sponsors view to the database 2018-05-26 15:22:45 +02:00
Thomas Steen Rasmussen 7d9c730752 remove a couple of mixins that are not needed 2018-05-26 14:53:39 +02:00
Thomas Steen Rasmussen 53fa204455 Merge branch 'master' of github.com:bornhack/bornhack-website 2018-05-26 14:42:28 +02:00
Thomas Steen Rasmussen 9052526264 remove action buttons from proposal list, they can be found in the detail views, helps a lot with the width issues when things have long names 2018-05-26 10:48:38 +02:00
Thomas Steen Rasmussen 24371b629a reenable mails to Content team when speaker/eventproposals are created/updated, change so proposal URLs are opened in new window, add a message in browser when proposals are approved in the admin 2018-05-26 10:24:52 +02:00
Thomas Steen Rasmussen eb807a6853 move call for participation from template to the database, prepare to move call for sponsors in the same way. This commit means we will need to copy the content of the old templates to the prod db after deploy 2018-05-25 14:27:53 +02:00
Thomas Steen Rasmussen 157050d30e make it possible to remove a speakerproposal from an eventproposal, move proposal delete buttons to the proposal detail pages, fix a button here and there 2018-05-24 11:43:46 +02:00
Thomas Steen Rasmussen 1f58471927 default allow_video_recording to checked 2018-05-24 10:23:42 +02:00
Thomas Steen Rasmussen 3e12c98b95 for some reason all our test users were is_staff=True users 2018-05-23 23:34:54 +02:00
Thomas Steen Rasmussen 18c33383b7 add url support for speakerproposals and eventproposals, including new models Url and UrlType. Also switch to Django 2.0 path() syntax in various urls.py files getting rid of a lot of ugly regex \o/ 2018-05-23 23:28:27 +02:00
Víðir Valberg Guðmundsson 5b77cb5aa2 Implement a catchall for the remaining infocategories. 2018-05-20 22:27:41 +02:00
Víðir Valberg Guðmundsson decfa29659 Remove obsolete check. 2018-05-20 22:25:19 +02:00
Víðir Valberg Guðmundsson a8df8f0cee Make team a mandatory field on infocategory.g 2018-05-20 22:11:39 +02:00
Víðir Valberg Guðmundsson 317a1c0b1c Remove camp from infocategory and derive it from team. 2018-05-20 22:10:38 +02:00
Thomas Steen Rasmussen df783168c6 filter speakerproposals by user, and redirect directly to combined submit view if no existing speakerproposals was found 2018-05-20 21:54:36 +02:00
Thomas Steen Rasmussen 1fb4eb7e28 remove help box with status explanations, no room :( 2018-05-20 21:42:11 +02:00
Thomas Steen Rasmussen 84c19d01c1 remove tooltip, add missing update button on speakerproposal detail page 2018-05-20 21:36:33 +02:00
Thomas Steen Rasmussen 4720b34021 link to detail view rather than update view in the tables, shine up the detail views a bit 2018-05-20 21:32:05 +02:00
Thomas Steen Rasmussen 743cf25476 add abstract field for music acts 2018-05-20 21:29:37 +02:00
Thomas Steen Rasmussen 5dc3e17d66 if one or more speakerproposals exist show a list so the user can pick an existing or choose to add a new; use the multimodelform stuff only when the user wants to add a new speakerproposal 2018-05-20 21:11:53 +02:00
Víðir Valberg Guðmundsson 733fdbf4ba Add lists of events/speakers til speaker/event detail template. 2018-05-20 20:53:28 +02:00
Víðir Valberg Guðmundsson c8ab0230cd Add detail view for speaker and event proposals. 2018-05-20 20:29:56 +02:00
Víðir Valberg Guðmundsson b172d678fa Add filter for tracks to the schedule 2018-05-20 20:08:25 +02:00
Víðir Valberg Guðmundsson 03b536ff26 Fix channels consumer for program for the new content flow. 2018-05-20 19:32:51 +02:00
Thomas Steen Rasmussen 039af44a92 new content submission flow monster commit of doom. fixes a large part of #191. Split out /program/ urls into a seperate program/urls.py file in the program: URL namespace. Change call for speakers to call for participation everywhere (I think). Add boolean fields call_for_participation_open and call_for_sponsors_open to Camp model. Switch to font-awesome 5.0.13 and update <i> tags everywhere accordingly. Introduce Tracks so all Events belong to a Track, which in turn belongs to a Camp. Add seperate forms for submitting SpeakerProposals and EventProposals so we can set labels and help_text according to EventType, and remove fields we dont need. Remove Pictures from Speaker and SpeakerProposals, it was almost never used, and was a lot of code/complexity. Remove a few PROPOSAL_STATUS namely DRAFT and MODIFIED_AFTER_APPROVAL to simplify the workflow for submitters. Add description, icon and host_title fields to EventType. Add a CombinedProposalSubmitView which allows users to submit a SpeakerProposal and EventProposal from the same page, introducing a new requirements.txt dependency for django-betterforms==1.1.4. Update bootstrap-devsite to match the new reality. 2018-05-20 18:16:20 +02:00
Víðir Valberg Guðmundsson d3273eb1bb Small fix. 2018-05-20 18:07:42 +02:00
Víðir Valberg Guðmundsson 31f74fa010 Fix stupid mistakes. 2018-05-20 16:43:53 +02:00
Víðir Valberg Guðmundsson 63e34ce387 Food team deals with food. 2018-05-08 17:10:11 +02:00
Víðir Valberg Guðmundsson 650de5c067 Adding "add_teams_to_categories" migration. 2018-05-08 17:06:14 +02:00
Víðir Valberg Guðmundsson 280dd5785f Adding the compiled version of the schedule without speaker pictures. 2018-05-06 22:10:20 +02:00
Víðir Valberg Guðmundsson 91519e8b43 Remove speaker pictures from schedule. 2018-05-06 22:09:19 +02:00
Víðir Valberg Guðmundsson 642c452984 Add option to delete info item. 2018-05-06 21:55:50 +02:00
Stephan Telling 4ad568bb97
update 2018 logo 2018-05-06 20:29:19 +02:00
Stephan Telling 3846ebd3c3
Merge pull request #224 from bornhack/st/add-2020-boilerplate
add 2020 boilerplate
2018-05-06 17:06:16 +02:00
Stephan Telling a94eb6b610
fix dates in camp detail for 2019 2018-05-06 17:05:23 +02:00
Stephan Telling 752dcf99f0 show call for sponsors on sponsors page (#223) 2018-05-06 16:36:07 +02:00
Stephan Telling 1198b6c558
add zibra wireless logo 2018-05-06 16:31:47 +02:00
Stephan Telling 789b2b7cc8
fix copy paste errors in 2019 and 2020 camp templates 2018-05-06 15:19:52 +02:00
Stephan Telling 3bc9c36cb0
improve 2019 call for speakers page 2018-05-06 15:11:10 +02:00
Stephan Telling c67feb3d34
add boilerplate for 2020 camp 2018-05-06 15:10:02 +02:00
Víðir Valberg Guðmundsson 9d5a9daab4 Add what team is responsible for a category. 2018-05-06 13:24:20 +02:00
Víðir Valberg Guðmundsson e662064319 Add edit button to info items on the info page. 2018-05-06 13:22:04 +02:00
Víðir Valberg Guðmundsson 025a5f76b7 Change markup for the team detail page for a better overview/seperation. 2018-05-06 12:57:01 +02:00
Víðir Valberg Guðmundsson 92e394cce9 Add creation of info items. 2018-05-05 00:38:32 +02:00
Víðir Valberg Guðmundsson b668ac0694 Reorganize views for better clarity. Add editing capabilities for Info Items. 2018-05-05 00:19:24 +02:00
Víðir Valberg Guðmundsson 735f17b1f1 Add an FK to teams.Team on info.InfoCategory, version control it using django-reversion. 2018-05-04 23:40:43 +02:00
Thomas Steen Rasmussen 12563c890d fix logic in nickserv_username_changed() signal handler, fix wrong comment in irc3module.py 2018-05-02 22:33:54 +02:00
Thomas Steen Rasmussen e652a8156c use the builtin anti flood stuff in irc3 rather than a crude time.sleep() 2018-04-25 00:14:37 +02:00
Víðir Valberg Guðmundsson d8871b871f Merge remote-tracking branch 'origin/master' into add_tests_to_shop 2018-04-24 18:12:10 +02:00
Víðir Valberg Guðmundsson ac68daf0b6 Update admin. Fix some more tests. Add stock info to template. 2018-04-24 18:06:19 +02:00
Víðir Valberg Guðmundsson a250635132 Added the first tests to the project. Using factory_boy for great success. (#219) 2018-04-22 08:31:10 +02:00
Thomas Steen Rasmussen 9b2e164ddb add a backoffice view to approve public credit names, fixes #217 2018-04-22 08:28:46 +02:00
Víðir Valberg Guðmundsson c9ae322025 Added the first tests to the project. Using factory_boy for great success. 2018-04-21 23:06:41 +02:00
Thomas Steen Rasmussen 99e6fa80c5 add a small delay to avoid the bot triggering chanserv flood protection when a channel with a lot of members needs acl fixing, closes #214 I think 2018-04-21 18:03:36 +02:00
Víðir Valberg Guðmundsson 193c182422 Add stock_amount to product and reflect it in product detail template. (#213) 2018-04-21 17:00:39 +02:00
Víðir Valberg Guðmundsson 2eea0acf0e Woops, wrong model. Fix #179. 2018-04-15 19:45:34 +02:00
Víðir Valberg Guðmundsson 5e6ff4e76f Fix #179. 2018-04-15 19:44:14 +02:00
Víðir Valberg Guðmundsson 969e737d3e Add missing migrations (non db stuff). 2018-04-15 19:30:32 +02:00
Víðir Valberg Guðmundsson be7035594f Add created/updated to CreditNote and Invoice admins. Fix #199. 2018-04-15 17:29:24 +02:00
Víðir Valberg Guðmundsson adc0b71b97 Favicon stuff. Fix #211. 2018-04-15 16:47:13 +02:00
Thomas Steen Rasmussen 7a526156c9 remove CHANNELS_LAYERS and move ASGI_APPLICATION to settings.py 2018-04-14 17:30:12 +02:00
Thomas Steen Rasmussen f50f1fe2e0 fixup asgi.py for channels2 goodness 2018-04-14 17:04:21 +02:00
Thomas Steen Rasmussen 63c2f68990 no need for redis as long as we only have one server 2018-04-14 16:26:01 +02:00
Thomas Steen Rasmussen 281dacc3f9 resolve conflicts in teams/models.py 2018-04-14 15:41:27 +02:00
Thomas Steen Rasmussen 3df21f0fcc one more typo fix 2018-04-13 22:31:50 +02:00
Thomas Steen Rasmussen 1604d29771 another typo 2018-04-13 22:12:29 +02:00
Thomas Steen Rasmussen f73c6a1a11 this is a property of team 2018-04-13 22:01:05 +02:00
Thomas Steen Rasmussen 65e225f4b1 another stupid typo 2018-04-13 21:54:24 +02:00
Thomas Steen Rasmussen fa6981ea22 stupid typo 2018-04-13 21:47:36 +02:00
Thomas Steen Rasmussen a978ccb6ea fix the irc acl method, indentation and too early return 2018-04-13 21:29:19 +02:00
Thomas Steen Rasmussen 43aefc880a add a few things to the TeamAdmin 2018-04-13 20:55:25 +02:00
Thomas Steen Rasmussen 4d8b70f278 typo 2018-04-13 20:29:57 +02:00
Thomas Steen Rasmussen 1c4a4dd259 change irc channel stuff so each team can have both a private and a public irc channel, introduce the concept of a volunteer channel which all teammembers of all teams get access to 2018-04-13 20:22:19 +02:00
Víðir Valberg Guðmundsson 4d6caf6947
Merge branch 'master' into django-and-channels-upgrade 2018-04-13 11:19:48 +02:00
Thomas Steen Rasmussen cefdaaea97 add missing migration after text change (noop migration) 2018-04-11 23:05:36 +02:00
Thomas Steen Rasmussen 9951869a49 add a view to re-add IRC ACL if something went wrong the first time, add button on team_detail page to activate it 2018-04-11 10:22:28 +02:00
Thomas Steen Rasmussen fdb22777c4 make it possible to filter TeamMember by Camp in the Admin 2018-04-11 10:21:37 +02:00
Thomas Steen Rasmussen 547b594c8d add a Django Admin link to the menu if the logged-in user is staff 2018-04-11 10:21:09 +02:00
Thomas Steen Rasmussen 2ed19d22dc add method to setup a non-private channel, to be used later when we handle switching channels between private and public 2018-04-10 17:31:22 +02:00
Thomas Steen Rasmussen 9f4df30b50 tell the user to register nickserv account before entering it here 2018-04-10 17:27:44 +02:00
Thomas Steen Rasmussen 9b8e72a3c0 remove debug print and handle creation cases in signal handler 2018-04-09 23:24:36 +02:00
Thomas Steen Rasmussen edcf363027
Merge teamcomms branch. Refactor team app and add events app.
* Primary commit towards improved team communications. Add new events app to handle team notifications when various events happen, with a Type model which contain event types and a Routing model which controls routing of events to teams. Add shortslug for Camp and Team models. events.handler.py contains the code for sending irc and email notifications for teams. The first two eventtypes have been added in datamigrations, 'ticket_created' and 'public_credit_name_changed', and the tickets and profile apps have been adjusted accordingly. Team IRC channels can be marked as managed and if so the IRC bot will register the team channel with ChanServ if possible. Team IRC channels can be marked as private and the bot will set invite only and maintain an ACL with team members. Users can set their NickServ username in their profile to get on the ACL. Rework all team views and templates. Remove TeamArea model and make Team have an FK to Camp directly. Add docstrings a whole bunch of places. Move signal handlers to apps.py and signal_handlers.py in a few apps. Add basic team mailing list handling, more work to be done. Update bootstrap-devsite script to add more teammembers and add some team event routing for the two eventtypes we have.

* default to the console backend for email unless we specifically ask for realworld email

* fix signal for public_credit_name approval irc message

* fix name display on /people/ page

* fix the text on people pages when all non-responsible team members are anonymous

* handle cases where we fallback to the area responsible properly

* readd removed property, it is used in team_detail view

* make it possible to filter profiles by public_credit_name_approved

* add method for sending IRC messages in ircbot.utils.add_irc_message(), extend periodic bot method to do more than check for outgoing messages so rename it, refactor chanserv and nickserv handling code, create methods to check and join/part IRC channels as needed, maintain channel ACLs for private channels, do not autojoin any channels when instatiating the bot instead rely on the new check_irc_channels() method to join them, rename profile presave signal, add checking for changed nickserv usernames for acl handling, add teammember.irc_channel_acl_ok boolean to track ACL state, add missing help_text properties to TeamMember fields, rename teammember postsave signal, add teammember deleted signal, readd wrongly deleted EnsureTeamMemberResponsibleMixin

* add a few missing early returns
2018-04-09 23:11:05 +02:00
Víðir Valberg Guðmundsson aae3d7e3c9 Got channels2 working. 2018-04-03 20:52:39 +02:00
Víðir Valberg Guðmundsson ff758b15ff Initial work on uprading. 2018-04-03 18:44:10 +02:00
Thomas Steen Rasmussen 03fc20a459 add missing migrations after cleanup and adding of on_delete to all foreignkeys 2018-03-18 09:07:34 +01:00
Thomas Steen Rasmussen 01a55ae149 make our CampViewMixin also filter if camp happens to be a property and not a real model field 2018-03-04 17:17:57 +01:00
Stephan Telling 3acab3f08c
Merge pull request #203 from bornhack/st/on_delete-foreignkey
add on_delete to all foreignkeys
2018-03-04 16:34:42 +01:00
Víðir Valberg Guðmundsson f8c86cac31 Should be team_slug, not slug (#201) 2018-03-04 16:34:10 +01:00
Stephan Telling df5e167376
add on_delete to all foreignkeys 2018-03-04 16:26:35 +01:00
Stephan Telling ba3eaa6546
Merge pull request #202 from bornhack/st/cleanup
Cleanup
2018-03-04 16:17:50 +01:00
Thomas Steen Rasmussen 075a43d245 remove irc3 command plugin for now since we are not using it 2018-03-04 16:17:32 +01:00
Stephan Telling 663099a603 cleanup in bar/ 2018-03-04 16:00:30 +01:00
Stephan Telling aaa4df27db cleanup in camps/ 2018-03-04 16:00:30 +01:00
Stephan Telling d20a964793 cleanup in info/ 2018-03-04 16:00:30 +01:00
Stephan Telling f20695094e cleanup in ircbot/ 2018-03-04 16:00:30 +01:00
Stephan Telling e482501d7b cleanup in news/ 2018-03-04 16:00:30 +01:00
Stephan Telling aac89c0a9c cleanup in profiles/ 2018-03-04 16:00:30 +01:00
Stephan Telling f9ba48ddfb cleanup in program/ 2018-03-04 16:00:30 +01:00
Stephan Telling 5bffb9c53a cleanup in villages/ 2018-03-04 16:00:30 +01:00
Stephan Telling 8026dba14f cleanup in sponsors/ 2018-03-04 16:00:30 +01:00
Stephan Telling 488767b4f0 cleanup in shop/ 2018-03-04 16:00:30 +01:00
Stephan Telling bc042a1755
add self to fix reference to team responsible 2018-03-04 15:22:13 +01:00
Stephan Telling 10bd3bdd0d
remove camp from team objects in bootstrap script 2018-03-04 15:18:59 +01:00
Thomas Steen Rasmussen 0c00524570 remove unneeded imports from villages app 2018-03-04 14:46:18 +01:00
Thomas Steen Rasmussen 99cb7f5307 remove unneeded imports from utils app 2018-03-04 14:44:33 +01:00
Thomas Steen Rasmussen afa782b26b remove unneeded imports from tickets app 2018-03-04 14:43:56 +01:00
Thomas Steen Rasmussen bd32595783 remove unneeded imports from teams app 2018-03-04 14:42:57 +01:00
Thomas Steen Rasmussen d140155b63 remove unneeded imports from sponsors app 2018-03-04 14:41:51 +01:00
Thomas Steen Rasmussen 0d47ec5607 remove unneeded imports from people app 2018-03-04 14:39:01 +01:00
Thomas Steen Rasmussen ad9f9d1581 remove unneeded imports from ircbot app 2018-03-04 14:36:52 +01:00
Thomas Steen Rasmussen 81abf8db36 remove unneeded imports from info app 2018-03-04 14:35:27 +01:00
Thomas Steen Rasmussen 9e82013ca0 remove unneeded imports from bornhack app 2018-03-04 14:31:46 +01:00
Thomas Steen Rasmussen 6980f53a96 remove unneeded imports from bar app 2018-03-04 14:31:13 +01:00
Thomas Steen Rasmussen 477177a936 remove unneeded imports from backoffice app 2018-03-04 14:30:27 +01:00
Thomas Steen Rasmussen ee628f4183 move another import 2018-03-04 14:16:22 +01:00
Thomas Steen Rasmussen 0f0794edfa another missing requirement 2018-03-04 13:39:11 +01:00
Thomas Steen Rasmussen 7823317939 add missing imports 2018-03-04 13:29:43 +01:00
Thomas Steen Rasmussen 07b3387831 import later, add missing bit of signal, change model reference in signal connection 2018-03-04 13:19:42 +01:00
Thomas Steen Rasmussen fe4e47edb0 add a related_name for the camp relation for TeamArea, and a teams property to Camp model to make it easier to get all teams under all teamareas, also add exclude=None to the validate_unique call in our CleanedModel class 2018-03-04 12:48:35 +01:00
Thomas Steen Rasmussen 60c4bb49fb Create new CampPropertyListFilter based on admin.SimpleListFilter to use for admin filtering of CampRelatedModels where self.camp is a property instead of a real field. Change the Team models camp field to a property, and make the Team model use the new CampPropertyListFilter in the admin. Change the BaseTicket model to being a CampRelatedModel and add a camp property, also, while here move ticket_created signal to signals.py, connect it in apps.py and rename it to ticket_updated. Change Sponsor model to being a CampRelatedModel and add a camp property. 2018-03-04 12:04:07 +01:00
Thomas Steen Rasmussen 6fe1790e89 spelling 2018-03-04 09:19:16 +01:00
Víðir Valberg Guðmundsson cb0c4d8588 Fix admin for Info. 2018-02-11 17:55:15 +01:00
Víðir Valberg Guðmundsson 2ffcec7bcd Adding 2018 letterheads. 2018-01-10 08:22:52 +01:00
Stephan Telling cdc35eb114
Merge pull request #198 from bornhack/st/fix-174
work on #174
2018-01-07 20:15:51 +01:00
Stephan Telling e3ad6c5657
update bootstrap script with better dates 2018-01-07 20:15:09 +01:00
Stephan Telling 328d6aa803
work on #174 2018-01-07 19:59:53 +01:00
Thomas Steen Rasmussen c676abd5cf add missing request argument 2018-01-07 17:36:44 +01:00
Víðir Valberg Guðmundsson 61f7e43bdb Erhm... 2018-01-07 17:20:45 +01:00
Víðir Valberg Guðmundsson 19963db102 Woops, available_in can be null 2018-01-07 17:15:03 +01:00
Stephan Telling f047deba76
place card btn in proper div 2018-01-07 16:43:11 +01:00
Stephan Telling 84f187709b
Merge pull request #193 from bornhack/feature/improve_shop_product_admin
Adding search and improve stuff on shop product admin.
2018-01-07 16:00:13 +01:00
Víðir Valberg Guðmundsson 004be0a834 Adding search and improve stuff on shop product admin. 2018-01-07 15:56:52 +01:00