indico / indico

Indico - A feature-rich event management system, made @ CERN, the place where the Web was born.
https://getindico.io
MIT License
1.72k stars 419 forks source link

Feature: Filter by bulding / room in category overview #6097

Open olifre opened 8 months ago

olifre commented 8 months ago

Is your feature request related to a problem? Please describe. We'd love to show an overview of all events happening in one building / at one location on a central screen when entering the building. The category overview for category "0" would be ideal, but of course it would have to be filtered by location / room. I.e. the use case would be "diigital signage" ;-).

Describe the solution you'd like Filtering by location / room / adress / site for the category overview, i.e.: https://indico.cern.ch/category/0/overview?date=2023-12-11&period=day&detail=event with additional filtering possibilities (on information already contained in the same overview ;-) ).

Describe alternatives you've considered Creating categories for the buildings, but that does not really match with the usual usage, i.e. some events (conferences) may change the building on different days or happen in several buildings. Since categories should usually be used for content / target audience logic and not for location, misusing them for this seems to be a bad idea ;-).

ThiefMaster commented 8 months ago

How would you define "buildings" in this context.

Filtering either by "venue" or "room" would be doable since that kind of metadata already exists, but "building" is not something Indico is aware of in most cases (unless the events are linked to rooms defined in the room booking module, and those have building numbers attached)

olifre commented 8 months ago

How would you define "buildings" in this context.

In fact, I was thinking about "buildings" in the context of the room booking module. But you are correct, this is likely not general enough (while we ensure bookings are usually in the booking system, this will never catch everything).

Filtering either by "venue" or "room" would be doable since that kind of metadata already exists, [...]

What about filtering by "venue" or "room" e.g. with a regular expression / SQL filter string? This would allow to match both an explicit room in a location, or a "building" in case a common prefix is used, see e.g. https://indico.hiskp.uni-bonn.de/category/0/overview?date=2023-10-16&period=week&detail=event . In the example, one could filter by Kreuzbergweg 24%. Would that be reasonable?

I guess to cover all actual use cases, it would also be necessary to add a checkbox "Include events without room / venue".

ThiefMaster commented 8 months ago

I think that would be pretty hard to implement in a clean way... Might be more something for a custom plugin (and just contribute a signal and template hook so you can add the necessary logic and UI on the page)

olifre commented 8 months ago

I think that would be pretty hard to implement in a clean way... Might be more something for a custom plugin (and just contribute a signal and template hook so you can add the necessary logic and UI on the page)

Do you have an idea for a less complex implementation? My main reasoning is that I think the number of users / sites interested in this is likely high — it seems more and more common that sites add digital signage to new buildings, and would like to display events at the location when people enter. So it would be nice to have this as a core feature (on our end, we already use filtered exports from the room booking to get room plans, so it would be natural to add it there, but that's currently an external tool and hence less accessible to other users / sites).

I'm open to ideas — maybe even filtering by venue (without a regular expression feature) would be sufficient?

ThiefMaster commented 8 months ago

Oh wait, this sounds more like an API question now, and not so much like something for this particular overview page.

And look what even our kind-of-legacy API has: https://docs.getindico.io/en/stable/http-api/exporters/categ/#parameters

olifre commented 8 months ago

Oh wait, this sounds more like an API question now, and not so much like something for this particular overview page.

Yes, this one I already know, and I can use it to create my own overview for digital signage. And it's actually be what I'll use if Indico does not get this as a core feature ;-).

However, I think it would be more accessible to most if the Overview page can filter accordingly, so they can just put this on their own digital signage displays (then I would also use that feature instead of exporting via API and rendering myself).

ThiefMaster commented 8 months ago

So you want to put that overview page directly on the building's displays? Doesn't sound particularly nice considering that this overview page doesn't look really amazing to begin with.

olifre commented 8 months ago

Indeed, that's what I would do. Of course it does not look amazing, but it looks better than most stuff users create manually, and can save a lot of time ;-).