- New functionality:
- fcn createExdate, sort exdates in ascending order
- Updates:
- Moving vcalendar fcns to iCalUtilityFunctions (performance), sort callback function _cmpfcn, _size75, _strrep, _strunrep
- Bug fixes:
- fcn selectComponent, X-RECURRENCE and RECURRENCE-ID mgnt
- fcn selectComponents2, manage multiple components with the same UID
- General:
- No sort is required after fcn parse or before fcn selectComponents!
Resources and Links
iCal
- RFC
- RFC 2445, Internet Calendaring and Scheduling Core Object Specification (iCalendar)
- rfc2445 in HTML format, iCalDictionary
- RFC 2446, iCalendar Transport-Independent Interoperability Protocol (iTIP) Scheduling Events, BusyTime, To-dos and Journal Entries
- RFC 5545, Internet Calendaring and Scheduling Core Object Specification (iCalendar) Obsoletes: rfc2445
- RFC 5546, iCalendar Transport-Independent Interoperability Protocol (iTIP) Obsoletes: rfc2446
- Link to all RFCs
- rfc2445 in HTML format, iCalDictionary
- Calendaring and Scheduling Consortium
- calconnect.org
- CD1102 Calendaring and Scheduling Glossary of Terms V2.0.pdf
- Date and Time on the Internet
- hermetic.ch/cal_stud/newman
- ical validators
- icalvalid.cloudapp.net iCalendar Validator, based on DDay.iCal
- severinghaus.org iCalendar Validator, based on iCal4j
RSS/RDF
- RSS Tutorial
- mnot.net/rss/tutorial
- Resource Description Framework (RDF)
- w3.org/RDF
- RDF Site Summary (RSS) 1.0
- resource.org/rss/1.0
- RDF Site Summary (RSS) 1.0 specification
- resource.org/rss/1.0/spec
- RDF Site Summary 1.0 Modules: Dublin Core
- RSS Module Dublin Core
- RDF Site Summary 1.0 Modules: Event
- RSS Module Event
- FEED Validator for Atom and RSS
- FEED Validator
Calendar Softvare
- PHP iCalendar
- phpicalendar.net
Web Calendar Services
- Google Calendar
- calendar.google.com
- Kiko Calendar
- Kiko calendar
Please use the contact page if you would like to recommend useful resources or links, software or a calendar internet service!
Free images
Click on an image to download. To download all, click here!
News
16/2 2013 New minor subrelease of iCalcreator 2.16.12
Release summary: 
- New functionality:
- fcn createRdate, sort rdates in ascending order
- fcn setUrl, using PHP filter for URL (URI) validation, returns FALSE on error
- Bug fixes:
- fcn selectComponents,RECURRENCE-ID may exist without SEQUENCE (i.e. SEQUENCE=0)
- fcn createRdate, _sortExdate1, _sortExdate2
5/1 2013 New major subrelease of iCalcnv-3.2
Release summary: 
- Updates:
- making iCalcnv constructor log argument optional
- removed internal function "iCaldate2timestamp", moved "fixiCalString" to a static private function
- Bug fixes:
- config "outputobj" mgnt
- replacing specific PEAR LOG constants by PHP constants (PEAR_LOG_DEBUG -> LOG_DEBUG etc)
- new config "extension_check",default TRUE, if to check input file extension
- cvs2iCal and mgnt of escaped characters in input
- replacing specific PEAR LOG constants by PHP constants (PEAR_LOG_DEBUG -> LOG_DEBUG etc)
3/1 2013 New major subrelease of tiCalFile 3.2
Release summary: 
- New functionality:
- adding create functionality for all component types (also todo, journal and freebusy components)
- adding missing component properties
- create of internal directory/file control functions
- logging no longer mandatory
- adding missing component properties
- Updates:
- configuration mgnt
- component properties mgnt
- internal function createTestFile
- internal log mgmt
- component properties mgnt
2/1 2013 New minor subrelease of iCalcreator 2.16.6
Release summary: 
24/11 2012 New major subrelease of iCalcreator 2.16
Release summary: 
- A major subrelease, main points are
- PHP 5.2 dateTime adaptions
- New functionality:
- config directive setPropertyNames, returns array of property names for all set properties in component, functions: getConfig, iCal2XML
- Updates:
- allow (empty) hour/minute/second parts in trigger/duration
- function _duration2str
- test resources (new jquery version etc)
- optimization function copy
- optimization, iCal2XML, _addXMLchild
- removed the unused iCalUtilityFunctions::_date2duration function
- moving the config setting of TZID from property create- to set-functions
- using.html
- function _duration2str
- Bug fixes:
- dateTime and timestamp mgnt, iCalcreator now requires PHP >= 5.2
- updated functions:_makeDtstamp, _chkdatecfg, _setDate, _setDate2, _strdate2date, _date2timestamp, _duration2date, _date2strdate, _isOffset, _setRexrule, _stepdate, _timestamp2date, _tz2offset, createTimezone, transformDateTime, ms2phpTZ, iCal2XML
- changed function names:, _date_time_string to _strdate2date, _format_date_time to _date2strdate, _date_time_arraye to _chkDateArr, _duration_array to _duration2arr, _duration_string to _durationStr2arr, _format_duration to _duration2str- function parse, ignoring all non-standard iCal properties
- function _duration2date
- function createTimezone
- PHP 5.2 adaption (dateTime and timestamp), functions: createTimezone, _timestamp2date, transformDateTime
- function parse, ignoring all non-standard iCal properties
9/8 2012 New major subrelease of iCalcreator 2.14
Release summary: 
- A major subrelease, main points are
- enhance management of Relationship Component Properties, ATTENDEE, CONTACT, ORGANIZER, RECURRENCE-ID, RELATED-TO, URL, UID
- updated file parse mgnt
- line 75 pos char. split functionality
- GEOLOCATION and vCard exports
- updated file parse mgnt
- New functionality:
- hiphop adaptations, http://php.webtutor.pl/en/2011/05/10/hiphop-for-php-unimplemented-functions-and-features/, function iCal2XML and XML2iCal NOT supported (using SimpleXML)
- export ATTENDEEs, ORGANIZERs and CONTACTs (if formatted as internet email) as vcard, new functions iCal2vCard, iCal2vCards
- function getProperty: added argument 'GEOLOCATION' will give output supporting ISO6709 "Standard representation of geographic point location by coordinates"
- export ATTENDEEs, ORGANIZERs and CONTACTs (if formatted as internet email) as vcard, new functions iCal2vCard, iCal2vCards
- Updates:
- expand functions getProperty, (_getProperties,) getComponent, selectComponents and sort with CONTACTs, RELATED-TOs, URLs
- optimized method _size75 (removed mbstring part)
- function parse, line endings + empty lines mgnt
- function createTimezone, mgnt no match within date period
- removed default_timezone setting inside class file
- using.html
- test platform
- optimized method _size75 (removed mbstring part)
- Bug fixes:
- function iCal2XML, typo error
- function setGEO input format, accepts 0 (zero) as input
- function createGEO output format
- function getProperty (_getProperties): empty properties mngnt
- function sort (_cmpfcn), sorting on argument, properties allowing multiple values, datetime
- function createPRODID, wrap PRODID at 75 pos
- language, set at calendar level, MUST affect the PRODID property
- function _size75, string split problems
- function setAttendee/setOrganizer, mgnt prefix MAILTO
- function getComponents, multiple property search values
- function setGEO input format, accepts 0 (zero) as input
27/8 2012 New major release of eClog-3.0
Release summary: 
- Completely object-oriented recoded
- Offer ability to log to file (default), console, database, mail, error_log and syslog
- Multiple parallel handlers are supported
- Supports PHP error reporting
- Offer ability to log to file (default), console, database, mail, error_log and syslog
17/7 2012 Development subrelease iCalcreator-2.13dev
Release summary: 
- News
- Export ATTENDEEs, ORGANIZERs and CONTACTs (if internet email format) as vcard, new functions iCal2vCard, iCal2vCards
- Functions getProperty, getComponent and selectComponents, argument CONTACT
- Functions getProperty, getComponent and selectComponents, argument URL
- Function getProperty: added argument "GEOLOCATION", if GEO is set, will give output supporting ISO6709 "Standard representation of geographic point location by coordinates"
- Functions getProperty, getComponent and selectComponents, argument CONTACT
- Updates
- function createGEO, latitude/longitud output format, utput: latitude: two digits, up to six decimal fractions, longitude: one digit up to six decimal fractions
- Removed default_timezone setting
- Optimized function _size75
- Managing (mixed) EOLs when parsing files, "non rfc5545/rfc2445 line ending characters", parse functions
- Removed default_timezone setting
- Bug fixes
- Typo error in function iCal2XML
- Function setGEO, latitude/longitud input format, accepts zero (0) as input, int input converted to float
- Function getProperty (_getProperties): empty properties mngnt
- Wrap PRODID at 75 pos
- Language, set at calendar level, must affect the PRODID property
- Functions setAttendee/setOrganizer, managing prefix MAILTO
- Function setGEO, latitude/longitud input format, accepts zero (0) as input, int input converted to float
- General
- Updating the test platform
- Major update of using.html, layout and content
Get and test the development release at sourceforge or github.
27/5 2012 New major release of tiCalFile-3.0
Release summary: 
- Completely recoded, now as a PHP class
- Will generate all calendar event properties (configurable)
Test tiCalFile here.
11/5 2012 iCalcreator test resource page
Release summary: 
The test resources are intended to supplement iCalcreator manual how to use iCalcrator and includes:
- how to set iCal properties and check parsing, the "testSuite"
- the iCalcreator "selectComponents" method (format 1), and especially the rdate/rrule properties
- how to use iCalcreator "getProperty" method on "calendar" and "component" level
- how to use iCalcreator "createTimezone" method
- look at time zones transitions using PHP built in DateTimeZone class and "iCalcreator helper functions"
- review/download PHP implementation of iCal use-cases
- the iCalcreator "selectComponents" method (format 1), and especially the rdate/rrule properties
Explore the test resources here.
1/4 2012 New major subrelease of iCalcreator 2.12
Release summary: 
- Concatenated iCalcreator class, utilityFunction class and helper functions in iCalcreator.class.php file
- new functionality:
- external time zone helper function contributions:getTimezonesAsDateArrays (expandTimezoneDates) and getTzOffsetForDate
- create and parse of rfc6321 XML
- ms2phpTZ, mapping of MS outlook time zones to PHP
- createComponent, sorting standard/daylight subComponents
- create and parse of rfc6321 XML
- uppdates:
- parsing dates with extended (MS outlook) time zones
- returnCalendar, only create header 'content-length' when gziping output
- _setDate _setDate2, setExdate, setRdate, utc offset management, Z-suffix
- createTimezone (_setTZrrule), fixing from/to UTC offset and rdate(-s)
- checking x-props names, start with 'x-'/'X-'
- parse, management of list content in TEXT properties
- all rfc5545 parameters with 'DQUOTE' settings
- transformDateTime, accepting input date in array format
- property ATTACH and large file attachments
- returnCalendar, only create header 'content-length' when gziping output
- fixed bugs:
- selectComponents, (continue if) missing dtstart
- selectComponents: long 'event' starting before period
- setProperty, management of properties with multiple ocurrences
- _tz2offset, plus/minus error
- getConfig, 'directory' or 'filename' couldn't accept '0' (zero)
- _size75, correct line break when property content ends with '0' at pos 76
- _setRexrule, UNTIL in DATE format
- ATTENDEE, parsing error
- setFREEBUSY, empty property
- set/create RELATED-TO mgnt
- update of PRODID when (re-)setting 'unique_id'
- selectComponents: long 'event' starting before period
- updated user guide
30/12 2011 New release of iCalcnv 3.0
Release summary: 
- iCalcnv is reworked into a single class, using a simple configuration set method.
- the former main functions; iCal2csv, iCal2xls and cvs2iCal are now public methods in the class.
- an iCalcreator calendar instance can be used as input (iCal2csv, iCal2xls) or returned as output (cvs2iCal) to ease up integration with iCalcreator
- PEAR Log (or eClog) is supported
- the former main functions; iCal2csv, iCal2xls and cvs2iCal are now public methods in the class.
4/12 2011 New minor subrelease of dbiCal 3.0.5
Release summary: 
- new functionality:
- Concatenating all class files into one file
- updates:
- Changed 2nd argument to dbiCal select method: using iCalcreator calendar array config format
- admin interface (, when using compare) removing unnecessary parse, sort and save
- testing byte encoded class file(-s)
- admin interface (, when using compare) removing unnecessary parse, sort and save
- fixed bugs:
- admin interface (config tab) when log file is defined but not created
23/11 2011 New subrelease of iCalcreator 2.10.23
Release summary: 
- fixed bugs:
- function selectComponents; RECURRENCE-ID management
- updated user guide
- UTC timezone usage
- relationship between getProperty/selectComponents functions
- other minor clarifications
- relationship between getProperty/selectComponents functions
15/11 2011 tinycal 3.0
Release summary: 
tinycal 3.0, ported to jQuery JavaScript Library v1.4.4 for display and Axaj logics.
14/11 2011 New subrelease of iCalcreator 2.10.20
Release summary: 
- updates:
- xcal (xml) format update
- function setConfig (component level), setting 'nl' always before 'format'
- fixed bugs:
- selectComponents with last arguments (false, true, false)
- iCalUtilityFunctions::_recur2date, FREQ=YEARLY + BYDAY - combination
- returnCalendar; removing Content-Length header
- iCalUtilityFunctions::_recur2date, FREQ=YEARLY + BYDAY - combination
- updated user guide etc.
21/10 2011 New subrelease of iCalcreator 2.10.15
Release summary: 
- new functionality:
- Evaluate, test and use of ionCube PHP byte file encoder
- update of functions
- selectComponents, changed order of generating components
- setSequence, value 0 (zero) first value
- setConfig, force setting of Directory before Filename
- _size75, updated management of line folding (again.. .)
- setSequence, value 0 (zero) first value
- fixed bugs:
- _size75, typo error
- _makeDtstamp, typo error
- selectComponents, setting start/end-dates (x-prop) for events longer than 24h
- _makeDtstamp, typo error
- updated using manual
- missing links, STATUS etc
8/10 2011 Beta test tinycal 3.0
Release summary: 
tinycal 3.0, ported to jQuery JavaScript Library v1.4.4 for display and Axaj logics.
Please feel free to take a look and test it here
and use the contact page and communicate your opinion!
Preliminary release date is late October.
7/10 2011 New release of tiCalFile 2.4
Release summary: 
A file locking mechanism is implemented to avoid parallel excutions.
7/10 2011 New release of eClog 2.0
Release summary: 
Extended version supporting singleton pattern, simplified log calls etc.
5/8 2011 New subrelease of iCalcreator 2.10.5
Release summary: 
- new functionality:
- transform a datetime from a timezone to another using PHP DateTime and DateTimeZone class (PHP >= PHP 5.2.0)
- updates:
- parse, ensure (vtimezone) standard/daylight component order
- iCalUtilityFunctions::createTimezone, creating RRULEs
- iCalUtilityFunctions::_setDate
- iCalUtilityFunctions::createTimezone, creating RRULEs
- fixed bugs:
- adaptation for PHP STRICT error_reporting
- updated using manual
15/7 2011 New release of iCalcreator 2.10
Release summary: 
- new functionality:
- getProperty, sort, getComponent and selectComponents with new arguments: Attendee, Categories, DTSTAMP, Location, Organizer, Priority, Resources, Status, Summary properties
- simple create of timezone (including standard/daylight) component
- auto completion of (default) timezone when setting DTEND, DTSTART, DUE, RECURRENCE-ID
- new arguments for utf8 encoding and gzencode in function returnCalendar
- simple create of timezone (including standard/daylight) component
- updates:
- get- and setfunction, properties with numeric (integer) content
- parse, management of line folding when parsing
- getProperty and deleteProperty, management of properties with multiple ocurrence
- parse on calendar level, set config when creating new component etc
- setfunctions for DTEND, DTSTART, DUE, RECURRENCE-ID
- update of getConfig and all config setting on calendar and component level
- calendar property VERSION always first in calendar
- parse, management of line folding when parsing
- fixed bugs:
- iCalUtilityFunctions::_duration2date
- selectComponents
- setFreebusy
- createAttendee
- TRIGGER with no duration
- iCalUtilityFunctions::_recur2date(, _setRexrule), BYSETPOS
- selectComponents
- updated using manual
As usual, exhaustive regression tests has been executed to verify the release as well as external beta testing.
18/6 2011 iCalcreator 2.10 Beta test, Closed
The iCalcreator 2.10 beta test period has started, if you are interested to have a look and squeeze on iCalcreator v2.10rc2 package, please use the contact page.
Release summary: 
- updates:
- updated management of line folding
- updated functions getProperty, sort, SelectComponents, works with Attendee, Categories, (dtstamp, ) Location, Organizer, Priority, Resources, Status and Summary properties
- New:
- simple create of timezone (including standard/daylight) component(-s)
- auto completion of (default) timezone when setting DTEND, DTSTART, DUE, RECURRENCE-ID
- fixed bugs:
- management of properties with numeric (integer) content; PERCENT-COMPLETE, PRIORITY, REPEAT, SEQUENCE, X-PROP
- function iCalUtilityFunctions::_duration2date
- function selectComponents
- function createAttendee
- using TRIGGER with no duration
- function SelectComponents regarding X-CURRENT-*-values
- function setFreebusy, empty property
- function setFreebusy if property is empty.. .
- function iCalUtilityFunctions::_duration2date
6/3 2011 New release of tiCalFile 2.2
Release summary: 
- Offer extended property parameter setting.
1/3 2011 New release of dbiCal 3.0
Release summary: 
After a successfull beta release test period, the official release.
- supporting ALL calendar information; timezone, event, todo,journal and freebusy components with all properties, including x-properties.
- using pear MDB2 as database API and iCalcreator (2.8) as the calendar information API, opt pear Log
- simple interface functions; insert, select and delete calendar information
- includes a web admin page, offering ability to upload, insert, examine (file), inspect (db), removal and compare of calendar files.
- changed licence to LGPL.
- using pear MDB2 as database API and iCalcreator (2.8) as the calendar information API, opt pear Log
28/1 2011 dbiCal 3.0rc2 Beta test
Release summary: 
dbiCal has during the beta tests been extended to
- support storage of metadata, ex. calendar/user references (or preferences)
- include web administrator interface
Please contact if you would like to participarte!
24/1 2011 eventCreator 2.4rc is available for Beta testing.
Release summary: 
16/1 2011 New release of tinycal 2.4.1
Release summary: 
- adapt for prototype 1.7 javascript framework
- time (date) display in component view
- includes alarms in non-total downloads
- time (date) display in component view
9/1 2011 dbiCal 3.0rc Beta test
Release summary: 
dbiCal is a PHP database backend solution storing (multiple) iCal calendar files in a database
using pear MDB2 as database API and iCalcreator 2.8 as the API for calendar information.
Please contact if you would like to participarte!
8/1 2011 New release of tinycal 2.4
Release summary: 
- The 2.4 version is updated to use iCalcreator 2.8 and javascript adaptations.
- Supports en, fr, it and se languages.
6/1 2011 New release of iCalcreator 2.8
Release summary: 
- new factory-method for creating components
simplified configuration utility (static) functions collected in support class - refactored sort and selectComponents functions
- multibyte character support (opt. mb_string)
- value (protocol) prefix (Attendee, Organizer etc.)
- a major number of minor bugs fixed e.g. date (UTC), text properties, duration
- updated using manual
- refactored sort and selectComponents functions
As usual, exhaustive regression tests has been executed to verify the release.
