Loading
Network error

Agorakit : Users & developers

Shared calendar

Started by Zerline in Agorakit : Users & developers June 1, 2025 10:50 AM

For my use case, I need a shared calendar between groups.

More specifically, and for a beginning, a user should be able to view, on the same calendar, all public events, or all events from their groups, or both.

@agorakit you have thought of reforming your code with a "Context" object. Would this be a pre-requirement in your opinion?

I guess so ..

How could I help?

For instance, in ContextService.php I would like to write getVisibleGroups() in a way it only depends on the context itself, as retrieved by ContextService::get(). (and authentication status of course).

Alternatively, we could write 2 methods:

  • one to check which groups could be seen by the user (depending only on authentication status)
  • the second to determine, among those visible groups, which ones the user wants to see
June 1, 2025 9:37 PM

Isn't it already the case? If a user is member of group A, B and C,when visiting the overview page, calendar tab will show events from the 3 groups. You can choose to see "my groups" or all public groups (including "my groups").

What else would you need ?

June 2, 2025 7:45 AM

I have all this in mind:

* - group : all visible stuff in a given group
* - joined : all stuff in groups joined by the user
* - custom : all visible stuff in a custom list of groups
* - custom+: all stuff in groups joined by the user + all visible stuff in a custom list of groups
* - public : all public stuff
* - public+ : all stuff in groups joined by the user + all public stuff
* - all : (admin)

"context" would be in session. So would be the custom list of groups, if any.

An authenticated user could set context (and maybe custom list as well) as a preference.

+ any user (authenticated or not) would be able to set a context for the session.

June 2, 2025 10:31 AM

I fear this will make for a very complex UI for end users and I'm not sure about the use case there : to have such a granular control on calendar display means you have several groups that have like more than 4 events per day, in this case yes, the calendar could become too crowded and would require advanced filtering. Does it really happen ? I never saw this on the shared instance.

June 2, 2025 11:39 AM

Mmm..

In my use case, we will have several dozens groups that users might want to select from. Additionally, I want them to be able to download their resulting calendar as a table in a PDF file that would stay compact, ie readable within one single page with all information for "next week" or even "next month" depending of their wishes.

June 2, 2025 11:40 AM
a very complex UI

it is an issue, only if we don't think about reasonable defaults ..


June 2, 2025 12:44 PM

I would advice to decide based on real data when in use, because it might be a non issue. 

Maybe the option to generate a specific calendar with proper filtering would be good, I don't know.

You've read everything in this discussion