con2 / kompassi

Kompassi Event Management System
https://kompassi.eu
Other
26 stars 27 forks source link

Freeform location: As a program manager I want to give a program item more specific or unique location #474

Open japsu opened 4 months ago

japsu commented 4 months ago

The initial idea has been that those events that need to specify the location (room) of a program can do so by adding a dimension for it, a dimension like any other.

However, in some visualizations the location carries special meaning: for example, in the V1 schedule, time runs from top to bottom and rooms are represented as columns, none of which may have two programs coinciding in the same room. In Guide V2, there is nothing stopping you from having multiple programs in the same room at the same time. In order to support use cases such as this, events may now designate a dimension as their location dimension.

Solmukohta (2024) revealed another need: We may need to add a specifier to the location, such as Nightclub (Dance floor) or Winter Garden (piano after the bend). In addition, there may be program items that happen in a location used by no other program items, in which case using a dimension may feel like overkill.

Should there be a way to specify the room in a more freeform fashion to either supplant or replace the room as a dimension? If both are set, how to proceed?

Location as dimension makes sense when there is a clearly defined set of locations where program can happen. This enables filtering the program by location and visualizations that have location as an axis, grouping or similar visible dimension.

Location as free text makes sense when the set of locations where program can happen is not clearly defined. This allows informing the participants of the location but not necessarily efficient filtering.

One possible approach would be implementing all of the following:

Example:

A program item of A Week in Finland is happening in the upstairs of Artteli.

Program v2 documentation Slack discussion

Image

japsu commented 4 months ago

Occurs to me there's no practical way of doing this as long as Programme v1 is the source of program data. So postpone this for now.