Default calendar for appointments via email


Hope someone can help me with calendars and appointments
My setup is:
Self hosted nextcloud 22.2.3 instance on Debian 10 / php 7.3
The below described Problem does not add an entry to the logging system

The short story is:
I have three calendars in my account. Sadly none of them is the initial system created one (called "Persƶnlich in german) as I have deleted it. If another user sends me an invitation I receive an email with an accept button inside. If I click the accept button a web page opens that says something like (text was in german) ā€œYour invitation status has been updatedā€. In other words it looks like the appointment is now set. But if I look into my nextcloud calendar app the appointment is not there. (As you all do not have that much time I missed the long story, but my assumption is, that this appointment is mapped to the deleted initial system calendar which is not available/visible any more).
So my question is: Where / how I can configure the default calendar to use for appointments when I accept them via email?


is the calendar in the trash bin? Iā€™m not sure if the accept logic is able to detect that your personal calendar has actually been deleted

Sadly no. Its gone :frowning:

If Iā€™m not mistaken the code responsible is server/Plugin.php at 9a37ca9b480c9cd3ea6474db2c6f52908c653aaf Ā· nextcloud/server Ā· GitHub.

So, could you try something for me? Create a calendar with name ā€˜Personalā€™ (donā€™t translate it) and try again. If it now writes to that calendar the suspicion is confirmed and we hard-code the calendar name.

Yes, I can confirm that this works. Interestingly I can rename this calendars name later on and stuff still works. But somehow the initial name must be ā€œPersonalā€

Thanks for checking.

The rename doesnā€™t surprise me. What seems to matter is the URI of the calendar. As in, what itā€™s named internally. The dislay name visible to the user doesnā€™t matter.

Actually please test something else for me as well.

Run SELECT * FROM oc_preferences WHERE appid='dav' AND configkey='defaultCalendar' in your database.

Iā€™m curious if the default calendar is set to an old non-existent calender.

OK. First attempt returned an empty set.

But my idea was that this may be this is due to the fix before? So I created a new test user. Deleted its system created ā€œPersonalā€ calendar and ensured the trash bin is empty (so its really ā€œdeletedā€). Then I created three new calendars with other names for this user.

At this point the select statement again returns an empty set.

Then I sent an invitation from another user to the test one and accepted in the email. Magically now for the test user the calendar with the name ā€œPersonalā€ is recreated and the appointment insideā€¦ Mhhh, if I would have had that behaviour before I would not have filed the support requestā€¦

As we figured out that the calendar name is hardcoded I would consider the overall behaviour a bug.
Either a user should not be able to delete the ā€œreference calendarā€ or he should have the possiblility to configure his ā€œreference calendarā€ within the GUIā€¦

I solved my problem now by exporting all data, recreation of the user and reimportingā€¦

Thanks for the quick response and your help!


Sadly noā€¦ Its completely gone