Data::ICal::Entry::Todo(3) Represents a to-do entry in an iCalendar file

SYNOPSIS


my $vtodo = Data::ICal::Entry::Todo->new();
$vtodo->add_properties(
summary => "go to sleep",
status => 'INCOMPLETE',
# Dat*e*::ICal is not a typo here
dtstart => Date::ICal->new( epoch => time )->ical,
);
$calendar->add_entry($vtodo);
$vtodo->add_entry($alarm);

DESCRIPTION

A Data::ICal::Entry::Todo object represents a single to-do entry in an iCalendar file. (Note that the iCalendar RFC refers to entries as ``components''.) It is a subclass of Data::ICal::Entry and accepts all of its methods.

METHODS

ical_entry_type

Returns "VTODO", its iCalendar entry name.

mandatory_unique_properties

The "uid" property is mandatory if "rfc_strict" was passed to ``new'' in Data::ICal.

optional_unique_properties

According to the iCalendar standard, the following properties may be specified at most one time for a to-do item:

      class  completed  created  description  dtstamp
      dtstart  geo  last-modified  location  organizer
      percent-complete  priority  recurrence-id  sequence  status
      summary  uid  url

In addition, "due" and "duration" may be specified at most once each, but not both in the same entry (though this restriction is not enforced).

Or if "vcal10 => 1":

        class dcreated completed description dtstart due
        last-modified location rnum priority
        sequence status summary transp
        url uid

optional_repeatable_properties

According to the iCalendar standard, the following properties may be specified any number of times for a to-do item:

      attach  attendee  categories  comment  contact
      exdate  exrule  request-status  related-to  resources
      rdate  rrule

Or if "vcal10 => 1":

        aalarm  attach  attendee  categories
        dalarm  exdate  exrule  malarm  palarm  related-to
        resources  rdate  rrule

AUTHOR

Best Practical Solutions, LLC <[email protected]>

LICENCE AND COPYRIGHT

Copyright (c) 2005 - 2015, Best Practical Solutions, LLC. All rights reserved.

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic.