Commit graph

57 commits

Author SHA1 Message Date
Thomas Steen Rasmussen 63a3d2517c add a hylkedam venue overlay to the map 2020-07-05 18:19:36 +02:00
Thomas Steen Rasmussen f859f82b9c fixup facility maps a bit and add backoffice management of facilities 2020-06-17 21:38:07 +02:00
Thomas Steen Rasmussen eff4bfaf1c
SpeakerAvailability, EventSession, autoscheduler, and other goodies (#497)
* fix old bug where the get_days() method would return the wrong number of days, this was not discovered because our bootstrap script has been creating 9 day camps instead of 8 day camps (this has been fixed in a different commit)

* remove stray debug print

* output camp days in local timezone (CEST usually), not UTC

* speakeravailability commit of doom, originally intended for #385 but goes a bit further than that. Adds SpeakerAvailability and EventSession models, and models for the new autoscheduler. Update bootstrap script and more. New conference_autoscheduler dependency. Work in progress, but ready for playing around!

* add conference-scheduler to requirements

* rework migrations, work at bit with postgres range fields and bounds, change how speakeravailability is saved (continuous ranges instead of 1 hour chunks), add tests for utils/range_fields.py including adding hypothesis to requirements/dev.txt, add a test which runs our bootstrap script

* catch name collision in the right place, and load missing postgres extension in the migration

* add some verbosity to see what the travis issue might be

* manually create btree_gist extension in postgres, not sure why the BtreeGistExtension() operation in program/migrations/0085... isn't working in travis?

* create extension in the right database maybe

* lets try this then

* ok so the problem is not that the btree_gist extension isn't getting loaded, the problem is that GIST indexes do not work with uuid fields in postgres 9.6, lets take another stab at getting pg10 with postgis to work with in travis

* lets try normal socket connection

* add SPEAKER_AVAILABILITY_DAYCHUNK_HOURS=3 to travis environment_settings.py

* rework migrations, change so an autoschedule can work with multiple eventtypes, change AutoSlot model to use a DateTimeRangeField so we can use the database for more efficient lookups, add 'conflicts' self m2m for EventLocation to indicate when a room conflicts with another room, add a support_autoscheduling bool to EventType, add workshops to bootstrap script, add timing output to bootstrap script

* update README a bit, move some functionality to model methods, update jquery and jquery.datatables, include datatables in base.html instead of in each page, start adding backoffice schedule management views (unfinished), yolo commit so I can show valberg something

* Switch to a more simple way of using the autoscheduler, meaning we can remove the whole autoscheduler app and all models. All autoscheduler code is now in program/autoscheduler.py and a bit in backoffice views. Add more backoffice CRUD views for schedule management. Add datatables moment.js plugin to help table sorting of dates. Add Speaker{Proposal}EventConflict model to allow speakers to inform us which events they want to attend so we dont schedule them at the same time. Add EventTag model. New models not hooked up to anything yet.

* handle cases where there is no solution without failing, also dont return anything here

* wrong block kiddo

* switch from EventInstance to EventSlot as the way we schedule events. Finish backoffice content team views (mostly). Many small changes. Prod will need data migration of EventInstances -> EventSlots when the time comes.

* keep speakeravailability stuff a bit more DRY by using the AvailabilityMatrixViewMixin everywhere, add event_duration_minutes to EventSession create/update form, reverse the order we delete/create EventSlot objects when updating an EventSession

* go through all views, fix various little bugs here and there

* add missing migration

* add django-taggit, add tags for Events, add tags in bootstrap script, make AutoScheduler use tags. Add tags in forms and templates.

* fix taggit entry in requirements

* Fix our iCal view: Add uuid field to Event, add uuid property to EventSlot which calculates a consitent UUID for an event at a start time at a location. Use this as the schedule uuid. While here fix so our iCal export is valid, a few fields were missing, the iCal file now validates 100% OK.

* fix our FRAB xml export view

* comment the EventSlot.uuid property better

* typo in comment

* language

Co-Authored-By: Benjamin Balder Bach <benjamin@overtag.dk>

* language

Co-Authored-By: Benjamin Balder Bach <benjamin@overtag.dk>

* Update src/backoffice/templates/autoschedule_debug_events.html

Co-Authored-By: Benjamin Balder Bach <benjamin@overtag.dk>

* add a field to make this form look less weird. No difference in functionality.

* remove stray print and refactor this form init a bit

* fix ScheduleView

* only show slots where all speakers are available when scheduling events manually in backoffice

* make event list sortable by video recording column

* update description on {speaker|event}proposal models reason field

* remove badge showing number of scheduled slots for each event in backoffice eventlist. it was unclear what the number meant and it doesn't really fit

* remember to consider events in the same location when deciding whether a slot is available or not

* add is_available() method to EventLocation, add clean_location() method to EventSlot, call it from EventSlot.clean(), update a bit of text in eventslotunschedule template

* fix EventSession.get_available_slots() so it doesnt return busy slots as available, and since this means we can no longer schedule stuff in the lunchbreak lower the number of talks in the bootstrap script a bit so we have a better chance of having a solvable problem

* fix the excludefilter in EventSession.get_available_slots() for real this time, also fix an icon and add link in event schedule template in backoffice

* show message when no slots are available for manual scheduling in backoffice

* add event_conflicts to SpeakerUpdateView form in backoffice

* fix link to speaker object in speakerproposal list in backoffice

* allow blank tags

* make duration validation depend on the eventtype event_duration_minutes if we have one. fix help_text and label and placeholder for all duration fields

* allow music acts up to 180 mins in the bootstrap data

* fix wrong eventtype name for recreational events in speakerproposalform

* stretch the colspan one cell more

* save event_conflicts m2m when submitting speaker and event together

* form not self, and add succes message

* move js function toggleclass() to bornhack.js and rename to toggle_sa_form_class(), function is used in several templates and was missing when submitting combined proposals

* move the no-js removal to the top of ready() function

This will allow other javascript initialization (eg. DataTable) to see the elements and initialize accordingly (eg. column width for tables)

* Fixed problem with event feedback detail view

* Fixed problem with event feedback list view

* introduce a get_tzrange_days() function and use that to get the relevant days for the matrix instead of camp.get_days(), thereby fixing some display issues when eventsessions cross dates

* show submitting user and link to proposal on backoffice event detail page, change User to Submitter in backoffice speaker list table

* show warning by the buttons when a proposal cannot be approved, and show better text on approve/reject buttons

* disable js schedule, save m2m, prefetch some stuff

* fix broken date header in table

* remove use of djangos regular slugify function, use the new utils.slugs.unique_slugify() instead

Co-authored-by: Thomas Steen Rasmussen <tykling@bornhack.org>
Co-authored-by: Benjamin Balder Bach <benjamin@overtag.dk>
Co-authored-by: Thomas Flummer <tf@flummer.net>
2020-06-03 21:18:06 +02:00
Thomas Flummer 543616e4b0 Fixed top menu that wrapped around on narrow view
Fixes issue #475

Also shows link to Orders, Tickets and Creditnotes if relevant in the account menu

In addition to the wrapping, the margin of the dropdown menus have also been adjusted a tad
2020-03-04 22:17:15 +01:00
Thomas Steen Rasmussen 12a1c9a0ce
Facilities (#458)
* update font-awesome to 5.12.1

* prefetch members to considerably lower number of SQL queries for team list view

* add facilities app with facility feeedback functionality, working on #383

* Add GeoDjango (django.contrib.gis) and switch to PostGIS db backend. Add location field for Facility model. Add django-leaflet to requirements.

* better migration names

* tweaking travis config, we use py3.7 now, and add postgis

* Add qr code support for facilities (visible in the admin). Make facitilies browsable without logging in. Feedback can be submitted without logging in, given the facility UUID, which is not revealed to unauthenticated users.

* show quickfeedback icons when creating and when reading feedback

* only show anon option if user is logged in

* django-reversion somehow went missing from requirements
2020-02-24 23:28:52 +01:00
Thomas Steen Rasmussen d5d12008de rename fontawesome css to include version number, so we avoid caching issues when upgrading 2020-02-22 17:40:53 +01:00
Víðir Valberg Guðmundsson c51771be6b Merge remote-tracking branch 'origin' into feature/team-guides 2019-03-12 10:58:29 +01:00
Thomas Flummer aafe9de44e added a bit more margin in the botton to prevent footer from covering stuff on mobile devices (#282)
fixes issue #228
2018-11-20 00:18:14 +01:00
Víðir Valberg Guðmundsson a4060c2815 Merge branch 'master' into feature/team_refactor 2018-08-04 18:11:32 +02:00
Víðir Valberg Guðmundsson ef4262995f
Merge pull request #256 from fALKENdk/253-change-the-z-index-of-the-menu
Changed z-index of .sticky
2018-08-04 13:12:51 +02:00
Kasper Friis Christensen a2b0d2980a Minimized comment size 2018-08-01 21:27:02 +02:00
Kasper Friis Christensen 456d9377a6 Changed z-index of .sticky and added bootstrap z-indexes to bornhack.css as a comment 2018-08-01 21:15:43 +02:00
Kasper Christensen c8e65b739d
Update bornhack.css
Made content under "Add to order" in shop items visible on iphone.
2018-07-31 13:43:39 +02:00
Víðir Valberg Guðmundsson c68015fe26 Teams detail page was starting to get crowded. This is the start of a mostly visual, but also structural, refactor. 2018-07-22 23:18:50 +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
Benjamin Bach 9b9138f08c Adding team guides (markdown text) 2017-11-25 22:35:48 +01:00
Thomas Steen Rasmussen c914c23117 add datatables.net jquery table plugin to infodesk page 2017-10-03 23:09:11 +02:00
Vidir Valberg Gudmundsson 9be3e62842 Hiding sidebars. 2017-08-26 17:34:14 +02:00
Vidir Valberg Gudmundsson 3f18b59a6b HACKER THEME! 2017-08-26 17:31:46 +02:00
Vidir Valberg Gudmundsson 84672dff7c Smaller text! 2017-08-26 17:27:24 +02:00
Vidir Valberg Gudmundsson 3c83a6f70d Adding title and only showing products in stock. 2017-08-26 16:03:26 +02:00
Vidir Valberg Gudmundsson a9f1e4553b Initial bar app. 2017-08-26 03:49:30 +02:00
Vidir Valberg Gudmundsson 8055071b8b Adding ICS button. Make sidebar not sticky. 2017-08-16 19:58:04 +02:00
Vidir Valberg Gudmundsson 9659871a3f Fix filter sidebar style. 2017-08-16 19:16:28 +02:00
Vidir Valberg Gudmundsson a447ca476f Working on event detail. Also small visual help in DayView. Also some favorite stuff. 2017-08-16 18:27:28 +02:00
Vidir Valberg Gudmundsson 5dfda5ec8c More styling. 2017-08-16 18:27:28 +02:00
Vidir Valberg Gudmundsson 1bcc3a0ba0 Finally this seems to work 😅 2017-08-16 18:27:28 +02:00
Vidir Valberg Gudmundsson 3e50ccc9d8 Some styling. 2017-08-16 18:27:28 +02:00
Vidir Valberg Gudmundsson 725535d4a7 Some progress on the dayview. 2017-08-16 18:27:28 +02:00
Vidir Valberg Gudmundsson 543347aaff Adding detail view for event intances. 2017-08-16 18:27:28 +02:00
Vidir Valberg Gudmundsson a6470d2ec9 Initial work on the schedule written in elm. 2017-08-16 18:26:49 +02:00
Vidir Valberg Gudmundsson 7cd82ea3bb Adding models to the sponsor. 2017-07-15 15:21:12 +02:00
Thomas Steen Rasmussen 903b214d86 do not make all checkboxes in the world invisible 2017-05-23 23:11:32 +02:00
Víðir Valberg Guðmundsson 5ef3e79b38 Making day menu responsive. 2017-04-29 14:58:21 +02:00
Víðir Valberg Guðmundsson 12d08a092c Still show icon on click. 2017-04-29 13:11:16 +02:00
Víðir Valberg Guðmundsson 13631eac93 Now also mark the filters accordingly to URL. 2017-04-21 19:09:46 +02:00
Víðir Valberg Guðmundsson 60cf09b172 Making checkboxes more nice. 2017-04-21 15:02:20 +02:00
Víðir Valberg Guðmundsson 9071a9c524 Revamping filtering big time! 2017-04-21 01:34:22 +02:00
Víðir Valberg Guðmundsson 21fabac47a Adding some highlight to events in day view. 2017-04-19 23:37:14 +02:00
Víðir Valberg Guðmundsson f7749adb23 Adding modals and websockets to day view. 2017-04-19 22:37:30 +02:00
Kasper Friis Christensen 8e1a8de9aa Beautified dropdown 2017-04-19 21:12:56 +02:00
Kasper Friis Christensen f4dd5fff94 Updated logo pngs and updated logos to svg and png fallback 2017-04-19 21:12:56 +02:00
Kasper Friis Christensen f45c7a3b73 Centered footer on desktop 2017-04-19 21:12:56 +02:00
Kasper Friis Christensen 9a17c3220d Show all footer on mobile 2017-04-19 21:12:56 +02:00
Kasper Friis Christensen 761804eda1 Updated media query to match break point 2017-04-19 21:12:56 +02:00
Kasper Friis Christensen 7b93526f8d Update mobile navigation 2017-04-19 21:12:56 +02:00
Kasper Friis Christensen ec7a6c0054 Removed double border in btn-groups 2017-04-19 21:12:56 +02:00
Víðir Valberg Guðmundsson d511df399d Fixing footer. 2017-04-16 02:20:59 +02:00
Kasper Christensen 9d70782b70 Added site fonts to .fa-select (#120)
godt spottet tak
2017-04-14 23:37:29 +02:00
Víðir Valberg Guðmundsson 4f6e6bcd3f Adding modal for events for better userinterface. 2017-04-14 23:29:40 +02:00