Tags:
create new tag
, view all tags
Mail disabled on twiki.org  
Phone disabled on twiki.org  

Luzi Schucan

Info:
Organization:
URL:  
City:
Country: Switzerland
Agree to Code
of Conduct
:
 
Hear from:  
Watchlist Changes of Luzi:
Info None (empty watchlist)
Arrow right More watchlist details
Tag Cloud of Luzi:
Unrecognized action
Go here to contact Luzi directly: contact form

iCalendar Trick

iCalendar support can be added to TWiki very easily. Any suggestions are welcome any time!

Idea

Apply the RFC2445 to any date list (like a calendar). This can be done with just a topic, applied with the standard "text" skin.

Watch:

Implementations

For topics with Date fields

If you have topics with a date field of any sort (bug tracking items, to-do items, Milestone documents etc.), you can have them replicated to your iCal client. For this example, let's assume you have Milestone documents with a 'Date' form field:

Create a topic with this content this content (hide):

BEGIN:VCALENDAR
PRODID:%WIKITOOLNAME% (TWiki)
METHOD:PUBLISH
VERSION:2.0
X-WR-CALNAME:%WIKITOOLNAME%: Open Milestones
%SEARCH{"(form.name= 'MilestoneForm')" nonoise="on" format="BEGIN:VEVENT$n()DTSTART;VALUE=DATE:$percntCALC{$FORMATTIME($TIME($formfield('Date')),$year$month$day)}$percnt$n()UID:Intranet-$web.$topic@%HTTP_HOST%$n()SUMMARY:$formfield('Name')$n()DESCRIPTION:Link to intranet page: \n%SCRIPTURL{"view"}%/$web/$topic$n()END:VEVENT" order="formfield(Date)" type="query"}%
END:VCALENDAR

Note:

  • the UID must be unique within one iCal file
  • the SEARCH string and type can of course be anything you like

With the calendar plugin

Unfortunately, I couldn't get the above trick to work as easily with the TWiki:Plugins/CalendarPlugin. Here's something that works in some cases:

Your help is much appreciated!

Create a topic with this content this content (hide):

BEGIN:VCALENDAR
PRODID:%WIKITOOLNAME% (TWiki)
METHOD:PUBLISH
VERSION:2.0
X-WR-CALNAME:%WIKITOOLNAME%: %TOPIC%%CALENDAR{topic="[comma separated web.topic list]" aslist="1" days="[number of days to include]" datenumberformat="$n" format="BEGIN:VEVENT$nDTSTART;VALUE=DATE:$year$mo$day$nUID:$year$mo$day$description$nSUMMARY:$description$nEND:VEVENT"}%
END:VCALENDAR

Note:

  • in this way, the UID might sometimes not be unique
  • the $description variable might sometimes contain HTTP links which won't look nice in your calendar - is it possible to turn links off through a template?
  • it would be great if the CALENDAR variable would have a more standard format argument.

Open issues:

  • I am not sure what happens if you have several events on a same day, or multi-day events. Does anybody have the time to test?
  • I tried to make the UID unique with a counter through the use of the TWiki:Plugins/SpreadSheetPlugin, but failed. Any ideas?

Client setup

Once this is all done, all you need to do is fire up your favorite iCal client and enter the page's address, with the skin=text parameter. Example: http://twiki.org/cgi-bin/view/Main/LuziSchucan?skin=text

Compatibility

This setup has been tested successfully with Mac OS X and the iCal application, Linux and Evolution, and Windows and Thunderbird+Lightning over an https connection with mandatory login credentials.

I appreciate any reports of other tests!


Other Stuff

Luzi's contributions

My Links

My Personal Data

Note: if personal data is being stored using a secret database, then it is only visible to the user and to administrators.

E-mail  

My Personal Preferences

Uncomment preferences variables to activate them (remove the #-sign). Help and details on preferences variables are available in TWikiPreferences.

  • Show tool-tip topic info on mouse-over of WikiWord links, on or off:
    • #Set LINKTOOLTIPINFO = off
  • Set ALLOWTOPICCHANGE = LuziSchucan

Related Topics

Edit | Attach | Watch | Print version | History: r4 < r3 < r2 < r1 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r4 - 2008-04-28 - LuziSchucan
 
  • Learn about TWiki  
  • Download TWiki
This site is powered by the TWiki collaboration platform Powered by Perl Hosted by OICcam.com Ideas, requests, problems regarding TWiki? Send feedback. Ask community in the support forum.
Copyright © 1999-2017 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.