Bug 325778

Summary: Separate Google calendar resources required for Calendar and Tasks
Product: [Frameworks and Libraries] Akonadi Reporter: Achilleas Koutsou <achilleas.k>
Component: Google ResourceAssignee: Daniel Vrátil <dvratil>
Status: RESOLVED FIXED    
Severity: minor CC: achilleas.k, kdepim-bugs
Priority: NOR    
Version: 4.11   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed In: 4.11.3
Sentry Crash Report:

Description Achilleas Koutsou 2013-10-08 14:28:52 UTC
When adding a Google calendar resource to Akonadi, all calendars and task lists appear in the dialogue and can be selected. However, in Kontact/Korganizer, only the calendars appear until a second Google calendar resource is added for the same account.

This happens with the "Google Calendars and Tasks", which uses the Google browser sign-in authentication, not the "Akonadi Google Calendar Resource".


Reproducible: Always

Steps to Reproduce:
1. Add a "Google Calendars and Tasks" resource to Akonadi (note: NOT a "Akonadi Google Calendar Resource") for an account which has both calendars and task lists.
2. Enable all calendars and task lists in the resource configuration dialogue.
3. Open Kontact or Korganizer and enable the "Calendar Manager" sidebar (Settings -> Sidebar -> Show Calendar Manager).
3. Check whether calendars and task lists are synchronised and whether calendars and lists appear in the "Calendar Manager" list in Kontact/Korganizer.
4. Add the same "Google Calendars and Tasks" resource to Akonadi again.
5. Enable everything, or task lists only (doesn't seem to matter).
6. Check if the calendars have appeared in the Calendar Manager sidebar.
Actual Results:  
At step 3, only calendars (might) appear in the list. After step 5, task lists should also be visible.

Expected Results:  
Steps 1-3 should be adequate to display every calendar and task list. The Google Calendars and Tasks resource should handle both when it is from the same account.

I have not tested whether the number of calendars+tasklists is relevant to this bug. I have 8 calendars and 2 tasklists and have not tried adding an account that has less (say, 1 calendar and 1 tasklist).
Comment 1 Daniel Vrátil 2013-10-21 13:57:44 UTC
Is it possible that by any chance you have to calendars or task lists with the same name?
Comment 2 Achilleas Koutsou 2013-10-21 14:06:00 UTC
(In reply to comment #1)
> Is it possible that by any chance you have to calendars or task lists with
> the same name?

Oh! Why, yes, I do. And yes, that is exactly the cause of the issue. The thought never crossed my mind.
Thank you!

Marking as RESOLVED - INVALID, unless this is something that should be handled by the resource without causing issues.
Comment 3 Daniel Vrátil 2013-10-21 14:28:41 UTC
Git commit 77c3d1470098ca2e0ca5db23e4369a03cd206c3d by Dan Vrátil.
Committed on 21/10/2013 at 14:18.
Pushed by dvratil into branch 'KDE/4.11'.

Support case when a Google calendar and tasklist having the same name

...which is not supported by Akonadi.

We use calendar/tasklist UID instead of the title as collection name.
User-facing name is stored in DisplayAttribute, so the UID should
not leak to users anywhere.
FIXED-IN: 4.11.3

M  +4    -15   resources/google/calendar/calendarresource.cpp

http://commits.kde.org/kdepim-runtime/77c3d1470098ca2e0ca5db23e4369a03cd206c3d