Bug 481527

Summary: Event created on local copy of Google calendar while offline is missing from online Calendar
Product: [Applications] korganizer Reporter: Evert Vorster <evorster>
Component: groupwareAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED FIXED    
Severity: normal CC: winter
Priority: NOR    
Version First Reported In: 5.24.5   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed In: n/a
Sentry Crash Report:
Attachments: Screenshot showing the event in KOrganizer
Event not present in Google Calendar

Description Evert Vorster 2024-02-19 01:50:48 UTC
Created attachment 165930 [details]
Screenshot showing the event in KOrganizer

SUMMARY
***
Events created on local copy of online Google Calendar while offline does not show up when connected to the internet again. 
***


STEPS TO REPRODUCE
1. Be offline, not connected to the internet.
2. Open Korganizer and add an event to a Google Groupware calendar.
3. Go Online and open Google Calendar.
4. Wait for calendars to synchronize

OBSERVED RESULT
The event added while offline never gets synchronized to the Google Groupware calendar. 

EXPECTED RESULT
Events added to the local copy of the Google calendar to be saved in a cache, and added to the online version when the link to the internet is restored. 

SOFTWARE/OS VERSIONS
Operating System: Arch Linux 
KDE Plasma Version: 5.27.10
KDE Frameworks Version: 5.115.0
Qt Version: 5.15.12
Kernel Version: 6.6.17-1-lts (64-bit)
Graphics Platform: Wayland
Processors: 32 × 13th Gen Intel® Core™ i9-13900HX
Memory: 62.5 GiB of RAM
Graphics Processor: Mesa Intel® Graphics
Manufacturer: TUXEDO
Product Name: PD5x_7xSNC_SND_SNE
System Version: Not Applicable

ADDITIONAL INFORMATION
I run own and run a tour company in Namibia that also provides services to the film industry and some other things. 
Having events synchronized between team members is absolutely critical. 

It is also quite common to be completely outside of network connectivity and still making scheduling decisions. Namibia is sparsely populated and not everywhere has internet access.
I was hoping that I could use KOrganizer to add these events to the local copy of the online calendar, and then have the changes propagated to the online calendars when connectivity is restored. 

When a person takes the time to set an event on a calendar, that event is most likely very important to that person. 
If the calendar in use is a shared one, that event is also likely important to the other people that share that calendar. What I have been doing to date was to write down the events on little bits of paper, and enter them online when I have connectivity. Unfortunately some places have really poor internet connections, and time may not be on my side when I have access to internet.... 

One other thing I have noticed is that changes made to this event that is only present on the local copy of the groupware calendar are accepted, and silently fails to be propagated to the online version, even if connected to the internet at the time.


TL;DR:
KOrganizer should detect and resolve discrepancies between its local copy and the online copy of shared calendars.

I see that there is two ways that this could be resolved...
 
Way 1. Compare the local copy of the calendar to the online version. Any events that is on the local copy that is not on the online copy should trigger a pop-up window saying that the event is not on the online version of the calendar, would you like to create it on the online calendar, or delete it from the local copy?

Way 2. When making changes to the local copy of the calendar, see if there is an internet connection. If not, save all the commands that would have gone over the internet to a local file. 
When internet connection is restored, play back that file and put the changes online. 

There could be others, or maybe a combination of the two....

I tell you what, it is much, much more preferable to have duplicates of an event, or an even annoyingly pop pup than missing an event completely.
Comment 1 Evert Vorster 2024-02-19 01:51:36 UTC
Created attachment 165931 [details]
Event not present in Google Calendar

Just added these screenshots to show the discrepancy.
Comment 2 Evert Vorster 2024-02-19 02:05:51 UTC
Hmm, I think I found an even better way around this problem.

It would seem that the core of the problem is that KOrganizer does not check whether it is able to make changes to the online groupwares, or even if those changes succeeded. 

So it is possible to end up in a situation where the local copy and the online copy of the calendars are out of sync. 

KOrganizer further does not try to detect whether the calendars are out of sync as far as I can see. This makes this issue a little worse. 


If KOrganizer did check, and found that there was no internet connection or that the requested change to the online groupware did not succeed, it could save the event to the local calendar, with a little warning message. 

Then, when connectivity is restored it is easy enough to make the requested changes.

There should also be some periodic check to ensure that local and online copies of the calendars both contain the same events.
Comment 3 Allen Winter 2025-07-23 12:55:08 UTC
I can't reproduce this problem with newer KOrganizer (version 6.4)

I disabled my network
then created a new event in my google calendar
then restarted the network
then went to calendar.google.com and could see the newly created event.

please try with KOrganizer v6.4 or above 
if it still fails for you => reopen this bug as needed