! Please note that this is a snapshot of our old Bugzilla server, which is read only since May 29, 2020. Please go to gitlab.xfce.org for our new server !
2: Add an option to save event into a different ICS file, or allow to save ev...
Status:
CLOSED: FIXED
Severity:
enhancement

Comments

Description Luis Felipe Abad 2011-08-07 14:04:24 CEST
Hi, devs.

// Background
I find orage a very easy to use calendar and reminder app, low on RAM usage, always available, and iCal support. It is my main calendar application. Unfortunately, it is not the only calendar application I use, especially as I don't always use my own computer or my main OS. Often, I have to add an event from work and, since I can't see my home PC calendar events, sometimes I get same-time appointments.

At work, we use Google Calendar the most, so I started using the private address of my calendar to retrieve work events at home, but it would be very useful to get my home events into Google Calendar. It's pretty easy to do this, as Orage's ics export feature works fairly well and Google can import these files, but to do this every time an event is added to Orage would be fairly extreme.

Next, I tried GCalDaemon, which can monitor a file for changes and upload them to Google Calendar. Events get downloaded from Google Calendar every 10 minutes (or as configured) into the ics file. In theory, I could use this file to see the events created in Google Calendar and modify them through Orage if the external file is RW enabled, but new events created from Orage are always written into the main file.

Therefore, I pointed GCalDaemon to sync the online calendar with Orage's main file (previous backup of the latter, of course), and I got Orage to upload events into Google Calendar, wich was pretty cool! But then, events created online were not being read by Orage until it was restarted (disappointing, I was close to get what I needed). I tested this restarting GCaldaemon and keeping Orage open, and it reported the download of events and I also checked the ics file with the new appointment.

Next I created a symlink to the main file in order to include it as an external monitored file, which gave me a duplicate for every event in Orage window, but at least events could be created in Orage or online... but when I tried to delete an event in Orage it segfaulted. It's reasonable, since Orage doesn't know they are the same file. A solution would be to keep downloading the calendar the old fashioned way and use that file as an external file into Orage, since GCalDaemon doesn't allow to sync the same calendar with more than one ics file. Of course, events and alarms would be shown duplicated, but at least i could keep both calendars in sync. But then again, Orage's main file has some non-standard features, and when those are read online get lost. This happens both ways, as some "standard" features from the online calendar are not read by Orage:
** Message: Orage **: get_appt_from_icalcomponent: unknown property STATUS
** Message: Orage **: get_appt_from_icalcomponent: unknown property X-LIC-ERROR
There are also some compatibility issues with this method: an all-day event in Google calendar gets a time span of 24 hours, and it gets represented as a two-day event in Orage calendar view, for example.

// Enhancement
It would be really helpful to have a way to save the new events created in Orage to a different file than the main one, thus allowing to have different calendars which BTW might be mapped to event categories. Even to create the event in one of the foreign files would be acceptable. This would allow for external calendar updating from inside Orage, not only event modification, but also creation of events on, for example, Google Calendar using GCalDaemon, from within Orage and without implementing support for http calendars. If other applications load the modified ics file and do not pay attention to Orage's non-standard features, then those applications would effectively be in sync with Orage through these files; even if not all the information is kept between applications main event data would at least be available, and complete event data would be available from the application that added it.
Comment 1 juha editbugs 2011-08-07 19:05:40 CEST
Yep, I started coding this once, but I was not able to build a good solution.
This makes a good enhancement, thanks.
Comment 2 juha editbugs 2013-11-18 13:59:56 CET
4.9.9.0 has now selection in insert for foreign files.
So it is now possible to also insert into any RW foreign file.

I did not add more Orage base files (as this fix was complex enough without them and as foreign files actually do the same thing).

When adding files, you should not have other windows open (only the main calendar is adjusted) or you will get error messages for missing files easily.
Comment 3 juha editbugs 2013-12-11 08:10:19 CET
Fixed in 4.10.0

Bug #7873

Reported by:
Luis Felipe Abad
Reported on: 2011-08-07
Last modified on: 2013-12-11

People

CC List:
1 user

Version

Attachments

Additional information