NAME

CalDAV::Simple::Task - a data class representing one task (VTODO) in a CalCAV calendar

SYNOPSIS

use CalDAV::Simple::Task;
my $task = CalDAV::Simple::Task->new(vcal_string => $string);
printf "task '%s' is due '%s'\n", $task->summary, $task->due;

DESCRIPTION

This module is used to hold details of a single task from a CalDAV calendar. It is alpha quality code. I don't really know much about CalDAV, but I've been hacking around until I could get what I wanted working.

METHODS

summary

The short description / title of the task.

status

The CalDAV STATUS string for the task. I haven't looked into the different values this can take.

uid

The CalDAV UID for the task.

etag

The HTTP etag for the task.

href

The relative URL for the task.

due

A DateTime instance holding the due date for the task.

created

When the task was created. This will currently be returned as an ISO 8601 date+time string, I think. In the future I'll make this return a DateTime instance as well.

vcal_string

This is the string returned from the CalDAV server for a single task. It's basically the d:response element:

<d:response>
   ...
   <cal:calendar-data>
     BEGIN:VCALENDAR
     ...
     END:VCALENDAR
   </cal:calendar-data>
   ...
</d:response>

Hopefully you won't have to deal with this.

delete_task

Takes a task (instance of CalDAV::Simple::Task) and deletes it from the calendar.

SEE ALSO

CalDAV::Simple - the main module of this distribution, the tasks() method of which returns instances of CalDAV::Simple::Task.

REPOSITORY

https://github.com/neilbowers/CalDAV-Simple

AUTHOR

Neil Bowers <neilb@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2015 by Neil Bowers <neilb@cpan.org>.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.